流式输出
流式输出适合聊天、长文本生成、代码生成等需要边生成边展示的场景。启用后,服务端会通过 SSE 返回多个 data: 片段。
启用方式
{
"model": "gpt-4o",
"messages": [
{"role": "user", "content": "写一段产品介绍"}
],
"stream": true
}
响应格式
data: {"id":"chatcmpl_xxx","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"你"},"finish_reason":null}]}
data: {"id":"chatcmpl_xxx","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"好"},"finish_reason":null}]}
data: [DONE]
客户端需要逐行读取 data:,遇到 [DONE] 后结束本次流。
使用建议
- UI 层应支持增量渲染,避免等完整响应后再展示。
- 网络断开时不要盲目重放工具调用请求,先确认业务幂等性。
- 如需统计用量,可查看具体接口是否支持
stream_options.include_usage。 - 生产环境建议设置客户端超时和用户主动停止机制。
下一步
- OpenAI 聊天补全 - 查看流式响应字段
- Google 聊天补全 - 查看 Gemini 流式示例