算汇开发者文档
流式输出
使用 SSE 接收 chat completions 增量结果,并正确处理结束、超时和中断。
本页内容
流式输出通过 Server-Sent Events(SSE)逐步返回内容,可以更早展示首段回复,适合聊天与长文本生成。
开启流式输出
在 /v1/chat/completions 请求体中加入:
{
"stream": true
}curl
bash
curl -N https://本站域名/v1/chat/completions \
-H "Authorization: Bearer sk-您的密钥" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-chat",
"stream": true,
"messages": [{"role": "user", "content": "写一首四行短诗"}]
}'curl -N 会关闭输出缓冲,便于观察每个增量事件。
客户端处理
每个事件通常以 data: 开头。解析 JSON 后,将 choices[0].delta.content 依次追加到界面;收到结束标记后关闭本次读取。
生产环境注意事项
- 分别设置连接超时和完整响应超时,长文本不能只使用很短的统一超时;
- 用户主动停止时取消上游请求,避免后台继续生成;
- 流已经输出部分内容后发生中断,不要无条件重试并拼接,否则可能产生重复文本;
- 代理层要允许流式传输,避免把整个响应缓冲完再返回。