接口说明
Chat Completions API 用于创建聊天对话,支持多轮对话、系统提示、函数调用等功能。
请求方式
POST
请求地址
/v1/chat/completions
认证方式
Authorization: Bearer <API_KEY>
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
model |
string | 是 | 模型名称,如 gpt-4o、claude-3-sonnet |
messages |
array | 是 | 对话消息列表 |
messages[].role |
string | 是 | 角色类型:system / user / assistant |
messages[].content |
string | 是 | 消息内容 |
stream |
boolean | 否 | 是否启用流式响应,默认 false |
temperature |
number | 否 | 随机性,范围 0-2,默认 1 |
max_tokens |
integer | 否 | 最大生成 token 数 |
请求示例
curl
curl https://api.lingyuncx.com/v1/chat/completions \
-H "Authorization: Bearer sk-xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o",
"messages": [
{"role": "system", "content": "你是一个有帮助的助手。"},
{"role": "user", "content": "你好,请介绍一下自己。"}
]
}'
Python
from openai import OpenAI
client = OpenAI(
base_url="https://api.lingyuncx.com/v1",
api_key="sk-xxxxxxxx"
)
response = client.chat.completions.create(
model="gpt-4o",
messages=[
{"role": "system", "content": "你是一个有帮助的助手。"},
{"role": "user", "content": "你好,请介绍一下自己。"}
]
)
print(response.choices[0].message.content)
Node.js
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'https://api.lingyuncx.com/v1',
apiKey: 'sk-xxxxxxxx'
});
const response = await client.chat.completions.create({
model: 'gpt-4o',
messages: [
{ role: 'system', content: '你是一个有帮助的助手。' },
{ role: 'user', content: '你好,请介绍一下自己。' }
]
});
console.log(response.choices[0].message.content);
返回示例
JSON
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1677652288,
"model": "gpt-4o",
"choices": [{
"index": 0,
"message": {
"role": "assistant",
"content": "你好!我是 AI 助手,很高兴为你服务。"
},
"finish_reason": "stop"
}],
"usage": {
"prompt_tokens": 28,
"completion_tokens": 15,
"total_tokens": 43
}
}
流式响应
设置 stream: true 启用流式响应,服务端会持续推送数据块(SSE)。
Python
from openai import OpenAI
client = OpenAI(
base_url="https://api.lingyuncx.com/v1",
api_key="sk-xxxxxxxx"
)
stream = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": "写一首诗"}],
stream=True
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")
💡 提示
流式响应适合实时显示 AI 输出,提升用户体验。完整流式响应指南请参考 流式响应文档。
错误处理
API 错误响应格式如下:
JSON
{
"error": {
"message": "Invalid API key",
"type": "authentication_error",
"code": "invalid_api_key"
}
}
| 错误码 | 说明 | 解决方案 |
|---|---|---|
401 |
认证失败 | 检查 API Key 是否正确 |
429 |
请求频率超限 | 降低请求频率或升级套餐 |
500 |
服务器错误 | 稍后重试或联系支持 |