前置准备#
gpt-image-2 模型属于 GPT Image2 分组,使用前需要创建令牌分组为 Image2 的令牌。1.在 Codex 中使用#
2.接口调用方式#
OpenAI 官方文档把图片相关能力分成 Responses API、Images API、Chat Completions API 三类。对 NioFlow 的 gpt-image-2 来说,出图请优先使用 Images API。| API | OpenAI 官方用途 | NioFlow gpt-image-2 使用建议 | 建议 |
|---|
| Responses API | 分析图片,并把图片作为输入;也可以通过工具生成图片输出 | 不支持作为 gpt-image-2 的出图入口。需要出图请使用 Images API。 | 不支持 |
| Images API | 生成图片,也可以上传图片作为输入进行编辑 | 支持文生图和图片编辑,是 gpt-image-2 的推荐调用方式。 | 推荐 |
| Chat Completions API | 分析图片输入,并生成文本或音频 | 不支持作为 gpt-image-2 的出图入口;size、quality、output_format 等 Images 参数不会按图片接口生效。 | 不支持 |
方式一:Images API(推荐)#
Images API 是 gpt-image-2 的推荐出图方式,分为文生图和图片编辑两个接口:文生图:POST https://api.nioflow.com/v1/images/generations
图片编辑 / 图生图:POST https://api.nioflow.com/v1/images/edits
每个接口下面都按“接口实例 → 参数介绍”的格式说明。对新手来说,只要先照着示例传 model、prompt,并把 n 设为 1;需要上传图片时再使用 image 字段即可。文生图使用 /v1/images/generations,上传参考图进行图片编辑使用 /v1/images/edits。
文生图:/v1/images/generations#
| 参数 | 类型 | 支持情况 | 说明 |
|---|
model | string | 支持 | 固定填写 gpt-image-2。 |
prompt | string | 支持 | 图片描述提示词,建议写清楚主体、场景、风格、比例和文字内容。 |
n | integer | 仅支持 1 | 只支持一次返回 1 张图。n: 2、n: 4 这类多图数量不支持。 |
size | string | 支持 | 支持 auto 和符合限制的尺寸,如 1024x1024、1536x1024、1024x1536、1536x864、3840x2160。 |
quality | string | 支持 | 可选 low、medium、high、auto。草稿图可以用 low,正式出图可以用 high。 |
response_format | string | 支持 | 可选 url、b64_json。默认建议用 url;b64_json 适合程序自行保存图片。 |
output_format | string | 部分支持 | 推荐 png 或 jpeg。webp 不建议使用。 |
output_compression | integer | 支持 | 只建议在 output_format 为 jpeg 时使用,取值 0 到 100。 |
background | string | 部分支持 | 建议使用默认值或 opaque。transparent 不支持。 |
moderation | string | 支持 | 可选 auto、low。这是安全审核参数,不会直接改变画面风格;不确定时保持默认即可。 |
user | string | 支持 | 可选,用于标记你自己的终端用户或业务来源,普通调用可以不传。 |
stream | boolean | 不支持 | 请不要开启。 |
partial_images | integer | 不支持 | 依赖 stream 的中间图返回能力,不支持。 |
style | string | 不建议使用 | 这是旧模型常见参数,gpt-image-2 不需要传。 |
图片编辑 / 图生图:/v1/images/edits#
/v1/images/edits 使用 multipart/form-data 上传图片。image 是二进制图片文件,prompt 写清楚希望怎么修改图片。
接口实例| 参数 | 类型 | 支持情况 | 说明 |
|---|
model | string | 支持 | 固定填写 gpt-image-2。 |
prompt | string | 支持 | 写清楚要保留什么、修改什么、最终希望得到什么。 |
image | file | 支持 | 必填,上传要编辑的图片二进制文件。建议一次只上传 1 张图片。 |
mask | file | 支持 | 可选,局部修改时可传 PNG mask;不传则按整图编辑理解。 |
n | integer | 仅支持 1 | 只支持一次返回 1 张图。多张结果 不支持。 |
size | string | 支持 | 同文生图,支持 auto 和符合限制的尺寸。 |
quality | string | 支持 | 可选 low、medium、high、auto。 |
response_format | string | 支持 | 可选 url、b64_json。默认建议用 url。 |
output_format | string | 部分支持 | 推荐 png 或 jpeg。webp 不建议使用。 |
output_compression | integer | 支持 | 只建议在 output_format 为 jpeg 时使用,取值 0 到 100。 |
background | string | 部分支持 | 建议使用默认值或 opaque。transparent 不支持。 |
moderation | string | 支持 | 可选 auto、low。这是安全审核参数,不会直接改变画面风格。 |
input_fidelity | string | 支持 | 图片编辑时可传 high,用于尽量保留原图主体和细节。 |
user | string | 支持 | 可选,普通调用可以不传。 |
stream | boolean | 不支持 | 请不要开启。 |
partial_images | integer | 不支持 | 依赖 stream 的中间图返回能力,不支持。 |
如果需要局部修改,可以额外传 mask。mask 建议使用 PNG 图片,透明区域表示允许模型重点修改的位置;不传 mask 时,模型会根据提示词对整张图进行编辑。通用说明#
常用尺寸(Popular sizes)
1024 × 1024:正方形
尺寸限制(Size constraints)
最大边长必须 小于或等于 3840 像素
总像素数必须 不少于 655,360,且 不超过 8,294,400
质量选项(Quality options)
low:低质量
最简单文生图:只传 model、prompt,并把 n 设为 1。
想要更高清晰度:可以加 quality: "high"。
想控制尺寸:加 size,比如 1024x1024 或 1536x1024。
想拿图片链接:使用默认 response_format: "url"。
想让程序自己保存图片:使用 response_format: "b64_json"。
不要把 n 设置成大于 1,多张图片需要自己循环请求。
{
"created": 1776923999,
"data": [
{
"url": "https://external-resources.nioflow.com/file_download/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"revised_prompt": "..."
}
]
}
返回的 url 即为生成的图片地址,直接访问即可下载。revised_prompt 是模型实际使用前改写过的提示词,看到它是正常现象,不是报错。如果请求里传了 "response_format": "b64_json",返回内容会变成 Base64 图片数据:{
"created": 1776923999,
"data": [
{
"b64_json": "iVBORw0KGgoAAAANSUhEUgAA...",
"revised_prompt": "..."
}
]
}
这时响应里通常没有 url,需要客户端自己把 b64_json 解码成图片文件。url 和 b64_json 两种返回方式都会包含 revised_prompt。普通用户更推荐使用默认的 url,最容易保存和分享。方式二:Responses API(不支持)#
NioFlow 的 gpt-image-2 不支持通过 /v1/responses 出图。请不要使用 image_generation 工具、input 或 input_image 来调用 gpt-image-2 生成图片。需要文生图请使用 /v1/images/generations;需要上传图片编辑请使用 /v1/images/edits。
方式三:Chat Completions API(不支持)#
NioFlow 的 gpt-image-2 不支持通过 /v1/chat/completions 出图。请不要把 messages、image_url、size、quality、output_format 等参数放到 Chat Completions 里调用图片生成。如果使用 Cherry Studio,请切换到“绘画”应用,并确保端点类型是 图像生成(OpenAI)。
如果你的客户端只支持 Chat Completions,并且必须接入图片能力,建议优先改为支持 OpenAI Images API。不要把 /v1/chat/completions 当成 /v1/images/generations 的替代品。
特别注意:长连接与代理设置#
无论是直接通过 API 调用,还是在 Codex 等客户端程序中使用 gpt-image-2,图片生成请求通常都比普通聊天请求耗时 更久,尤其是使用编辑模式、高清质量或高分辨率尺寸时。如果本机代理、网络工具或中间网关对长连接有限制,可能会在 60 秒左右主动断开连接,表现为 API 请求超时、没有返回内容,或客户端提示 Failed to fetch。下面以 Cherry Studio 的编辑模式为例,长连接中断时程序侧通常会直接弹出 Failed to fetch;在开发者工具中,也可以看到 edits 请求停在 1 分钟左右。直接调用 API 时虽然界面提示不同,但问题本质相同,都是连接在图片生成完成前被中途断开。如果确认是代理导致连接被中断,建议将本站域名 api.nioflow.com 加入代理工具的直连或白名单规则,让访问 NioFlow 时不再经过代理。不同代理软件的设置入口可能不同,核心是添加类似 domain:api.nioflow.com 的域名规则。放行后,同类请求可以等待更久并正常返回。下图中请求在约 1.6 分钟后返回图片;如果使用更高分辨率或更高质量选项,生成时间还可能继续增加。为了减少不可控的网络中断,建议绘图请求尽量直连 api.nioflow.com,不要经过会限制长连接的代理或中转网络。