GPT Image 2 與 Gemini 圖片生成 API

透過 OpenAI 相容 Images API 使用 GPT Image 2,或透過 Gemini 原生 API 使用 Nano Banana Pro 與 Nano Banana 2。

本頁將兩套彼此獨立的圖片生成 API 協議放在同一處。它們共用 Modelflare API Key 與 Credits,但請求和回應格式不能混用。

  • gpt-image-2 使用 OpenAI 相容的 /v1/images/generations/v1/images/edits 協議。
  • gemini-3-pro-imagegemini-3.1-flash-image 使用 Gemini 原生 generateContent 協議。

複製範例前請先選擇模型系列。不要把 Gemini 欄位送到 GPT 端點,也不要把 GPT Images 欄位送到 Gemini 端點。

1. GPT Image 2 — OpenAI 相容 Images API

透過 OpenAI 相容 Images API 使用 gpt-image-2 生成 PNG,或依據公開 URL、本機上傳的參考圖進行編輯。每個請求回傳一張圖片,支援中等或高畫質、短期簽名 URL 或 base64,以及可選 SSE。

選擇入口與模式

  • 可能耗時數分鐘的同步 JSON 請求使用 https://origin.modelflare.dev/v1
  • 經 Cloudflare 的長請求使用 https://modelflare.dev/v1 並設定 stream=true;最終圖片完成前會持續傳送 SSE 心跳。
  • 不要在請求進行中跨網域重新導向 POST;提交前先選定 Base URL。

同步請求

curl https://origin.modelflare.dev/v1/images/generations \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"gpt-image-2","prompt":"黎明時寧靜的湖畔木屋,電影感自然光","n":1,"quality":"medium","size":"1024x1024","response_format":"url","output_format":"png"}'

URL 回應包含一小時後到期的 Modelflare 私有簽名連結。將 response_format 設為 b64_json,可直接取得驗證後的 PNG 而不儲存 API 輸出物件。

即時模型與價格頁面會列出常用尺寸的 medium 與 high 價格點;實際扣費依請求的畫質與尺寸計算,不疊加一般路由群組倍率,最終費用會記錄於用量日誌。

編輯參考圖

POST /v1/images/edits 傳入一個或多個可公開存取的 HTTP(S) 圖片 URL。images 陣列的每一項只能包含一個 image_url

curl https://origin.modelflare.dev/v1/images/edits \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"gpt-image-2","prompt":"把背景改成乾淨的白色攝影棚","images":[{"image_url":"https://example.com/input.png"}],"size":"2048x2048","response_format":"url"}'

也可以透過 multipart/form-data 上傳一個本機 PNG、JPEG 或 WebP 檔案:

curl https://origin.modelflare.dev/v1/images/edits \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -F "model=gpt-image-2" \
  -F "prompt=把背景改成乾淨的白色攝影棚" \
  -F "image=@/path/to/input.png" \
  -F "size=2048x2048" \
  -F "response_format=url"

multipart 請求必須且只能包含一個圖片檔案,總請求體不得超過 20 MiB。參考圖 URL 或上傳檔案會傳送給選定的上游服務商;URL 須在上游讀取期間保持可存取。Modelflare 不會把任一種參考圖輸入保存為 API 輸出資產。

串流請求

curl -N https://modelflare.dev/v1/images/generations \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"gpt-image-2","prompt":"一隻白貓在雨中的霓虹街道奔跑","n":1,"quality":"high","size":"1024x1024","response_format":"url","stream":true}'

SSE 註解只是心跳。收到 image_generation.completeddata: [DONE] 後結束。

支援欄位為 modelpromptn=1quality=medium|high、合法 WIDTHxHEIGHTresponse_format=url|b64_jsonoutput_format=png 與可選 stream/v1/images/edits 接受非空的 images 陣列(每項含一個公開 HTTP(S) image_url),或 multipart image 欄位中的一個有效 PNG、JPEG 或 WebP 檔案。圖片生成仍拒絕參考圖;多個上傳檔案、data/base64 輸入、mask、input_fidelity、變體、局部圖及未知欄位會被拒絕。失敗請求的預扣 Credits 會透過依 Request ID 冪等的退款路徑返還。

請使用一般 API Key。綁定特定渠道的 Key 會被拒絕;啟用模型限制的 Key 必須包含 gpt-image-2


2. Gemini 圖片 — Gemini 原生 API

透過 Gemini 原生請求與回應格式使用 Nano Banana Pro 或 Nano Banana 2。這兩個模型不使用 /v1/images/generations

端點與長請求模式

串流請求

以下範例使用 Nano Banana 2。將 URL 中的模型替換為 gemini-3-pro-image 即可使用 Nano Banana Pro。

curl -N "https://modelflare.dev/v1beta/models/gemini-3.1-flash-image:streamGenerateContent?alt=sse" \
  -H "x-goog-api-key: YOUR_MODELFLARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [{
      "role": "user",
      "parts": [{"text": "Create a clean blue circle centered on a white background. No text."}]
    }],
    "generationConfig": {
      "responseModalities": ["TEXT", "IMAGE"],
      "imageConfig": {"aspectRatio": "1:1", "imageSize": "1K"}
    }
  }'

回應格式

每個 SSE data: 事件都是 Gemini 原生 JSON。最終圖片的 base64 位於 candidates[].content.parts[].inlineData.data,MIME 類型位於 inlineData.mimeType;同一回應也可能包含文字 part。最終 candidate 回傳 finishReason=STOP 或連線關閉後結束;這裡不會出現 GPT 的 image_generation.completed 事件。

模型、解析度與預估價格

模型 解析度 預估每張價格
Nano Banana Pro 1K / 2K US$0.06720
Nano Banana Pro 4K US$0.12000
Nano Banana 2 0.5K US$0.02241
Nano Banana 2 1K US$0.03360
Nano Banana 2 2K US$0.05040
Nano Banana 2 4K US$0.07560

imageSize 中的 K 必須大寫。以上為單張圖片預估價格;最終費用可能隨請求內容略有變化,並會記錄於用量日誌。

透過 x-goog-api-key 傳入一般 Modelflare API Key。Key 必須能使用 gemini-image 群組;啟用模型限制時也必須包含所選 Gemini 圖片模型。