Chat 对话
发送对话请求,支持流式(SSE)和非流式响应。兼容 OpenAI Chat Completions 格式。
请求
POST /v1/chat/completions
Headers
| Header | 值 |
|---|---|
| Authorization | Bearer sk-你的API密钥 |
| Content-Type | application/json |
Body 参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | ✅ | 模型名称,如 gemini-3-flash、gpt-5 |
| messages | array | ✅ | 对话消息列表 |
| stream | boolean | ❌ | 是否流式返回,默认 false |
| temperature | number | ❌ | 采样温度,0-2 |
| max_tokens | integer | ❌ | 最大生成 token 数 |
messages 格式
[
{"role": "system", "content": "你是一个有用的助手"},
{"role": "user", "content": "你好"}
]
支持多模态(图片输入):
[
{
"role": "user",
"content": [
{"type": "text", "text": "描述这张图片"},
{"type": "image_url", "image_url": {"url": "https://example.com/image.jpg"}}
]
}
]
非流式响应
{
"id": "chatcmpl-xxx",
"object": "chat.completion",
"model": "gemini-3-flash",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "你好!有什么我可以帮助你的吗?"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 10,
"completion_tokens": 15,
"total_tokens": 25
}
}
流式响应(SSE)
设置 "stream": true 后,响应以 Server-Sent Events 格式逐步返回:
data: {"id":"chatcmpl-xxx","choices":[{"delta":{"content":"你"},"index":0}]}
data: {"id":"chatcmpl-xxx","choices":[{"delta":{"content":"好"},"index":0}]}
data: {"id":"chatcmpl-xxx","choices":[{"delta":{},"finish_reason":"stop","index":0}]}
data: [DONE]
示例
curl -X POST https://pico.5884.cn/v1/chat/completions \
-H "Authorization: Bearer sk-你的API密钥" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-3-flash",
"messages": [
{"role": "user", "content": "用一句话介绍 PicoPapa"}
]
}'
特性
- 自动路由:同一个模型可以配在多个渠道,网关按优先级和权重自动选择
- 失败重试:如果某个渠道失败,自动切换到下一个可用渠道(默认重试 3 次)
- 协议转换:无论上游是 OpenAI 还是 Gemini 协议,响应统一转为 OpenAI 格式
- 积分扣减:每次成功调用扣减 1 个积分