图片生成
本平台统一图片生成 API 规范
图片生成支持两种调用方式:OpenAI 兼容格式和 Gemini 原生格式。OpenAI 调用方式适合大多数业务和 OpenAI SDK;Gemini 调用方式适合已经按 Google Gemini SDK 或 generateContent 格式接入的客户端。
OpenAI 调用方式
这里的 OpenAI 指接口格式,不限制模型厂商。业务接入时优先使用 /v1/images/generations,需要兼容 OpenAI 图片编辑客户端时使用 /v1/images/edits。
文生图
POST /v1/images/generations{
"model": "gpt-image-2",
"prompt": "未来城市夜景,电影感,高细节",
"aspect_ratio": "16:9",
"resolution": "2k"
}GPT Image 2 的比例与质量换算
OpenAI 官方接口中的 quality 和 size 是两个独立参数。gpt-image-2 的 quality 支持 low、medium、high、auto,size 则使用 宽x高,例如 1024x1024。本平台“生图测试”页允许用户选择更直观的比例和质量档位,再在请求发出前把它们换算成合法的 size;换算后的 quality 仍会作为独立参数发送。
| 页面质量 | 请求 quality | 换算基准 B |
|---|---|---|
| 自动 | 不传 | 短边 1024px |
| 1K | low | 1024 |
| 2K | medium | 2048 |
| 4K | high | 2880 |
4K 档位说明
4K 档位不是把任意图片的长边固定为 4096px。换算基准使用 2880,是为了让 1:1 图片不超过官方允许的 8,294,400 总像素,并让 16:9 图片得到 3840x2160。
设用户选择的比例为 w:h,长短边比为 r = max(w, h) / min(w, h)。1K、2K、4K 档位按以下规则计算:
长边 = floor(sqrt(B × B × r) / 16) × 16
短边 = round((长边 / r) / 16) × 16自动质量以短边 1024px 为基准,长边按比例计算并对齐到 16px。最后再根据横图或竖图确定 size 中宽、高的顺序。
常用比例的换算结果如下:
| 比例 | 自动质量 | 1K / low | 2K / medium | 4K / high |
|---|---|---|---|---|
1:1 | 1024x1024 | 1024x1024 | 2048x2048 | 2880x2880 |
3:2 | 1536x1024 | 1248x832 | 2496x1664 | 3520x2352 |
2:3 | 1024x1536 | 832x1248 | 1664x2496 | 2352x3520 |
4:3 | 1360x1024 | 1168x880 | 2352x1760 | 3312x2480 |
3:4 | 1024x1360 | 880x1168 | 1760x2352 | 2480x3312 |
16:9 | 1824x1024 | 1360x768 | 2720x1536 | 3840x2160 |
9:16 | 1024x1824 | 768x1360 | 1536x2720 | 2160x3840 |
例如,页面选择“2K + 16:9”时,实际请求为:
{
"model": "gpt-image-2",
"prompt": "未来城市夜景,电影感,高细节",
"quality": "medium",
"size": "2720x1536"
}如果页面配置已经是明确尺寸,例如 2048x1152,则不会再次按比例换算,校验通过后直接作为 size 发送;如果尺寸为 auto,则不发送 size,由模型自动选择。
换算或直接输入的尺寸必须同时满足以下条件:
- 宽、高都是 16 的倍数;
- 最长边不超过 3840px;
- 长边与短边之比不超过 3:1;
- 总像素在 655,360 到 8,294,400 之间。
以上约束来自 OpenAI 图片生成指南。
如需用 OpenAI 格式调用 Gemini 图片模型,把 model 换成 gemini-3-pro-image 即可:
{
"model": "gemini-3-pro-image",
"prompt": "一张白底产品海报,玻璃质感,柔和棚拍光",
"size": "1024x1024",
"resolution": "2k"
}图生图
POST /v1/images/edits也可以在 /v1/images/generations 中传图片字段:
{
"model": "gpt-image-2",
"prompt": "保持主体不变,改成清晨自然光",
"image": "https://example.com/input.png",
"size": "1024x1024"
}Chat Completions 兼容
如果客户端只能调用 /v1/chat/completions,也可以用 OpenAI Chat Completions 格式调用 Gemini 图片模型。平台会为支持图片输出的 Gemini 模型补齐 responseModalities;图片比例和尺寸通过 extra_body.google.image_config 传入。
curl https://你的本平台域名/v1/chat/completions \
-H "Authorization: Bearer sk-你的令牌" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-3-pro-image-preview",
"messages": [
{
"role": "user",
"content": "生成一张未来城市夜景,电影感,高细节"
}
],
"extra_body": {
"google": {
"image_config": {
"aspect_ratio": "16:9",
"image_size": "2K"
}
}
}
}'Gemini 调用方式
Gemini 原生格式使用 generateContent,请求体使用 Gemini 的 contents、generationConfig、imageConfig 字段。
curl https://你的本平台域名/v1beta/models/gemini-3-pro-image-preview:generateContent \
-H "Authorization: Bearer sk-你的令牌" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"role": "user",
"parts": [
{
"text": "生成一张未来城市夜景,电影感,高细节"
}
]
}
],
"generationConfig": {
"responseModalities": ["TEXT", "IMAGE"],
"imageConfig": {
"aspectRatio": "16:9",
"imageSize": "2K"
}
}
}'Gemini 原生令牌
Gemini 原生路由统一使用 Authorization: Bearer sk-...,这里填写的是本平台颁发的令牌。
统一字段
| 字段 | 类型 | 说明 |
|---|---|---|
model | string | 本平台图片模型值,必填。 |
prompt | string | 图片提示词,必填。 |
image / image_url / imageUrl | string | 单张图生图或参考图输入。 |
images / imageUrls | string[] | 多图输入;部分模型只支持 1 张。 |
aspect_ratio / aspectRatio | string | 画面比例,如 1:1、16:9、9:16、3:2。 |
size | string | OpenAI 风格尺寸,如 1024x1024;平台会尽量推导比例和分辨率。 |
resolution | string | 图片分辨率,如 1k、2k、4k。 |
negative_prompt | string | 反向提示词,只有部分模型支持。 |
图生图含义
当前启用图片模型的图生图是参考图能力,不等同于 OpenAI 带 mask 的局部编辑。
模型能力
| 模型值 | 系列 | 文生图 | 图生图 | 自动识别规则 | 限制 |
|---|---|---|---|---|---|
| gpt-image-2 | OpenAI Image | 支持 | 支持 | 无图片按文生图;有 image/images/imageUrl 按图生图或参考图。 | 支持 size 推导 aspectRatio/resolution;参考图字段会归一为 imageUrls。 |
| gemini-3-pro-image | Gemini Image | 支持 | 支持 | 无图片按文生图;有 image/images/imageUrl 按图生图或参考图。 | 支持 size 推导 aspectRatio/resolution;参考图字段会归一为 imageUrls。 |
图生图为参考图能力,不等同于带 mask 的局部编辑。
多图参考
{
"model": "gemini-3-pro-image",
"prompt": "参考两张图片的风格和主体,生成一张海报",
"imageUrls": ["https://example.com/reference-a.jpg", "https://example.com/reference-b.jpg"],
"aspect_ratio": "16:9"
}响应
{
"created": 1782658000,
"data": [
{
"url": "https://example.com/result.png",
"b64_json": "",
"revised_prompt": ""
}
]
}