重要:优先使用异步生成接口
图片 Edit 接口不推荐调用。GPT Image 2 的 1K、2K、4K 档位均支持同步和异步生成,耗时较长时优先使用异步接口。
新接入统一推荐POST /v1/images/generations/jobs。POST /v1/images/edits不推荐调用。参考图改图也请使用异步生成接口的 JSONimage数组。
图片生成优先使用异步任务:gpt-image-2、gpt-image-2-2K和gpt-image-2-4K都可以调用/v1/images/generations;同步请求会在服务内部等待异步任务完成。批量并发或客户端超时较短时,请使用/v1/images/generations/jobs。
image 数组。
multipart 图片 Edit 接口仅用于兼容旧客户端,不推荐新接入:
Gemini 图像模型不走这里的图片接口。它们使用聊天接口返回图片,宽高比放在 extra_body.google.image_config.aspect_ratio;不同模型对 16:9 的支持不完全一致。见 Gemini 图像生成。
文生图
参考图创作
如果使用远程图片 URL,优先把 OSS 或 CDN 图片 URL 放到异步任务 JSON 的image 数组里。多张网络 URL 做参考图创作、换装、合成或改图时,推荐使用 /v1/images/generations/jobs 创建任务并轮询结果。
1024,并确保 URL 在请求期间不会过期。
结果读取
图片接口可能返回:- 图片 URL。
b64_json。- 异步任务 ID。
推荐轮询流程
图片生成、参考图创作和改图任务首推“创建任务 + 轮询结果”。不要让页面、移动端或 Serverless 函数一直等待同步图片请求返回。- 调用
POST /v1/images/generations/jobs创建任务。 - 保存返回的
id、创建时间、请求参数摘要和当前状态。 - 每隔
2-3秒调用GET /v1/images/generations/jobs/{job_id}查询一次。 - 查询到
queued或running时继续等待,并在页面展示处理中状态。 - 查询到
succeeded时读取data数组,展示图片,并把需要长期访问的图片保存到对象存储。 - 查询到
failed时读取error.message,把任务标记为失败,并允许用户修改 prompt 或参考图后重新提交。
3-5 分钟。超过后不要丢弃任务 ID,可以把页面状态显示为“仍在处理中”,稍后继续用同一个任务 ID 查询。用户刷新页面或稍后回来时,也应从你保存的任务 ID 恢复进度。
succeeded、failed。如果网络请求临时失败,可以等待下一轮继续查询;不要立刻重复创建新任务,避免同一张图被重复生成。
选错接口时的表现
如果把 Gemini 图像模型提交到/v1/images/generations,请求可能返回“不支持图片生成接口”的错误。这个错误通常不是宽高比参数失效,而是接口选错了。
这类模型请改用: