API 指南
流式输出与错误
流式内容逐段到达;判断成功必须等待协议的最终结果。
启用 SSE
请求中设置 stream: true,并持续按 SSE 帧读取。不要等待整个响应下载完再显示,也不要把每条 data 行当成完整 JSON 响应。
curl -N http://localhost/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"YOUR_MODEL_ID","messages":[{"role":"user","content":"Hello!"}],"stream":true}'识别终态
Responses 以 response.completed 表示正常结束,response.failed 或 error 表示失败。Anthropic Messages 以完整 message_stop 表示结束;error 事件本身是错误终态,后续断开不能把它改成成功。Chat Completions 需检查错误帧与正常结束标记。
HTTP 200 之后仍可能失败
unexpected EOF 表示流未完整结束。已发送内容无法撤回;开始输出后不能把另一条重试响应直接拼上去。本站保留已观测的真实用量计费,并在存在可关联错误时提示“关联错误(已计量)”。
响应头发送后,HTTP 状态可能已经固定为 200;客户端仍必须检查流内错误码和消息。错误码不应被当成另一条 HTTP 响应状态。
event: error
data: {"type":"error","error":{"type":"relay_stream_error","message":"stream relay failure: scanner_error: unexpected EOF"}}