API 參考
影像生成 Images Generations
POST /v1/images/generations 的參數、請求與響應示例。格式與 OpenAI 影像生成介面一致,一套程式碼呼叫 GPT Image、Gemini、Flux、豆包 Seedream 等繪圖模型,本站按原格式轉發請求。
POST /v1/images/generations 根據文字描述生成圖片,格式與 OpenAI Images API 一致。目錄裡的 GPT Image、Gemini(Nano Banana)、Flux、豆包 Seedream 等繪圖模型都可以用這個介面呼叫。本站把請求按原格式轉發給模型服務,不同模型支援的尺寸、畫質等取值不一樣,以對應模型的官方說明為準。很多繪圖模型按次計費,具體看下方價格表或模型詳情頁。
POST
https://www.tutujin.com/v1/images/generations請求頭
| 請求頭 | 必填 | 說明 |
|---|---|---|
Authorization | 是 | Bearer sk-...,控制台建立的 API Key |
Content-Type | 是 | application/json |
請求參數
| 參數 | 類型 | 必填 | 說明 |
|---|---|---|---|
model | string | 是 | 模型名,例如 gpt-image-2 |
prompt | string | 是 | 圖片描述。寫清主體、場景、風格、構圖和光線,出圖更穩定 |
n | integer | 否 | 生成幾張,預設 1。部分模型一次只能出 1 張,需要多張時併發發起多次請求 |
size | string | 否 | 尺寸,例如 1024x1024、1536x1024、1024x1536。可選值因模型而異 |
quality | string | 否 | 畫質,GPT Image 系列可選 low、medium、high、auto;其他模型可能忽略 |
response_format | string | 否 | url 返回圖片連結,b64_json 返回 base64 資料。部分模型只支援其中一種 |
output_format | string | 否 | 輸出檔案格式,例如 png、jpeg、webp,僅部分模型支援 |
background | string | 否 | 設為 transparent 生成透明背景,僅部分模型支援 |
aspect_ratio | string | 否 | 部分非 OpenAI 模型支援的畫幅比例參數,例如 16:9、3:4 |
請求示例
curl https://www.tutujin.com/v1/images/generations \
-H "Authorization: Bearer $TUTUJIN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2",
"prompt": "白色背景上的一只陶瓷保温杯,柔和棚拍光,产品摄影,正面略俯视",
"size": "1024x1024"
}'import base64
import os
from openai import OpenAI
client = OpenAI(base_url="https://www.tutujin.com/v1", api_key=os.environ["TUTUJIN_API_KEY"], timeout=300)
resp = client.images.generate(
model="gpt-image-2",
prompt="白色背景上的一只陶瓷保温杯,柔和棚拍光,产品摄影,正面略俯视",
size="1024x1024",
)
img = resp.data[0]
if img.b64_json:
with open("cup.png", "wb") as f:
f.write(base64.b64decode(img.b64_json))
else:
print(img.url) # 临时链接,拿到后尽快下载保存import fs from 'node:fs'
import OpenAI from 'openai'
const client = new OpenAI({ baseURL: 'https://www.tutujin.com/v1', apiKey: process.env.TUTUJIN_API_KEY, timeout: 300_000 })
const resp = await client.images.generate({
model: 'gpt-image-2',
prompt: '白色背景上的一只陶瓷保温杯,柔和棚拍光,产品摄影,正面略俯视',
size: '1024x1024',
})
const img = resp.data[0]
if (img.b64_json) fs.writeFileSync('cup.png', Buffer.from(img.b64_json, 'base64'))
else console.log(img.url) // 临时链接,拿到后尽快下载保存生圖比文本對話慢得多,客戶端超時建議設長一些,示例裡設為 300 秒。
響應示例
JSON
{
"created": 1794000000,
"data": [
{
"url": "https://example.com/generated/cup.png",
"revised_prompt": "..."
}
]
}| 欄位 | 說明 |
|---|---|
data[].url | 圖片的臨時連結,會過期,拿到後及時下載並存到自己的儲存裡 |
data[].b64_json | base64 編碼的圖片資料,response_format 為 b64_json 或模型只返回這種格式時出現 |
data[].revised_prompt | 部分模型會改寫提示詞,這裡返回實際使用的版本 |
usage | 按 token 計費的影像模型會返回輸入、輸出 tokens;按次計費的模型可能沒有這個欄位 |
解析結果時同時處理 url 和 b64_json 兩種情況最穩妥。
注意事項
- 這個介面是原樣轉發,沒有在本站單獨實測。每個繪圖模型的參數取值不同,接入前先用一兩次請求確認尺寸、返回格式。
- 返回的圖片連結是臨時地址,不要直接存進資料庫長期引用,下載後轉存到自己的物件儲存。
- 計費方式看模型:有的按次(每次請求的價格),有的按 tokens。實際扣費以控制台「操作日誌」為準。
- 提示詞觸發內容安全策略時會返回錯誤,修改提示詞後再請求,原樣重試不會成功。
- 需要多張圖時,
n不生效的模型可以併發發起多次請求,並控制好併發數。
支援此介面的模型
| 模型 | 廠商 | 最低價分組 | 輸入 ¥/百萬 | 輸出 ¥/百萬 | 按次 ¥/次 |
|---|---|---|---|---|---|
| gpt-image-2 | OpenAI | 標準 | — | — | ¥0.12 |
| nano-banana-pro | 標準 | — | — | ¥0.4 | |
| flux | Flux 繪圖 | 標準 | — | — | ¥0.02 |
| flux-schnell | Flux 繪圖 | 標準 | — | — | ¥0.02 |
| flux-dev | Flux 繪圖 | 標準 | — | — | ¥0.06 |
| gpt-image-2-all | OpenAI | 標準 | — | — | ¥0.08 |
| dall-e-3 | OpenAI | 標準 | — | — | ¥0.08 |
| flux-pro | Flux 繪圖 | 標準 | — | — | ¥0.1 |
價格為人民幣,取各模型最低價分組;價格更新於 2026年11月13日 下午6:08。
共 54 個模型支援此介面,上表列出其中一部分。 在模型廣場檢視全部
沒找到答案?加客服微信 JsnonoChat,傳送報錯資訊裡的 request id,我們幫你排查。