Skip to main content
OpenAI Images Generations API 目前支持多种图像生成模型,包括经典的 dall-e-3、文字渲染能力更强的 gpt-image-1、最新一代的 gpt-image-2,以及通过同一接口接入的 nano-banana / nano-banana-2-lite / nano-banana-2 / nano-banana-pro 系列模型。它们都能根据文本描述生成高质量的图像。 本文档主要介绍 OpenAI Images Generations API 操作的使用流程,利用它我们可以轻松使用 OpenAI 系列的图像生成功能。

申请流程

要使用 OpenAI Images Generations API,首先到 Ace Data Cloud 控制台 获取您的 API Token,留作备用。 如果你尚未登录或注册,会自动跳转到登录页面邀请你注册和登录,完成后会自动返回当前页面。 一个 API Token 即可调用平台所有服务,无需为每个服务单独申请。 首次申请会赠送免费额度,可免费体验;额度不足时可在 控制台 充值通用余额。
📘 完整文档:OpenAI Images Generations API →

GPT-Image-2 模型

gpt-image-2 是 OpenAI 推出的新一代图像生成模型,相比 dall-e-3gpt-image-1,在以下方面有明显提升:
  • 指令遵循能力更强:能够准确理解复杂构图、计数、位置关系等结构化指令。
  • 文字渲染更清晰:海报、菜单、信息图、标志等场景下的英文与数字几乎不会出现错乱。
  • 风格表现更丰富:原生支持电影感人像、复古海报、儿童插画、产品摄影、信息图等多种风格。
  • 原生多比例 + 高分辨率支持:覆盖 5 种比例(1:1、4:3、3:4、16:9、9:16)共 3 档分辨率(1K / 2K / 4K)。
调用方式与其它模型完全一致,只需将 model 字段设置为 gpt-image-2 即可。返回结果中的 url 是一个永久托管在 platform.cdn.acedata.cloud 上的图片链接,可以直接在浏览器中打开或嵌入到网页中。

线路变体(:official / :reverse

gpt-image-2 默认走标准线路。通过模型名后缀可以显式选择线路:
  • gpt-image-2:official:官方通道,稳定合规。支持真实 2K / 4K 分辨率,按每张图片计费,单价为默认 gpt-image-2 的 2 倍。线路不可用时直接返回错误,不会自动降级。
  • gpt-image-2:reverse:与默认 gpt-image-2 完全等价,性价比更高,价格不变。

支持的 size 取值

gpt-image-2 只检查 size 的格式,只要不是 auto 或空串,就需要匹配 WIDTHxHEIGHT(例如 1024x10242048x1152800x600);任何其他形态会返回 400。所有尺寸(1K / 2K / 4K / 自定义)按单张统一扣费,不按尺寸加价。 尺寸限制:自定义尺寸须满足宽高均为 16 的倍数、长边 ≤ 3840、总像素数 ≤ 8,294,400,超出范围会以 4xx 返回。
显式传 size: "auto" 时,平台会在连续比例空间中规划画布,并按以下优先级判断:提示词中的明确像素或比例、命名标准(纸张 / 印刷品 / 平台版位 / 广告 / 设备 / 摄影 / 电影)、介质惯例、最后才是构图推断。因此除了常见的 1:14:59:1621:9,也能保留 1.91:11.85:12.39:1、ISO 纸张 1:√2 等非预设比例;最终尺寸会自动调整为服务支持的 16 倍数和像素预算。自动判断不可用时会回退到模型默认画幅,不会阻断生成。省略 size 字段则直接使用模型默认画幅;对像素有严格要求时仍建议直接传 WIDTHxHEIGHT 1K 档下输出不保证严格像素对齐——你传 1024x1024 可能拿到 1254x1254,比例保持一致。如果你重新把它当作 size 传进来,计费不变。 4K 单次调用通常需要 4–8 分钟,建议配合后文的 callback_url 异步回调使用。
关于 n 参数 gpt-image-2 支持 n > 1(取值 1–10):一次请求即可返回并按张计费对应数量的图片。为了让多张结果有差异,建议同时传不同的 promptseed。同样适用于 gpt-image-1 / gpt-image-1.5,以及 nano-banana / nano-banana-2-lite / nano-banana-2 / nano-banana-pro 系列;dall-e-3 仅支持 n = 1。注意 response_format=b64_json 仅支持 n=1n>1 时请使用默认的 URL 返回。若其中部分图片生成失败,只会返回并计费成功的部分。
下面通过几个不同方位的真实示例来直观感受 gpt-image-2 的能力。

场景一:电影感人像

提示词中可以使用电影术语(35mm 胶片、浅景深、霓虹光等)来精准控制氛围与质感。 Python 样例调用代码:
返回结果如下:
生成的图片如下所示:

场景二:复古旅行海报(带文字渲染)

gpt-image-2 在排版与字体渲染方面表现稳定,非常适合用来生成海报、菜单、贺卡等带文字的设计稿。
返回结果中的 url 字段对应的图片如下:

可以看到模型不仅准确还原了 Art Deco 海报的视觉风格,标题文字 AMALFIITALIA 1958 都被清晰、正确地渲染出来。

场景三:复杂构图与计数

下面这个提示词用来测试模型对“数量”和“位置”等结构化指令的遵循能力。
生成的图片如下:

可以看到三层书架上的书本数量(1 / 3 / 7)与提示词完全一致,这是 dall-e-3 时代很难稳定做到的。

场景四:插画风格(横屏)

通过指定艺术媒介与情绪关键词,可以引导模型产出风格化的插画。
生成的横屏插画如下:

异步与回调

gpt-image-2 单次调用通常需要 60~90 秒,如果不希望保持长连接,可以使用本文后续介绍的 callback_url 异步回调机制,调用流程与其它模型完全一致。

Nano Banana 系列模型

nano-banana 系列是基于 Gemini 的图像生成模型,已通过同一个 /openai/images/generations 接口接入,无需切换 endpoint,只要把 model 改为下表中的任意一个即可。
重要:参数支持范围 Nano Banana 通过适配层接入 OpenAI 协议,与 gpt-image-* 相比仅支持以下参数:modelpromptsizen
  • size 会按下表映射为内部 aspect_ratio,未列出的尺寸会退化为 1:1
    • 1024x1024 / 512x512 / 256x2561:1
    • 1792x102416:9
    • 1024x17929:16
  • 不支持 qualitystyleresponse_formatbackgroundoutput_format 等参数;填了也会被忽略。n > 1 则受支持(1–10),会返回并按张计费对应数量的图片。
  • 返回结构遵循 OpenAI 格式(data[].url),但 created 固定为 0,且不会返回 b64_jsonrevised_prompt 始终等于原始 prompt

基本调用

返回结果如下:
生成的图片可以直接通过返回的 url 字段访问:

升级到旗舰模型 nano-banana-pro

只需把 model 改为 nano-banana-pro,其余参数完全一致:
返回示例:

异步回调

callback_url 异步回调机制对 nano-banana 同样有效,调用流程与其它模型完全一致,详见下文 异步回调 一节。

基本使用

接下来就可以在界面上填写对应的内容,如图所示:

在第一次使用该接口时,我们至少需要填写三个内容,一个是 authorization,直接在下拉列表里面选择即可。另一个参数是 modelmodel 就是我们选择使用 OpenAI DALL-E 官网模型类别,这里我们主要有 1 种模型,详情可以看我们提供的模型。最后一个参数是promptprompt 是我们输入要生成图像的提示词。 同时您可以注意到右侧有对应的调用代码生成,您可以复制代码直接运行,也可以直接点击「Try」按钮进行测试。

Python 样例调用代码:
调用之后,我们发现返回结果如下:
返回结果一共有多个字段,介绍如下:
  • created ,生成此次图像生成的 ID,用于唯一标识此次任务。
  • data,包含图像生成的结果信息。
其中 data 是包含了模型生成图片的具体信息,它里面的 url 是生成图片的详情链接,可以发现如图所示。

图片质量参数 quality

接下来将介绍如何设置图像生成结果的一些详细参数,其中图片质量参数 quality 包含俩种,第一个 standard 表示生成标准的图片,另一个 hd 表示创建的图像具有更精细的细节和更大的一致性。 下面设置图片质量参数为 standard ,具体设置如下图:

同时您可以注意到右侧有对应的调用代码生成,您可以复制代码直接运行,也可以直接点击「Try」按钮进行测试。

Python 样例调用代码:
调用之后,我们发现返回结果如下:
返回的结果与基本使用的内容一致,可以看到图片质量参数为 standard 的生成图片如下图所示:

与上述相同操作,仅需将图片质量参数设置为 hd ,可以得到如下图所示的图片:

可以看到 hdstandard 生成的图片具有更精细的细节和更大的一致性。

图片大小尺寸参数 size

我们还可以设置生成图片的尺寸大小,我们可以进行下面的设置。 下面设置图片的尺寸大小为 1024 * 1024 ,具体设置如下图:

同时您可以注意到右侧有对应的调用代码生成,您可以复制代码直接运行,也可以直接点击「Try」按钮进行测试。

Python 样例调用代码:
调用之后,我们发现返回结果如下:
返回的结果与基本使用的内容一致,可以看到图片的尺寸大小为 1024 * 1024 的生成图片如下图所示:

与上述相同操作,仅需将图片的尺寸大小为 1792 * 1024 ,可以得到如下图所示的图片: 可以看到图片的尺寸大小很明显不一样,另外还可以设置更多尺寸大小,详情信息参考我们官网文档。

图片风格参数 style

图片风格参数 style 包含俩个参数,第一种 vivid 表示生成的图片是更加生动的,另一种 natural 表示生成的图片更加的自然一点。 下面设置图片风格参数为 vivid ,具体设置如下图:

同时您可以注意到右侧有对应的调用代码生成,您可以复制代码直接运行,也可以直接点击「Try」按钮进行测试。

Python 样例调用代码:
调用之后,我们发现返回结果如下:
返回的结果与基本使用的内容一致,可以看到图片风格参数为 vivid 的生成图片如下图所示:

与上述相同操作,仅需将图片风格参数为 natural ,可以得到如下图所示的图片:

可以看到 vividnatural 生成的图片具有更加生动逼真。

图片链接的格式参数 response_format

最后一个图片链接的格式参数 response_format 也有俩种,第一种 b64_json 是对图片链接进行 Base64 编码,另一种 url 就是普通的图片链接,可以直接查看图片。 下面设置图片链接的格式参数为 url ,具体设置如下图:

同时您可以注意到右侧有对应的调用代码生成,您可以复制代码直接运行,也可以直接点击「Try」按钮进行测试。

Python 样例调用代码:
调用之后,我们发现返回结果如下:
返回的结果与基本使用的内容一致,可以看到图片链接的格式参数为 url 的生成图片的链接为 图片 URL 这是可以直接访问的,图片内容如下图所示:

与上述相同操作,仅需将图片链接的格式参数为 b64_json ,可以得到结果 Base64 编码后的图片链接,具体结果如下图所示:

异步回调

由于 OpenAI Images Generations API 生成图片的时间可能相对较长,如果 API 长时间无响应,HTTP 请求会一直保持连接,导致额外的系统资源消耗,所以本 API 也提供了异步回调的支持。 整体流程是:客户端发起请求的时候,额外指定一个 callback_url 字段,客户端发起 API 请求之后,API 会立马返回一个结果,包含一个 task_id 的字段信息,代表当前的任务 ID。当任务完成之后,生成图片的结果会通过 POST JSON 的形式发送到客户端指定的 callback_url,其中也包括了 task_id 字段,这样任务结果就可以通过 ID 关联起来了。 下面我们通过示例来了解下具体怎样操作。 首先,Webhook 回调是一个可以接收 HTTP 请求的服务,开发者应该替换为自己搭建的 HTTP 服务器的 URL。此处为了方便演示,使用一个公开的 Webhook 样例网站 https://webhook.site/,打开该网站即可得到一个 Webhook URL,如图所示: 将此 URL 复制下来,就可以作为 Webhook 来使用,此处的样例为 https://webhook.site/3d32690d-6780-4187-a65c-870061e8c8ab 接下来,我们可以设置字段 callback_url 为上述 Webhook URL,同时填入相应的参数,如以下代码所示:
点击运行,可以发现会立即得到一个结果,如下:
稍等片刻,我们可以在 Webhook URL 上观察到生成图片的结果,内容如下:
可以看到结果中有一个 task_id 字段,data 字段包含了和同步调用一样的图片生成结果,通过 task_id 字段即可实现任务的关联。

错误处理

在调用 API 时,如果遇到错误,API 会返回相应的错误代码和信息。例如:
  • 400 token_mismatched:Bad request, possibly due to missing or invalid parameters.
  • 400 api_not_implemented:Bad request, possibly due to missing or invalid parameters.
  • 401 invalid_token:Unauthorized, invalid or missing authorization token.
  • 429 too_many_requests:Too many requests, you have exceeded the rate limit.
  • 500 api_error:Internal server error, something went wrong on the server.

错误响应示例

结论

通过本文档,您已经了解了如何使用 OpenAI Images Generations API 轻松使用官方 OpenAI DALL-E 的图像生成功能。希望本文档能帮助您更好地对接和使用该 API。如有任何问题,请随时联系我们的技术支持团队。