GPT Image 2.6 APIの隠れた制限を解説:GIF・SVG・部分編集の組み合わせにおける5種類の制約

GPT Image 2.6 APIの隠れた制限を解説:GIF・SVG・部分編集の組み合わせにおける5種類の制約

著者注:GPT Image 2.6 APIにおけるGIF、SVG、markupによる部分編集について、エンドポイントの制限、パラメータの競合、移行時の注意点を解説します。「モデル名を変えるだけで使える」という思い込みを避けるためのガイドです。

OpenAIは2026年11月4日にGPT Image 2.6をリリースしました。開発者はgpt-image-2.6-flareとgpt-image-2.6-sunburstの2つのモデルを呼び出せます。「GIF、SVG、マークアップ編集に対応」と聞いて、モデル名を変えるだけで、既存の編集フローからGIFやSVGを直接生成できると考えたチームも多いでしょう。しかし、公式ドキュメントによると、こうした組み合わせはAPIでは利用できません。

これは新しいモデルの欠点をあげつらう記事ではありません。公式のImage generationドキュメントとGPT Image 2.6プロンプトガイドには、エンドポイント、形式、パラメータの間にある制約が明記されています。この記事では、ドキュメントに記載された制限だけを整理します。架空のリクエストテスト結果を作ったり、まだ公表されていない内容について結論を出したりすることはありません。

この記事でわかること:GPT Image 2.6を使う要件に対してどのエンドポイントを選ぶべきか、同時に使用できないパラメータは何か、サードパーティのプラットフォームを導入する前にどの機能を確認すべきかを判断できるようになります。

gpt-image-2-6-api-hidden-limits-gif-svg-markup-ja-image-0


GPT Image 2.6 API の制限:要点まとめ

まず結論から見ていきましょう。モデルにある機能が備わっていても、すべての API エンドポイントでその機能を利用できるとは限りません。GIF と SVG の出力は generations エンドポイントのみ、markup の使用は edits エンドポイントのみと、明確に役割が分かれています。

項目 詳細
リリース日 2026 年 11 月 4 日
開発者向けモデル gpt-image-2.6-flare(速度重視)、gpt-image-2.6-sunburst(品質と細かな編集を重視)
主なエンドポイント POST /v1/images/generations、POST /v1/images/edits、および Responses API の画像ツール
新しい出力形式 GIF、SVG。generations エンドポイントのみ
新しい編集方法 markup による注釈付き編集。edits エンドポイントのみ
新しいパラメータ complexity(low / medium / high、デフォルトは high)

GPT Image 2.6 の 3 種類のエンドポイントの役割

images/generations はテキストプロンプトから新しい画像を生成するエンドポイントで、GIF と SVG を出力できる唯一の公式エンドポイントです。images/edits は元の画像と指示を受け取り、既存の画像を変更します。markup による注釈付き編集もこちらで行います。Responses API の画像生成ツールは、会話や複数ステップのワークフローに組み込むのに適しています。資料には GIF と SVG に関する具体的なパラメータが記載されていないため、確認するまでは generations エンドポイントと完全に同じだとは考えないほうがよいでしょう。

もうひとつ、混同しやすい点があります。ChatGPT 製品では写真をアップロードして GIF を作成できますが、これは製品レベルの操作機能であり、Image API の編集エンドポイント単体で GIF を出力できるという意味ではありません。製品の使い勝手をそのまま API の機能だと考えることが、今回よくある誤解です。

代表的な用途 推奨エンドポイント 公式ドキュメントでの対応状況
テキストから SVG ロゴを生成 generations + output_format="svg" 対応
テキストから GIF アニメーションを生成 generations + output_format="gif" 対応
商品写真をアップロードし、物体を囲んで色を変更 edits + markup 対応
edits に画像をアップロードして GIF を直接出力 — ドキュメントでサポートされている組み合わせではない
既存の SVG をアップロードし、edits でパスを変更して SVG として出力 — ドキュメントでサポートされているベクター編集フローではない

gpt-image-2-6-api-hidden-limits-gif-svg-markup-ja-image-1


GPT Image 2.6のSVG出力に潜む制約

SVGは、generationsエンドポイントで output_format="svg" を指定すると取得できます。出力形式が一つ増えただけに見えますが、実際にはラスター画像よりも厳しい制約があります。以下は、公式が明記しているルールです。

  • n は1でなければならず、複数のSVGを一度に生成することはできません。
  • ストリーミングと partial_images はサポートされていません。
  • output_compression と prompt_rewriter はサポートされていません。
  • images/edits ではSVGを出力できず、SVGをラスター画像の編集入力として直接使用することもできません。

結果は data[0].b64_json に格納され、UTF-8のXMLにデコードしてから .svg ファイルとして保存します。公式によると、生成されるSVGは図形、パス、色で構成された静的なベクター画像で、スクリプトを含まず、外部リソースにも依存せず、ビットマップも埋め込まれません。フロントエンドでの直接インライン描画に適していますが、すべてのSVGがプロのデザインデータのように整理されたレイヤー構造を持つわけではありません。

GPT Image 2.6 SVGの最小限の呼び出し例

以下の例はOpenAI互換の記法を使用しています。新しいモデルやパラメータの利用可否はプラットフォームによって異なるため、本番環境に導入する前に確認してください。

import base64
import openai

client = openai.OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.apiyi.com/v1"  # OpenAI互換インターフェース。2.6モデルが利用可能か事前に確認
)

result = client.images.generate(
    model="gpt-image-2.6-flare",
    prompt="极简风格的咖啡店 Logo,单色线条,圆形构图",
    output_format="svg",
    n=1,  # SVGでは1でなければならない
)

svg_xml = base64.b64decode(result.data[0].b64_json).decode("utf-8")
with open("logo.svg", "w", encoding="utf-8") as f:
    f.write(svg_xml)

コストも別途評価する必要があります。公式によると、SVGの生成では、まず参照画像を作成し、次に作成モデルがベクター形式の結果を生成します。そのため、費用には参照画像を生成する画像モデルの利用量と、SVG作成モデルのトークン消費量が含まれます。通常のPNGの1枚あたりのコストをSVGにそのまま当てはめることはできず、公式もすべてのSVGタスクに適用できる固定価格を提示していません。

🚀 手早く検証するためのヒント:SVGの実際のトークン消費量は、プロンプトの複雑さに大きく左右されます。まずは代表的なプロンプトを少数用意して一連の処理を試し、その後に一括生成のコストを見積もるとよいでしょう。APIYI(apiyi.com)のコンソールで対象モデルが利用可能か確認し、新規ユーザー向けのテスト枠を使って小規模に検証できます。


GPT Image 2.6 の GIF 出力パラメータと制約

GIF も generations エンドポイントでのみ生成できます。output_format="gif" を設定すると、2つの新しいパラメータでアニメーションのテンポを調整できます。サイズは1フレームあたりの寸法を指し、幅と高さを指定する場合は16の倍数にする必要があります。

パラメータ 値の範囲 デフォルト値 注意事項
frame_count 2~64フレーム 9フレーム フレーム数が多い場合はピクセル数の上限に制約される
frame_duration_ms 20~2000ミリ秒/フレーム 200ミリ秒 10ミリ秒単位に丸められる
size auto または WIDTHxHEIGHT — 幅と高さは16の倍数
streaming / partial_images 非対応 — GIF は全体をまとめて返す
output_compression / prompt_rewriter 非対応 — JPEG/WebP の設定をそのまま使わない

フレーム数、解像度、生成数は、いずれもモデルの制限と総ピクセル数の上限に制約されます。最大64フレームというのは、どんな高解像度でも安定して生成できるという意味ではありません。これはパラメータ表で最も誤解されやすい点です。公式の例では、Sunburst、512×512、quality=high、デフォルトの complexity=high を使用し、9フレーム、1フレームあたり200ミリ秒、合計1.8秒のアニメーションを生成しています。緑の上着を着た小猿がランタンを持ち上げた後、最初の姿勢に戻るループアニメーションです。

GIF 生成の完全な呼び出しコードを見る
import base64
import openai

client = openai.OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.apiyi.com/v1"  # 使用前にプラットフォームが frame_count などの新しいパラメータを転送するか確認
)

def generate_gif(prompt: str, path: str = "loop.gif") -> str:
    """ループ GIF を生成。SDK の標準フィールド以外は extra_body で渡す"""
    result = client.images.generate(
        model="gpt-image-2.6-sunburst",
        prompt=prompt,
        size="512x512",          # 1フレームのサイズ、16の倍数
        quality="high",
        output_format="gif",
        extra_body={
            "frame_count": 9,           # 2–64、デフォルトは9
            "frame_duration_ms": 200,   # 20–2000、10ms 単位
            "complexity": "high",       # デフォルト値、初回の比較では維持することを推奨
        },
    )
    data = base64.b64decode(result.data[0].b64_json)
    if not data.startswith(b"GIF8"):
        raise ValueError("返回内容不是有效的 GIF 文件")
    with open(path, "wb") as f:
        f.write(data)
    return path

generate_gif("一只穿绿色外套的小猴子举起灯笼,再回到开始姿态,无缝循环")

コードの最後でファイルヘッダーを確認しているのは、「リクエストが成功したこと」と「使える GIF が得られたこと」は別だからです。公式の制限事項にも、GIF の動きにつながりがあるか、ループが自然かどうかは、HTTP ステータスコードだけでなく人の目で確認する必要があると記載されています。


GPT Image 2.6 Markup による部分編集の必須要件

markup は、2.6 の edits エンドポイントに追加された重要な機能です。元画像、透明な注釈レイヤー、編集用のプロンプトを送信して使います。公式サンプルでは、元画像に kitchen.webp、注釈レイヤーに赤い円を描いた透明 PNG を使用しています。プロンプトでは、円内の花瓶を青色に変更し、周囲の物を維持したうえで、最終画像から赤い円を取り除くよう指示しています。

markup には具体的な要件があり、いずれかを満たさないとリクエストが失敗したり、期待どおりの結果が得られなかったりする可能性があります。

  1. markup は透明ピクセルを含む PNG の注釈レイヤーである必要があります。元画像に直接赤い円を描き、それを markup として送信することはできません。
  2. 元画像と markup のピクセル単位の幅と高さは、完全に一致している必要があります。
  3. markup が適用されるのは、最初の入力画像です。それ以外の画像は参照画像としてのみ使われます。
  4. 最初の画像と注釈レイヤーはそれぞれ最大 16,777,216 ピクセルで、markup ファイルは 50 MB 以下にする必要があります。
  5. markup は mask や prompt_rewriter と同時に使用できません。

もう一点、公式ドキュメントでは、マスクを使った編集もプロンプトに基づいて行われるため、ピクセル単位の境界が厳密に守られるとは限らないと説明しています。円やマスクは編集の意図を伝えるものですが、Photoshop のようにピクセルを確定的に編集できるわけではありません。特定の領域を元画像とピクセル単位で一致させる必要がある場合は、モデルによる維持に完全に依存するのではなく、編集結果を確認したうえで元画像と合成することが推奨されています。

gpt-image-2-6-api-hidden-limits-gif-svg-markup-ja-image-2


GPT Image 2.6 パラメータ互換性早見表

形式とパラメータを一つの表にまとめると、ドキュメントを一項目ずつ確認するより、設定の競合を調べやすくなります。以下の表には資料に明記されたルールのみを記載しています。「未記載」の項目は、非対応であることを意味するものではありません。

出力形式 streaming / partial output_compression 透明背景 n の制限 利用可能なエンドポイント
PNG ドキュメントに制限の記載なし 適用外 対応 未記載 generations / edits
JPEG ドキュメントに制限の記載なし 対応 不向き 未記載 generations / edits
WebP ドキュメントに制限の記載なし 対応 対応 未記載 generations / edits
SVG 非対応 非対応 対応 1である必要あり generations のみ
GIF 非対応 非対応 未記載 ピクセル予算による制約あり generations のみ

gpt-image-2-6-api-hidden-limits-gif-svg-markup-ja-image-3

ほかにも見落としやすい項目があります。一般的なサイズは1024×1024、1536×1024、1024×1536です。カスタムサイズでは、幅と高さが16の倍数で、アスペクト比が1:3から3:1の範囲内である必要があります。quality の値にはauto、low、medium、high、xhigh、maxがあり、complexity の値はlow、medium、highです。この二つは異なる側面を表しており、前者は描画の細かさに、後者は構図の計画やシーンの理解に影響します。


GPT Image 2.6 の制限が開発者に与える影響

既存ワークフローを移行する際の互換性リスク

公式のプロンプトガイドでは、画像編集時に input_fidelity を省略すること、また GPT Image 2.6 は reasoning.summary をサポートしていないことが特に注意されています。既存コードにこれらのフィールドが含まれている場合、モデル名を置き換えるだけではエラーになる可能性があります。公式が示す移行手順は、次のようにまとめられます。

  • まず、旧モデルの代表的なリクエストと出力を保存し、比較の基準とします。
  • モデル名だけを置き換え、プロンプト、参照画像、サイズ、quality、出力形式は変更しません。
  • 初回は complexity のデフォルト値を維持し、その後は quality と complexity のどちらか一方だけを調整します。
  • 出力品質、レイテンシ、失敗率、リトライ回数、実際のコストを併せて確認し、少量のトラフィックで試してから徐々に割合を増やします。

エラーの種類に応じた処理が必要

画像生成は、認証、クォータ、レート制限、サーバー側のエラー、入力内容の問題などによって失敗することがあります。レート制限とサーバー側のエラーには、待機時間を徐々に延ばすバックオフ付きリトライが適しています。一方、クォータエラーを無条件にリトライすべきではありません。ユーザーによる入力の修正が必要なエラーでは、呼び出しを繰り返すのではなく、リクエストの調整を促しましょう。モデレーションによってブロックされた場合は error.code = "moderation_blocked" が返されます。原因を調査しやすくするため、リクエスト ID も併せて記録することをおすすめします。

サードパーティープラットフォームへの接続前チェックリスト

集約プラットフォームを通じて新しいモデルを呼び出す際、「モデルが提供されている」ことは第一歩にすぎません。以下のチェック項目は公式の機能一覧に基づくもので、接続前に一つずつ確認すべき事項です。特定のプラットフォームがこれらの機能をサポートしている、あるいはサポートしていないことを示すものではありません。

確認レイヤー 確認内容
モデル Flare / Sunburst の 2.6 モデル ID が両方提供されているか
インターフェース generations と edits の両方を転送するか、markup ファイルのアップロードをサポートしているか
パラメーター complexity、frame_count、frame_duration_ms、output_format をそのまま渡せるか
結果 Base64 を完全な形で返すか、大容量の GIF をサポートするか、SVG の元の XML を保持するか、エラー情報がデバッグしやすいか
料金 課金の基準がトークン使用量に対応しているか、SVG の追加作成モデル使用量がどのように計算されるか

💡 接続時のアドバイス:同じ一連のリクエストを公式インターフェースとサードパーティープラットフォームのそれぞれでテストし、特に返却形式とエラー情報を比較することをおすすめします。APIYI apiyi.com に接続する前に、ドキュメントセンターでモデル一覧とパラメーターの説明を確認し、2.6 関連機能の提供状況を把握してから本番トラフィックを切り替えましょう。


よくある質問 FAQ

Q1:GPT Image 2.6 の edits エンドポイントで GIF を直接出力できますか?

できません。公式ドキュメントによると、GIF 出力は `images/generations` の機能であり、`images/edits` は GIF の直接出力に対応していません。ChatGPT の写真を GIF に変換する機能は製品として提供されるもので、API の編集エンドポイントでも同じことができるとは限りません。

Q2:既存の SVG をアップロードし、GPT Image 2.6 で編集して SVG のまま出力できますか?

これは公式ドキュメントでサポートされている手順ではありません。SVG はラスター画像の編集入力として使用できず、edits から SVG を出力することもできません。ベクター画像を繰り返し調整したい場合は、generations でプロンプトを調整して再生成するか、ベクター編集ツールで処理するのが確実です。

Q3:markup と mask は併用できますか?

できません。公式の仕様では、markup は `mask` および `prompt_rewriter` と同時に使用できません。編集領域を指定するには、いずれか一方の方法を選ぶ必要があります。

Q4:GPT Image 2.6 の GIF、SVG の呼び出しをすばやく検証するには?

まずはこの記事のサンプルで単一のリクエストを実行し、返されたファイルが有効かどうかを確認しましょう。APIYI apiyi.com に登録してテスト用クレジットを取得し、対象モデルとパラメータが利用可能かを確認したうえで、base_url を `https://api.apiyi.com/v1` に変更して小規模に検証できます。

Q5:SVG と GIF の料金は画像1枚あたりで見積もれますか?

単純には見積もれません。公式ではトークン単位の課金を採用しており、GIF 1枚あたりの統一価格はありません。SVG には、参照画像とベクター画像の生成という2つの使用量が含まれます。サードパーティープラットフォームの料金は各プラットフォームの公表内容を確認してください。APIYI apiyi.com のコンソールで実際の使用量の明細を確認し、公式の単価をそのまま当てはめて計算するのは避けましょう。

Q6:GPT Image 2.6 の部分編集では、ほかの領域のピクセルが変わらないことを保証できますか?

保証できません。公式の説明によると、マスクを使った編集もプロンプトに基づいて行われるため、必ずしもピクセルの境界に厳密に従うとは限りません。完全に変化させたくない領域がある場合は、編集結果を元画像と合成することが推奨されています。


GPT Image 2.6 API の制限に関する重要ポイント Key Takeaways

  • 機能があっても、すべてのエンドポイントで使えるわけではありません:GIF と SVG は generations でのみ出力でき、markup は edits でのみ使用できます。
  • SVG は制約が最も多い形式です:n=1 に限られ、ストリーミング出力、圧縮パラメータ、prompt_rewriter には対応していません。返された内容は XML にデコードする必要があります。
  • GIF はピクセル数の上限に制約されます:64 フレームに対応していても、あらゆる解像度で安定して生成できるわけではありません。各フレームの幅と高さは 16 の倍数にする必要があります。
  • markup の形式要件は厳格です:透明 PNG で、元画像と同じサイズにする必要があります。mask と同時には使用できません。
  • 移行時には不要なフィールドを削除します:編集時は input_fidelity を省略し、reasoning.summary を渡さないようにします。
  • 導入前に段階的に確認します:APIYI apiyi.com のドキュメントとテスト用クレジットを活用し、モデル、インターフェース、パラメータ、結果、料金の 5 つの観点から機能を確認できます。

まとめ

GPT Image 2.6 API の見落としやすい制限は、次の 3 点にまとめられます。

  1. エンドポイントの役割は固定されています:新しい画像の生成には generations、既存画像の変更には edits を使用します。編集結果として GIF や SVG は出力されません。
  2. 同時に使用できないパラメータがあります:SVG と GIF は、ストリーミング出力、圧縮パラメータ、prompt_rewriter と併用できません。markup と mask もどちらか一方しか使用できません。
  3. 返された結果の確認が必要です:レスポンスが成功しても、そのまま使える成果物とは限りません。ファイル形式、ループ再生の効果、編集範囲を確認しましょう。

GPT Image 2.6 の導入では、モデル名を置き換えるだけでなく、エンドポイント、形式、パラメータ、返却データがビジネス要件に合っているかを一つずつ確認する必要があります。まずは APIYI apiyi.com で少数の実際のリクエストを使って必要な機能を検証し、利用可能な状態と実際のコストを確認してから、本番トラフィックを段階的に移行することをおすすめします。


📚 参考資料

  1. OpenAI API – Image generation:エンドポイント、SVG/GIF 出力、マークアップ編集、エラー処理に関する公式ガイド
  2. リンク: developers.openai.com/api/docs/guides/image-generation
  3. 説明:本記事のエンドポイントとパラメータ制限に関する主な根拠

  4. OpenAI API – GPT Image 2.6 prompting guide:モデルパラメータ、移行手順、GIF/SVG の例

  5. リンク: developers.openai.com/api/docs/guides/image-prompting
  6. 説明:input_fidelity、reasoning.summary などの移行時の注意事項を掲載

  7. OpenAI – GPT Image 2.6 Sunburst Model:Sunburst モデルのページ

  8. リンク: developers.openai.com/api/docs/models/gpt-image-2.6-sunburst
  9. 説明:モデルの機能と料金情報

  10. OpenAI – GPT Image 2.6 Flare Model:Flare モデルのページ

  11. リンク: developers.openai.com/api/docs/models/gpt-image-2.6-flare
  12. 説明:モデルの機能と料金情報

著者:APIYI 技術チーム
技術に関するお問い合わせ:APIYI 公式サイト apiyi.com のトップページからお気軽にご連絡ください。導入に関する資料は docs.apiyi.com のドキュメントセンターでもご覧いただけます。

関連記事

類似投稿