Skip to content
Markdown · 适合发给 AI

ChatGPT 生图 · OpenAI 官方协议 ​

知梦 ChatGPT 生图按照 OpenAI Images API 官方协议接入。除 Base URL、API Key、知梦提供的模型 ID 与本站价格外,请求路径、请求结构与响应处理均按 OpenAI Images API 的方式使用。

REST Base URL:https://api.zmoapi.cn

OpenAI SDK baseURL:https://api.zmoapi.cn/v1

1. 鉴权 ​

http
Authorization: Bearer YOUR_API_KEY

JSON 请求:

http
Content-Type: application/json

文件编辑请求使用 multipart/form-data,由 curl / SDK 自动生成 boundary,不要手工写固定 boundary。

2. 当前模型与价格 ​

模型知梦模型 ID档位价格
GPT Image 2gpt-image-21K¥0.025 / 张
GPT Image 2gpt-image-2-2k2K¥0.1 / 张
GPT Image 2gpt-image-2-4k4K¥0.1 / 张
GPT Image 2.5 Flaregpt-image-2.5-flare1K¥0.025 / 张
GPT Image 2.5 Flaregpt-image-2.5-flare-2k2K¥0.25 / 张
GPT Image 2.5 Flaregpt-image-2.5-flare-4k4K¥0.25 / 张
GPT Image 2.5 Sunburstgpt-image-2.5-sunburst1K¥0.025 / 张
GPT Image 2.5 Sunburstgpt-image-2.5-sunburst-2k2K¥0.25 / 张
GPT Image 2.5 Sunburstgpt-image-2.5-sunburst-4k4K¥0.25 / 张
GPT Image 2 Extgpt-image-2-ext2K / 4K 超分,非原生¥0.035 / 张
GPT Image 2.5 Ext(默认 Sunburst)gpt-image-2.5-ext2K / 4K 超分,非原生¥0.035 / 张
GPT Image 2.5 Flare AZgpt-image-2.5-flare-az原生尺寸 / Token 计费标准输入 ¥15 / 输出 ¥90 每百万 Token;分档见下
GPT Image 2.5 Sunburst AZgpt-image-2.5-sunburst-az原生尺寸 / Token 计费标准输入 ¥15 / 输出 ¥90 每百万 Token;分档见下

Ext 使用官方 Images 请求结构,通过 size 指定超分输出尺寸,不追加分辨率后缀,也不增加专用超分字段。查看 Ext 超分完整示例 →

模型后缀与 size

实际输出尺寸由 OpenAI Images API 的 size 参数决定。知梦提供的 1K / 2K / 4K 模型后缀仅用于计费档位和路由区分,不会自动修改 size。开发者应根据实际需求选择对应 size。

3. 官方 Images API 路径 ​

文生图 ​

http
POST /v1/images/generations

图片编辑 / 参考图 ​

http
POST /v1/images/edits

知梦 ChatGPT 生图不另外创造私有生图路径。

4. 30 秒文生图 ​

cURL ​

bash
curl 'https://api.zmoapi.cn/v1/images/generations' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  --data-raw '{
    "model": "gpt-image-2",
    "prompt": "一只橘猫坐在窗边,午后阳光穿过百叶窗,写实摄影",
    "size": "1024x1024",
    "quality": "medium",
    "output_format": "png",
    "background": "auto",
    "n": 1
  }'

OpenAI GPT Image 系列的 Image API 返回图片数据时,客户端按 response_format 读取:

text
省略 / b64_json → data[0].b64_json
url             → data[0].url

b64_json 为 Base64 图片数据;url 为可直接下载的图片地址,考虑到网速问题,优选返回 url。

命令行直接保存 PNG:

bash
curl -s 'https://api.zmoapi.cn/v1/images/generations' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  --data-raw '{
    "model": "gpt-image-2",
    "prompt": "一只橘猫坐在窗边,午后阳光穿过百叶窗,写实摄影",
    "size": "1024x1024",
    "quality": "medium",
    "output_format": "png",
    "background": "auto",
    "n": 1
  }' \
  | jq -r '.data[0].b64_json' \
  | base64 --decode > image.png

5. JavaScript(OpenAI SDK) ​

js
import fs from "node:fs";
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.ZHM_API_KEY,
  baseURL: "https://api.zmoapi.cn/v1",
});

const result = await client.images.generate({
  model: "gpt-image-2",
  prompt: "一只橘猫坐在窗边,午后阳光穿过百叶窗,写实摄影",
  size: "1024x1024",
  quality: "medium",
  output_format: "png",
  background: "auto",
  n: 1,
});

const imageBase64 = result.data[0].b64_json;
fs.writeFileSync("image.png", Buffer.from(imageBase64, "base64"));

6. Python(OpenAI SDK) ​

python
import base64
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.zmoapi.cn/v1",
)

result = client.images.generate(
    model="gpt-image-2",
    prompt="一只橘猫坐在窗边,午后阳光穿过百叶窗,写实摄影",
    size="1024x1024",
    quality="medium",
    output_format="png",
    background="auto",
    n=1,
)

image_bytes = base64.b64decode(result.data[0].b64_json)
with open("image.png", "wb") as f:
    f.write(image_bytes)

7. 常用生成参数 ​

以下字段按 OpenAI Images API 的调用习惯组织。具体模型是否支持某个取值,以该模型当前线上能力为准,不要把其他图片模型的专属参数强行套到 GPT Image。

字段类型说明
modelstring必填,使用知梦提供的模型 ID
promptstring必填,描述要生成的图片
ninteger生成数量;通常建议先使用 1
sizestring实际输出尺寸,例如 1024x1024。知梦 1K / 2K / 4K 模型后缀只用于计费和路由,不会自动修改 size
qualitystring图像质量档位;GPT Image 2 常用 low / medium / high,也可让模型使用默认行为
response_formatstringurl / b64_json,适用于按张计费的 1K 模型(gpt-image-2、gpt-image-2.5-flare、gpt-image-2.5-sunburst)。url 返回图片地址,b64_json 返回不带 Data URI 前缀的 Base64;考虑到网速问题,优选返回 url
output_formatstringpng / jpeg / webp
output_compressionintegerJPEG / WebP 压缩质量;PNG 不需要该字段
backgroundstringauto / opaque / transparent;透明背景必须搭配 PNG 或 WebP
userstring可选,调用方业务用户标识

模型档位与 size

知梦用不同模型 ID 区分当前售卖档位,例如 4K 计费应使用 gpt-image-2-4k 或 gpt-image-2.5-sunburst-4k。实际输出尺寸仍由 size 决定,切换模型后缀不会自动修改 size。

8. 输出格式与背景 ​

PNG ​

json
{
  "output_format": "png"
}

JPEG ​

json
{
  "output_format": "jpeg",
  "output_compression": 90
}

WebP ​

json
{
  "output_format": "webp",
  "output_compression": 90
}

背景模式 ​

OpenAI 当前 Images API 的 background 支持三种策略:

值说明
auto自动,由模型根据提示词选择背景策略
opaque强制不透明背景
transparent输出透明背景

透明背景使用:

json
{
  "background": "transparent",
  "output_format": "png"
}

也可以将 output_format 设为 webp。透明背景不要使用 JPEG,因为 JPEG 不支持 Alpha 透明通道。

做商品抠图 / 透明素材

如果目标就是得到透明底素材,建议同时在提示词里明确“主体完整、背景透明、不要阴影底板”等要求,并显式传 background: "transparent"。不要只依赖提示词描述“透明背景”。

按张计费的 1K 模型(gpt-image-2、gpt-image-2.5-flare、gpt-image-2.5-sunburst)支持用 response_format 选择 url 或 b64_json 返回,读取时对应 data[].url 与 data[].b64_json。Ext 超分与 AZ 官 Key 渠道不支持该字段,仍按 Base64 处理,不要照搬 Gemini / Banana 的 candidates[] / inlineData 结构。

9. 图片编辑 / 参考图 ​

图片编辑使用:

http
POST /v1/images/edits

公网 URL 参考图(JSON) ​

AZ 渠道例外: gpt-image-2.5-flare-az 与 gpt-image-2.5-sunburst-az 的编辑只接受 multipart image[] 文件上传,URL 须先下载。以下 JSON 示例不适用于 AZ,请使用 AZ 图片编辑示例。

OpenAI 当前 Images Edit 官方协议支持直接在 JSON 请求中提交公网 URL。字段不是 Banana 的字符串数组,也不是 xAI 的 { "type": "image_url", "url": "..." },而是:

json
"images": [
  { "image_url": "https://example.com/reference.png" }
]

完整示例:

bash
curl 'https://api.zmoapi.cn/v1/images/edits' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  --data-raw '{
    "model": "gpt-image-2",
    "prompt": "保留主体外观与构图,将背景改成现代展厅",
    "images": [
      { "image_url": "https://example.com/reference.png" }
    ],
    "size": "1024x1024",
    "quality": "medium",
    "output_format": "png",
    "background": "auto"
  }'

多张 URL 参考图继续向 images 数组添加对象,最多 16 张:

json
{
  "images": [
    { "image_url": "https://example.com/person.png" },
    { "image_url": "https://example.com/clothing.png" },
    { "image_url": "https://example.com/background.jpg" }
  ]
}

image_url 必须是完整公网 URL;官方也允许填写完整的 Base64 Data URL(例如 data:image/png;base64,...)。URL 应直接返回图片文件,不能依赖登录 Cookie,也不要填写网页分享地址。详见 OpenAI Create image edit 官方接口。

本地文件参考图(multipart) ​

bash
curl 'https://api.zmoapi.cn/v1/images/edits' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -F 'model=gpt-image-2' \
  -F 'prompt=保留主体外观与构图,将背景改成现代展厅' \
  -F 'image[]=@./reference.png' \
  -F 'size=1024x1024' \
  -F 'quality=medium' \
  -F 'output_format=png'

结果同样从:

text
data[0].b64_json

读取。

10. 多张本地参考图 ​

OpenAI 图片编辑接口可以通过重复的 image[] 字段传入多张图片:

bash
curl 'https://api.zmoapi.cn/v1/images/edits' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -F 'model=gpt-image-2' \
  -F 'prompt=第一张作为人物参考,第二张作为服装参考,第三张作为背景参考,生成一张统一风格海报' \
  -F 'image[]=@./person.png' \
  -F 'image[]=@./clothing.png' \
  -F 'image[]=@./background.jpg' \
  -F 'size=1024x1024' \
  -F 'quality=medium' \
  -F 'output_format=png'

参考图顺序会影响模型理解,建议在提示词中明确写清“第一张 / 第二张 / 第三张”的用途。

11. Mask 局部编辑 ​

需要局部编辑时,可在编辑接口提交 mask:

bash
curl 'https://api.zmoapi.cn/v1/images/edits' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -F 'model=gpt-image-2' \
  -F 'image[]=@./source.png' \
  -F 'mask=@./mask.png' \
  -F 'prompt=只修改需要重绘的区域,加入一盏暖色台灯' \
  -F 'output_format=png'

Mask 的尺寸应与被编辑的目标图片对应。客户端不要自行假设任何“黑色必改 / 白色必改”的语义,按 OpenAI 当前 Images Edit 规范准备带透明信息的遮罩文件。

12. 参考图保真度 ​

对于 GPT Image 2,不要为了兼容其他图片模型而自行拼接无依据的私有字段。按照 OpenAI 当前 GPT Image 2 的 Images API 行为提交图片输入即可。

如果你的代码原先为其他 GPT Image 模型使用过 input_fidelity,不要未经验证就将其写死到 gpt-image-2 请求中。

13. 错误处理 ​

常见状态:

HTTP典型原因建议
400JSON、尺寸、质量、编辑图片或其他参数不合法查看返回 error.message
401API Key 缺失或错误检查 Authorization: Bearer ...
403当前 Key 无模型权限检查模型与令牌权限
404路径或模型 ID 错误检查 Base URL 与模型名
429额度、并发或限流降低并发并稍后再试
500 / 502 / 503服务或上游暂时异常保存错误体和请求信息后再处理

创建请求不要无条件自动重试

网络超时或连接断开不能证明上游没有收到生图请求。为了避免重复生成和重复计费,不要对 POST /v1/images/generations 或 /v1/images/edits 做无条件立即重试。

14. GPT Image 2 与 GPT Image 2.5 ​

GPT Image 2 ​

text
gpt-image-2       1K   ¥0.025 / 张
gpt-image-2-2k    2K   ¥0.1 / 张
gpt-image-2-4k    4K   ¥0.1 / 张

GPT Image 2.5 ​

目前两个系列:

text
GPT Image 2.5 Flare
GPT Image 2.5 Sunburst
text
gpt-image-2.5-flare           1K   ¥0.025 / 张
gpt-image-2.5-flare-2k        2K   ¥0.25 / 张
gpt-image-2.5-flare-4k        4K   ¥0.25 / 张
gpt-image-2.5-sunburst        1K   ¥0.025 / 张
gpt-image-2.5-sunburst-2k     2K   ¥0.25 / 张
gpt-image-2.5-sunburst-4k     4K   ¥0.25 / 张

15. 相关页面 ​

GPT Image 2.5 AZ:官 Key / Token 计费 ​

gpt-image-2.5-flare-az 与 gpt-image-2.5-sunburst-az 使用 Images 接口,文生图为 JSON,参考图编辑为 multipart image[] 文件上传,按实际 Token 计费。以下为人民币 CNY / 百万 Token,两款相同;不与上面的按张价格混用。

quality输入 / 百万 Token输出 / 百万 Token
省略 / auto / low / medium / high¥15¥90
xhigh¥18.75¥112.5
max¥22.5¥135

基础费用 = 输入 Token / 1000000 × 输入单价 + 输出 Token / 1000000 × 输出单价。实际账单还受账户适用倍率等配置影响;auto 按标准档收费,不根据最终返回 quality 改档。使用同一模型 ID 和官方 size,不追加分辨率后缀。

查看 AZ 全部参数、计费示例、图片编辑与 SSE → · Flare AZ 调试 · Sunburst AZ 调试

知梦 API · 图像、视频与音乐生成接口文档