Skip to main content
POST
Image editing: edit a reference image or fuse several
右側のインタラクティブなプレイグラウンドでは、ローカルファイルのアップロードを受け付けます。Authorization に APIキーを入力し(形式: Bearer sk-xxx)、imageファイルを選択し、promptmodel を入力して送信してください。
🔴 このエンドポイントではmultipart/form-dataファイルのアップロードが必要です/v1/images/edits に JSON を送信すると、常に 400 が返ります:
これは、xAI や上流ベンダーのドキュメントから統合している場合に特に重要です: そのドキュメントでは、公開画像 URL({"image": {"type": "image_url", "url": "..."}})を含む JSON 本文が説明されていますが、その形式は APIYI ゲートウェイでは動作しません。代わりにこのページに従ってください。利点は、ファイルアップロードなら 画像ホスティングが不要 になることです。ローカルファイルをそのまま送るだけでよく、公開 URL を用意するより簡単です。ファイルフィールド名は image または image[] である必要があります。images / image_file415 を返します。prompt が必要で、指定しないと 400 が返ります。
このページを使う場面: 1 枚の参照画像を編集する場合、または複数枚を融合する場合です。prompt のみで生成する場合は、テキストから画像へのエンドポイント を使用してください。
⚠️ 出力サイズは入力画像に従い、変更できませんresolutionaspect_ratio はここでエラーなく受け付けられますが、効果はありません — 編集後の出力は常に 入力参照画像のサイズ に一致します(1280x720 を入力すると 1280x720 が出力され、1024x1024 を入力すると 1024x1024 が出力されます)。出力サイズを変更するには、アップロード前に参照画像をトリミングまたはリサイズしてください
融合順序は重要です: image[]1-3 枚の参照画像を受け付け、アップロード順が prompt 内の「image 1 / image 2 / image 3」の指す順番になります。明示してください。例えば、「image 1 の被写体を image 2 のシーンに入れ、image 2 のアートスタイルを維持する」といった具合です。

コード例

Python (OpenAI SDK、単一画像)

Python(生のリクエスト、単一画像)

Python(マルチ画像の融合、1~3ファイル)

cURL

Node.js(ネイティブ fetch + FormData)

ブラウザ JavaScript

パラメータリファレンス

この系列はマスクインペインティングをサポートしません。変更の範囲を限定するには、prompt で具体的に説明してください。たとえば「スカーフだけを赤に変更し、他はすべて完全に同じままにする」といった具合です。モデルはこのような制約に厳密に従います。

編集の挙動とプロンプトスタイル

編集エンドポイントは、入力画像のアートスタイル、構図、配色、被写体の同一性を保持し、promptで指定された内容のみを変更します。安定した結果を得るには:
「他はすべて変更しないでください」と明示することが、このモデルでは最も効果的な手法です。融合では、常にアップロード順のimage[]に合わせて「画像 1 / 画像 2」を参照してください。

レスポンス形式

レスポンスフィールドの落とし穴
  • data[] エントリには、response_format に応じて url または b64_json のどちらか一方のみが含まれます — 両方は含まれません。
  • revised_promptは返されません — 存在すると仮定しないでください。
  • b64_jsondata:image/...;base64, 接頭辞のない生の base64 です — そのままデコードしてください。
  • created は常に 0 であり、タイムスタンプとして使用できません。
  • 出力サイズは 入力画像 によって決定されるため、リクエストパラメータから幅/高さを予測しないでください。
usageは照合に使用できません: prompt_tokens は常に 1000 x n であり、プレースホルダーです。編集料金は text-to-image と同じで、画像ごとの定額料金です。実際の請求額は APIYI コンソールの課金記録を参照してください。

承認

Authorization
string
header
必須

API Key created in the APIYI Console

ボディ

multipart/form-data
model
enum<string>
デフォルト:grok-imagine-image
必須

Model ID

利用可能なオプション:
grok-imagine-image,
grok-imagine-image-quality
prompt
string
必須

Editing instruction. State what to change and explicitly ask for everything else to stay put, e.g. Change the scarf color to bright RED. Keep everything else exactly the same.

:

"Change the scarf color to bright RED. Keep everything else exactly the same."

image
file
必須

Reference image file. For multi-image fusion repeat the image[] field (1-3 files); upload order is what "image 1 / image 2 / image 3" refers to in the prompt. Accepted formats: png / jpg / webp.

n
integer
デフォルト:1

Number of output images, 1-10. Independent of the number of reference images

必須範囲: 1 <= x <= 10
:

1

response_format
enum<string>
デフォルト:url

Response format. url returns a direct link; b64_json returns raw base64 (no data: prefix)

利用可能なオプション:
url,
b64_json
:

"url"

レスポンス

Image generated successfully

created
integer

Creation timestamp. Always 0 for this model — do not use it for timing

:

0

data
object[]

Array of image results, length equals the requested n

usage
object

Placeholder values — do not use for billing reconciliation. prompt_tokens is always 1000 x n