Create image
最近更新:2026年9月1日
用 gpt-image-2 出图,OpenAI 兼容端点,官方 SDK 直接可用。
openai/gpt-image-2 的文生图。走 OpenAI 兼容端点,官方 SDK 将 base_url
指向此处即可直接使用。
https://gateway.amux.ai/v1/images/generations鉴权
headerAuthorizationstring必填Bearer <你的 Amux AI 密钥> 站内 API Key。
请求
application/jsonmodelstring必填站内模型 ID,可带 :供应商 后缀锁定供应商。
promptstring必填提示词。
ninteger默认 1出几张(1–10,默认 1)。按张计费,预扣也按张乘。 流式时必须是 1。
sizestring精确像素串或 auto(默认)。常用档位:1024x1024(1:1)、
1536x1024 / 1024x1536(3:2 横 / 竖)、
1024x768 / 768x1024(4:3 横 / 竖)、2048x2048(2K 见方)、
2048x1152(16:9)、2048x1536 / 1536x2048(2K 4:3)、
3840x2160 / 2160x3840(4K 16:9)、
3264x2448 / 2448x3264(4K 4:3)。
除此之外,任意满足下列约束的像素串都可以:两边都是 16 的倍数、
长边 ≤ 3840、宽高比 ≤ 3:1、总像素数在 655,360 – 8,294,400 之间。
长边取满 3840 时另一边最多 2160,因此那一档只有 16:9 及更宽;
像素上限内最大的 4:3 是 3264x2448。
⚠️ 尺寸直接决定出图 token 数,也就是价格。
auto 不受这些约束——实际出了多大,看响应里的 size。
它与 Google 系的「比例 + 分辨率档」并列,打到只认另一套的上游时
我们会换算并在 amux.notes 里说明。
aspect_ratiostring1:1 / 4:3 / 3:4 / 3:2 / 2:3 / 16:9 / 9:16。 size 的另一种写法(Google 生态的说法),两者给一个就够; 同时给时以 size 为准,并在 amux.notes 里说明。
⚠️ 建议优先使用 size。 这条上游只接受精确像素串,因此比例会连同 image_size(若提供)一起折算为其中一档。折算是有损的:没有精确匹配的 比例会被近似为最接近的一档,实在没有接近的则整个丢弃——两种情况都会在 amux.notes 中说明。size 表达的是确切的结果,且原样透传。
image_sizestring1K / 2K / 4K。和 aspect_ratio 搭配用,规则同上。
quality"low" | "medium" | "high" | "auto"默认 "auto"渲染质量。它决定出图 token 数,因而直接影响价格—— 档位之间可以差一个数量级。
background"transparent" | "opaque" | "auto"默认 "auto"透明背景要配 png 或 webp,jpeg 没有 alpha 通道。 透明背景目前仍是预览能力。
output_format"png" | "jpeg" | "webp"默认 "png"输出格式,默认 png。
output_compressioninteger默认 100压缩级别,只对 jpeg / webp 有意义。
moderation"auto" | "low"默认 "auto"内容审核强度。只有生成端点有这个参数。
userstring端用户标识,用于滥用追踪。不需要就整个别传。
streamboolean默认 false以 SSE 流式返回。要求 n 为 1,且这个模型至少有一条支持流式的供应商。
partial_imagesinteger默认 0流式时给几张低清预览。0(默认)表示只发最后那一个完成事件。 实际可能比要的少——图出得快时上游会直接发完成事件。
响应
200response出图成功。data 与 usage 与 OpenAI 一致,amux 是我们的扩展。
400response请求不合法。也包括「要流式但没有支持流式的供应商」与「流式时 n 大于 1」 ——两者都会说清怎么改。
402response可用余额不足以覆盖这次请求的预扣上界。可用 = 余额 − 已过期批次 − 已冻结的预扣。
503response没有可用供应商。两种常见原因:这个模型还没有配图像供应商,
或者你要的尺寸档位在该供应商上没有配价——后者的细节在 metadata 里。
尺寸与成本
常用档位:
| 宽高比 | 1K | 2K | 4K |
|---|---|---|---|
| 1:1 | 1024x1024 | 2048x2048 | — |
| 3:2 / 2:3 | 1536x1024 / 1024x1536 | — | — |
| 4:3 / 3:4 | 1024x768 / 768x1024 | 2048x1536 / 1536x2048 | 3264x2448 / 2448x3264 |
| 16:9 / 9:16 | — | 2048x1152 | 3840x2160 / 2160x3840 |
除此之外,任意满足下面四条的像素串都合法:两边都是 16 的倍数、 长边 ≤ 3840、宽高比 ≤ 3:1、总像素数在 655,360 – 8,294,400 之间。
长边取满 3840 时另一边最多 2160,因此该档位仅支持 16:9 及更宽的比例;
像素上限内最大的 4:3 是 3264x2448。
建议优先使用 size。 aspect_ratio 与 image_size 是另一种写法,但这条上游
只接受精确像素串,因此这一对会被折算为上表中的某一档。折算是有损的:不在表内的比例
会被近似为最接近的一档,实在没有接近的则整个丢弃——两种情况都会在 amux.notes
中说明。size 表达的是确切的结果,且原样透传。
auto 不受这些约束——想知道实际出了多大,读响应里的 size。
size 与 quality 决定图像 token 数,是这次调用的主要成本项。若关注成本,
建议显式指定这两个参数,而非依赖默认值。
产物保留
响应的 amux.images 里是可直接访问的地址,data[].b64_json 是这一次的图。
存储产物在保留期后会被清理。 需要长期保存的请及时下载;清理后地址返回 404。
流式
stream: true 按 SSE 返回,partial_images(0–3)决定给几张低清预览。
最终图与 usage 在同一个完成事件里;如果出图很快,预览张数可能少于请求值。
流式时 n 必须是 1。
错误
错误体形状与 OpenAI 一致,type 取值与重试语义见错误与重试。
curl https://gateway.amux.ai/v1/images/generations \
-H "Authorization: Bearer $AMUX_API_KEY" \
-d '{
"model": "openai/gpt-image-2",
"prompt": "A red fox sitting in snow, photorealistic",
"size": "1024x1024"
}'{
"created": 1786000000,
"size": "<string>",
"quality": "<string>",
"background": "<string>",
"output_format": "<string>",
"data": [
{
"b64_json": "<string>",
"revised_prompt": "<string>"
}
],
"usage": {
"input_tokens": 0,
"output_tokens": 0,
"total_tokens": 0
},
"amux": {
"task_id": "<string>",
"generation_id": "<string>",
"provider": "<string>",
"cost_nano": "<string>",
"images": [
{
"index": 0,
"url": "<string>"
}
],
"notes": [
"<string>"
]
}
}