gpt-image-v2 について
gpt-image-v2は、EachLabs Predictions API経由でOpenAIの画像モデルを使うスキルです。プロンプトによる画像生成と自然言語での画像編集に加え、構図の維持や画像内テキストの生成方法を扱います。
主な機能
- 01テキストからの画像生成
- 02自然言語による画像編集
- 03参照画像の構図維持
- 04画像内テキストの生成
- 05予測のポーリングとWebhook
活用シーン
- 01文字が読みやすいポスターの作成
- 02ラベルが読める商品画像の生成
- 03被写体を保った背景の変更
- 04完了した予測結果の取得
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ eachlabs/ skills --skill gpt-image-v2インストール後、Claude Code で/gpt-image-v2を入力して読み込まれたか確認します。
同梱ファイルreferences/MODELS.md
詳細
GPT Image v2
EachLabs Predictions API 上の OpenAI の GPT Image v2 です。GPT Image v2 は、v1.5 より高忠実度の画像を生成し、プロンプトの理解、構図の一貫性、物理的に正確なライティング、細部の描写が向上しています。画像内のテキストも安定して描画できます。
モデルスラッグは 2 つあります。
| スラッグ | カテゴリ | 用途 |
|---|---|---|
gpt-image-v2-text-to-image | テキストから画像 | プロンプトから新しい画像を生成します |
gpt-image-v2-edit | 画像から画像 | 自然言語の指示で既存の画像を編集します |
使用する場面
- ユーザーが「GPT Image」、「OpenAI image」、「gpt-image-2」、または ChatGPT の画像モデルについて尋ねている場合。
- 画像内のテキスト(ポスター、インフォグラフィック、パッケージ、看板など)を正確に描画する、高忠実度のフォトリアリズムが必要な場合。
- 読みやすいラベルやロゴを含む、ブランドイメージに一貫した商品写真が必要な場合。
- 参照画像の被写体とレイアウトを維持する必要がある、指示に沿った編集を行う場合。
より幅広いモデル比較(Flux、Seedream、Imagen など)については、eachlabs-image-generation を参照してください。その他の編集モデルについては、eachlabs-image-edit を参照してください。
認証
Header: X-API-Key: <your-api-key>
EACHLABS_API_KEY 環境変数を設定します。キーは eachlabs.ai/dashboard/api-keys で取得できます。
予測のフロー
- (推奨)スキーマを確認 —
GET https://api.eachlabs.ai/v1/model?slug=gpt-image-v2-text-to-imageを実行し、現在のrequest_schemaを確認します。gpt-image-v2-editについても同様に確認します。 - POST
https://api.eachlabs.ai/v1/predictionにmodel、version: "0.0.1"、inputを指定してリクエストします。 - ポーリング
GET https://api.eachlabs.ai/v1/prediction/{id}を実行し、statusが"success"または"error"になるまで確認します。または、Webhook を使用します。 - 抽出
output(配列)から出力 URL を取得します。
クイックスタート — テキストから画像
curl -X POST https://api.eachlabs.ai/v1/prediction \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"model": "gpt-image-v2-text-to-image",
"version": "0.0.1",
"input": {
"prompt": "A minimalist poster reading \"BREW LAB\" in bold serif, steam rising from a ceramic mug, warm paper texture, editorial photography"
}
}'
通常の処理時間:約 40 秒。
クイックスタート — 編集
curl -X POST https://api.eachlabs.ai/v1/prediction \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"model": "gpt-image-v2-edit",
"version": "0.0.1",
"input": {
"prompt": "Replace the background with a sunlit loft interior while keeping the product label and angle identical",
"image_url": "https://your-cdn.example.com/product.jpg"
}
}'
通常の処理時間:約 100 秒。参照画像は常に高忠実度で処理されるため、入力画像のトークン数(およびコスト)は他の GPT Image モデルより多くなります。
ポーリング
curl https://api.eachlabs.ai/v1/prediction/{PREDICTION_ID} \
-H "X-API-Key: $EACHLABS_API_KEY"
| ステータス | 意味 |
|---|---|
processing | 処理中です — 再度ポーリングしてください |
success | 完了しました — output(URL の配列)を読み取ります |
error | 失敗しました — message / details を読み取ります |
Webhook(ポーリングの代替)
作成リクエストの本文に "webhook_url": "https://your.host/path" を指定します。EachLabs は次を POST します。
{
"exec_id": "prediction-uuid",
"status": "succeeded",
"output": "https://...",
"error": ""
}
status は "succeeded" または "failed" になります。30 秒以内に 2xx を返してください。
料金
どちらのモデルもトークン数に応じた動的料金を使用します。
| トークンの種類 | 料金 |
|---|---|
| テキスト入力 | 1M トークンあたり $5 |
| 画像入力 | 1M トークンあたり $10 |
| テキスト出力 | 1M トークンあたり $40 |
| 画像出力 | 1M トークンあたり $30 |
トークンの内訳を取得できない場合、EachLabs は「medium 1024×1024 equivalent」の料金を適用します。
gpt-image-v2-editは参照画像を常に高忠実度で処理するため、画像入力トークン数(およびコスト)はgpt-image-v1-5-editや Nano Banana よりもかなり多くなります。高い詳細度が必要な場合を除き、アップロード前に参照画像の長辺を 1024px に縮小してください。
プロンプトのヒント
- 画像内のテキスト:正確な文言を二重引用符で囲み(
"BREW LAB")、書体(「太字のセリフ体」、「サンセリフ体の見出し」など)を指定します。v2 は、文字量の多い段落や多言語のレイアウトも安定して描画できます。 - 構図:被写体、フレーミング、レンズ、ライティングをそれぞれ個別に説明します。v2 は、v1.5 よりも構図に関する指示に的確に従います。
- 編集:変更してはいけない要素を具体的に指定します(「ラベル、角度、ライティングは同一に保ち、背景のみを置き換える」)。
- フォトリアリズム:一般的な形容詞ではなく、「斜め 45° から差し込む日光、柔らかな減衰、肌の微妙な SSS」のように、物理的な特徴を具体的に加えます。
レート制限と上限
| 上限 | 値 |
|---|---|
| 作成リクエスト | キーあたり 100 / 分 |
| 同時予測数 | キーあたり 10 |
| ファイル入力 | HTTPS で公開アクセス可能な URL のみ — data-URI と localhost は不可 |
エラー
エラーボディ:{ "status": "error", "message": "...", "details": "..." }
| コード | 意味 |
|---|---|
| 400 | 入力が無効です |
| 401 | X-API-Key が指定されていないか、無効です |
| 404 | 不明なモデルまたは予測 ID です |
| 429 | レート制限に達しました — 時間をおいて再試行してください |
| 5xx | 指数バックオフで再試行してください |
セキュリティ上の制約
- 任意の URL の読み込みは禁止です:
image_urlは、HTTPS 経由でアクセス可能な独自のストレージ(S3、GCS、CDN)を指す必要があります。ユーザーが貼り付けた URL を検証せずに転送しないでください。 - サードパーティ API トークンは禁止です:
inputを介して OpenAI / Anthropic / HF のトークンを転送しないでください。認証には EachLabs API キーのみを使用します。 - 呼び出し前に検証してください:
inputを作成する前に、必ずGET /v1/model?slug=<slug>で最新のrequest_schemaを取得してください。スキーマが正しい情報源です。
パラメーターリファレンス
スラッグごとのパラメーターテーブル全体については、references/MODELS.md を参照してください。