stream: true 后,以 SSE 逐张推送结果,全部结束后推送汇总事件。
- 仅支持
response_format: "url" - 推送顺序为完成顺序,请用
image_index区分 - 响应头返回前的错误(参数错误、鉴权失败、限流、余额不足等)直接返回 HTTP 错误,与非流式相同;之后的错误以
error事件返回,error.http_code与非流式的 HTTP 状态码一致 - 等待期间每 15 秒推送一行 SSE 注释
: keepalive保活,可直接忽略;响应头最晚随第一行保活(约 15 秒)返回 - 流以
completed或error结束,两者均携带usage与request_id
事件类型
两个接口的事件结构相同,仅type 前缀不同:
每个事件由
event: 行与 data: 行组成,data 为 JSON,事件之间以空行分隔:
partial_succeeded
单张图片生成成功。每成功一张推送一次。string
必填
事件类型:
image_generation.partial_succeeded 或 image_edit.partial_succeeded。integer
事件产生时的 Unix 时间戳(秒)。
string
模型名称。
integer
必填
图片序号,从 0 开始,取值范围 [0, n-1]。
string
必填
图片链接,有效期 24 小时。
string
图片的实际尺寸,格式为
宽x高。string
图片格式:
png、jpeg 或 webp。string
实际用于生成该图片的 prompt。开启 prompt 增强时为增强后的结果,关闭时与请求中的
prompt 相同。示例
partial_failed
单张图片生成失败或未通过内容安全检查。其它图片不受影响,会继续推送。string
必填
事件类型:
image_generation.partial_failed 或 image_edit.partial_failed。integer
事件产生时的 Unix 时间戳(秒)。
string
模型名称。
integer
必填
图片序号,从 0 开始。
string
必填
错误详情。
示例
completed
所有图片处理完毕且至少一张成功时推送,是流中的最后一个事件,携带本次请求的用量与统计。string
必填
事件类型:
image_generation.completed 或 image_edit.completed。integer
事件产生时的 Unix 时间戳(秒)。
string
模型名称。
object
本次请求的 token 用量,用于计费。
string
请求追踪 ID,便于排查问题。
示例
error
本次请求的顶层错误,推送后流结束。只在一张图片都没有生成成功时推送,不计费,usage 各项均为 0:
- 提交生成后全部失败:在全部
n个partial_failed事件之后推送。所有图片都未通过内容安全检查时error.http_code为422,全部因余额不足失败时为402,否则为500 - 提交生成前请求整体失败(如输入未通过内容安全检查、参考图处理失败),且响应头已经返回:
error字段与非流式请求 HTTP 错误响应中的error相同
error 事件不含 created 和 data,每张图的失败原因见此前推送的 partial_failed 事件。
string
必填
固定为
error。object
必填
错误信息。
object
本次请求的 token 用量,结构与
completed 事件的 usage 相同,各项均为 0。string
请求追踪 ID,便于排查问题。
示例
完整示例
以n: 3、stream: true 为例,其中第 3 张(image_index 为 2)未通过内容安全检查: