Chat Completions 聊天对话
Chat Completions 是 AISP 最核心的接口,支持多轮对话、流式输出(SSE)、Function Calling、多模态(Vision)等能力。 接口完全兼容 OpenAI Chat Completions API,可无缝替换 OpenAI SDK。
接口地址
POST /api/openai/chatCompletions
POST /api/openai/chatCompletions
请求头 Headers
| 名称 | 是否必须 | 说明 |
|---|---|---|
| Authorization | 是 | Bearer API_KEY |
| Content-Type | 是 | application/json |
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 是 | 模型名称,见下方支持模型 |
| messages | array | 是 | 聊天消息数组 |
| stream | boolean | 否 | 是否流式输出,默认 false |
| temperature | number | 否 | 随机性 0~2,默认 0.7 |
| max_tokens | int | 否 | 最大生成 Token 数 |
messages 格式
[
{ "role": "system", "content": "你是一名AI助手" },
{ "role": "user", "content": "你好" },
{ "role": "assistant", "content": "你好,请问有什么可以帮助你?" }
]Role 说明
| Role | 说明 |
|---|---|
| system | 系统提示词,用于设置 AI 行为 |
| user | 用户输入 |
| assistant | AI 历史回复 |
普通请求示例
POST /api/openai/chatCompletions
Authorization: Bearer sk-xxxxxxxx
Content-Type: application/json
{
"model": "deepseek-v4-pro",
"messages": [
{ "role": "user", "content": "你好,介绍一下你自己" }
]
}普通返回示例
{
"id": "chatcmpl-xxx",
"object": "chat.completion",
"created": 1710000000,
"model": "deepseek-v4-pro",
"choices": [
{
"index": 0,
"message": { "role": "assistant", "content": "你好!我是..." },
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 10,
"completion_tokens": 20,
"total_tokens": 30
}
}流式输出
将 stream 设为 true,使用 SSE 协议返回:
POST /api/openai/chatCompletions
{
"model": "deepseek-v4-pro",
"stream": true,
"messages": [
{ "role": "user", "content": "你好" }
]
}data: {
"id": "chatcmpl-1",
"object": "chat.completion.chunk",
"choices": [ { "delta": { "content": "你好" } } ]
}
data: {
"id": "chatcmpl-2",
"object": "chat.completion.chunk",
"choices": [ { "delta": { "content": "!" } } ]
}
data: [DONE]说明 每个 data: 块代表模型生成的一段增量内容,客户端收到后拼接即可实现打字机效果。
支持模型
| 模型 | 厂商 | 上下文 | 特点 | 输入价格 | 输出价格 |
|---|---|---|---|---|---|
| deepseek-v4-pro | DeepSeek | 128K | 旗舰·推荐 | ¥12 / 百万 | ¥24 / 百万 |
| deepseek-r1 | DeepSeek | 32K | 推理模型 | ¥4 / 百万 | ¥16 / 百万 |
| qwen-max | 阿里 | 32K | 旗舰 | ¥2.4 / 百万 | ¥9.6 / 百万 |
| qwen-plus | 阿里 | 32K | 推荐 | ¥0.8 / 百万 | ¥2 / 百万 |
| qwen-turbo | 阿里 | 32K | 高速低价 | ¥0.3 / 百万 | ¥0.6 / 百万 |
| qwen3-235b-a22b | 阿里 | 128K | 多模态旗舰 | ¥2 / 百万 | ¥8 / 百万 |
| qwen3-32b | 阿里 | 128K | 多模态 | ¥1 / 百万 | ¥4 / 百万 |
| qwen3-14b | 阿里 | 128K | 多模态 | ¥0.5 / 百万 | ¥2 / 百万 |
| qwen3-8b | 阿里 | 128K | 多模态 | ¥0.2 / 百万 | ¥0.8 / 百万 |
| qwen3-coder-plus | 阿里 | 128K | 代码模型 | ¥3 / 百万 | ¥12 / 百万 |
| glm-4.5 | 智谱 | 128K | 国产旗舰·推理 | ¥1 / 百万 | ¥4 / 百万 |
| kimi/kimi-k2.5 | Moonshot | 128K | 长文本·推理 | ¥1 / 百万 | ¥4 / 百万 |
| baichuan4 | 百川 | 32K | 国产通用 | ¥1 / 百万 | ¥4 / 百万 |
| minimax-text-01 | MiniMax | 32K | 国产通用 | ¥1 / 百万 | ¥4 / 百万 |
计费说明
- 计费方式:按实际消耗 Token 数计费
- 费用 = prompt_tokens / 1,000,000 × input_price + completion_tokens / 1,000,000 × output_price
- 费用保留 6 位小数,实时从账户余额扣除
- 余额不足时接口直接返回 403,不会调用模型
错误返回
{ "error": { "message": "Invalid API Key" } }
{ "error": { "message": "Model not found" } }
{ "error": { "message": "Insufficient balance" } }Token Usage 字段
| 字段 | 说明 |
|---|---|
| prompt_tokens | 输入 Token 数 |
| completion_tokens | 输出 Token 数 |
| reasoning_tokens | 推理 Token(部分模型) |
| total_tokens | 总 Token 数 |
最佳实践
- 推荐使用 stream=true 获得更好的用户体验
- 保留历史 messages 实现多轮对话
- 合理设置 max_tokens 控制成本
- 服务端保存 request_id 便于日志查询
