跳到文档正文

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"}}

DoroDoro AI · API 文档http://localhost