gpt-image-2 について
単一のPythonスクリプトでGPT Image 2の画像生成と編集を扱うスキルです。送信前にリクエスト制約を検証し、Responses APIの高度な処理にも対応します。
主な機能
- 01単一のPythonエントリーポイント
- 02生成、編集、Responsesの各ルート
- 03リクエスト制約の事前検証
- 04ドライランとレスポンス保存
- 05バッチ出力とストリーミング
活用シーン
- 01テキストプロンプトから画像を生成
- 02参照画像とマスクを使った画像編集
- 03API呼び出し前のペイロード確認
- 04ストリーム出力とレスポンスデータの保存
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ gargantuax/ openskills --skill gpt-image-2インストール後、Claude Code で/gpt-image-2を入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdagents/openai.yamlreferences/api-surface.mdconfig.mdscripts/gpt_image.pytests/test_gpt_image.py詳細
GPT Image 2
モデルのサイズ、アスペクト比、機能に関する制約を事前に厳密に検証しながら、GPT Image 2 のすべてのルートに対応する単一の Python エントリーポイントです。
ワークフロー
- references/config.md を開き、環境変数とデフォルト値を選びます。
- references/api-surface.md を開き、
generations、edits、responsesのいずれを使うか選びます。 - ユーザーから別の OpenAI 互換エンドポイントを指定されない限り、
OPENAI_BASE_URL=https://api.openai.com/v1を使用します。 generationsとeditsにはgpt-image-2を使用し、responsesにはgpt-5.4などのテキスト対応 Responses モデルを使用します。- 3 つのサブコマンドのいずれかを指定して、
scripts/gpt_image.pyを実行します。 - ペイロードの形式に主なリスクがある場合は、最初に
--dry-runを追加します。 - デバッグのために生の JSON 本文や SSE イベントストリームを保存する必要がある場合は、
--save-response <path>を追加します。
コマンド
公開 Images API を使用したテキストから画像への生成:
python .\skills\gpt-image-2\scripts\gpt_image.py generations `
--prompt "A bold product hero image for a developer tool homepage" `
--output .\out\hero.png `
--size 1536x1024 `
--quality high `
--format png
ファイル名パターンを指定した複数画像のバッチ処理:
python .\skills\gpt-image-2\scripts\gpt_image.py generations `
--prompt "A cinematic city skyline at night" `
--output .\out\skyline-{index}.webp `
--n 3 `
--format webp `
--compression 90
2 つの入力画像とマスクを使用した画像編集:
python .\skills\gpt-image-2\scripts\gpt_image.py edits `
--prompt "Blend the two references into one clean marketing illustration" `
--image .\refs\subject.png `
--image .\refs\background.png `
--mask .\refs\mask.png `
--output .\out\edit-{index}.png `
--image-field-style brackets `
--n 2
ストリーミングと部分プレビューを使用する Responses API:
python .\skills\gpt-image-2\scripts\gpt_image.py responses `
--input-text "Generate a poster for an AI developer summit" `
--model gpt-5.4 `
--output .\out\poster-{index}.png `
--stream `
--partial-images 2 `
--save-response .\out\poster-events.json
ローカル画像とマスクを使用した Responses API の編集:
python .\skills\gpt-image-2\scripts\gpt_image.py responses `
--input-text "Turn this product shot into a clean studio ad" `
--model gpt-5.4 `
--input-image .\refs\product.png `
--mask .\refs\mask.png `
--output .\out\studio.png `
--action edit
送信せずに構築したリクエストを確認:
python .\skills\gpt-image-2\scripts\gpt_image.py generations `
--prompt "A minimal cover image" `
--output .\out\cover.png `
--dry-run
ルール
- 公開テキストから画像への生成呼び出しには
generationsを使用します。 - マルチパート画像編集とマスクのアップロードには
editsを使用します。 - ストリーミング、テキストと画像の混在入力、
previous_response_id、tool_choice、action、オプションのtool_modelなど、高度な処理にはresponsesを使用します。 - プロセスの環境変数は
.envより優先され、CLI フラグはその両方より優先されます。 - シークレットは絶対に出力しないでください。
--outputには単一のパス、または複数画像やストリーミング処理用のimage-{index}.pngのようなパターンを指定します。responsesでは画像モデルとは別にトップレベルの Responses モデルを使用します。別のテキスト対応モデルが必要でない限り、デフォルトはgpt-5.4にしてください。- Responses ツールを使う処理では
qualityがそのまま渡されますが、最終的な動作はホストされた画像ツールに依存します。 - OpenAI GPT 画像モデルでは、画像データは base64 で返されるため、
response_formatは省略してください。 - サポートされていない
gpt-image-2の組み合わせ(透明な背景、無効なサイズ、0..3の範囲外のpartial_images、または公開 Images ルートでのstream=trueとn>1の併用)は、すぐにエラーにしてください。
リソース
- スクリプト:scripts/gpt_image.py
- 設定リファレンス:references/config.md
- API サーフェスリファレンス:references/api-surface.md
コメント
Markdown 対応