API 参考进阶用户更新于
POST/v1/chat/completions
Chat Completions 对话接口
用 OpenAI Chat 格式发送一组消息。先查看模型和接入点是否支持 Chat 协议,再按下方格式发起请求。
接入准备
按快速开始获取 API Key,并选择支持直接 HTTP 调用的接入点。示例从 ICODEEASY_API_KEY 读取 Bearer Token。将 YOUR_MODEL_ID 换成所选接入点支持的模型 ID。
请求示例
model 指定模型,messages 按顺序传入消息;stream: false 请求 JSON 响应。
bash
curl -sS https://api.icodeeasy.cc/v1/chat/completions \
-H "Authorization: Bearer $ICODEEASY_API_KEY" \
-H 'Content-Type: application/json' \
--data '{
"model": "YOUR_MODEL_ID",
"messages": [
{
"role": "user",
"content": "Say hello."
}
],
"stream": false
}'
读取响应
从 choices[].message.content 读取文本。usage 可包含 prompt_tokens、completion_tokens 和 total_tokens。usage.prompt_tokens_details.cached_tokens 表示命中的输入缓存量。
json
{
"choices": [
{
"message": {
"role": "assistant",
"content": "Hello!"
},
"finish_reason": "stop"
}
]
}
流式响应示例
请求体设置 stream: true 开启 SSE。在 SSE 中按 choices[].index 拼接 delta.content。收到 finish_reason 时记录该选项的结束原因,并继续读取流末尾的用量帧或 [DONE]。如果返回 error,或连接在任何结束标记前断开,应把结果标记为失败或不完整。
text
data: {"choices":[{"index":0,"delta":{"content":"Hello!"},"finish_reason":null}]}
data: {"choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: {"choices":[],"usage":{"prompt_tokens":10,"completion_tokens":4,"total_tokens":14}}
data: [DONE]
接入点支持流式用量时,可设置 stream_options.include_usage: true。单独的 usage 帧可能带空的 choices。