流式响应与重试
设置 stream: true 后,客户端按 SSE 事件读取 data 字段;HTTP 200 只表示流已建立,不代表生成成功。
读取 SSE 前先检查 HTTP 状态和 Content-Type。即使请求设置了 stream: true,也可能在流建立前返回 HTTP 503 的 JSON 错误,错误码为 pii_mapping_saturated。此时不要按 SSE 解析或自动重试,应携带 X-Request-ID 联系管理员或平台支持;该错误不附带 Retry-After 响应头。详见错误代码。
正常完成以 data: [DONE] 终止。连接关闭但没有 [DONE] 时,应将结果标记为未完成,不能将部分文本当作完整成功响应。
流建立后不能再修改 HTTP 状态。失败时最多发送一个公共 error data 帧,随后关闭连接,不发送 [DONE]。连接断开或不可写时,可能收不到错误帧。
生产标准滚动发布的 drain window 为 180 秒。超过该窗口仍未结束的活动流可能被关闭;这不是所有请求的生成时限,也不保证长流在发布期间不中断。
客户端依据终端状态决定是否重试,并使用有界退避。错误或断流并不证明模型未执行;重试可能重复生成、重复计费或重复执行工具操作。不要直接追加两次生成的部分结果。
排障时记录响应头 X-Request-ID、时间与错误码。X-Request-ID 是客户端关联号,不保证全局唯一;请勿在排障材料中包含密钥或敏感请求正文。
text
data: {"error":{"message":"模型暂时不可用,请稍后重试","type":"server_error","code":"model_unavailable"}}
