聊天补全 API
POST /v1/chat/completions——OpenAI 格式端点,适用于 Cursor、LangChain、LiteLLM 和 OpenAI SDK。
兼容 OpenAI 的接口。模型相同,价格相同,封装格式不同。
端点
POST https://aiprimetech.io/v1/chat/completionsSDK 的基础 URL
https://aiprimetech.io/v1 ——注意 /v1身份验证
Authorization: Bearer sk-...请求体
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
model | 字符串 | 是 | 任意 ID,来自 /v1/models,包括 Claude 模型 ID |
messages | 数组 | 是 | 支持 system、user 和 assistant 角色 |
max_tokens | 整数 | 否 | 此处为可选项,与 Messages API 不同 |
temperature | 数值 | 否 | 按 OpenAI 的约定为 0–2 |
stream | 布尔值 | 否 | 设为 true 时返回 SSE 数据块 |
tools | 数组 | 否 | OpenAI 函数调用结构 |
与 Messages 不同,
system 是 这里的一种角色——请将其放在以下字段的首个条目中: messages。请勿向此端点发送顶层的 system 字段。示例
curl https://aiprimetech.io/v1/chat/completions \
-H "Authorization: Bearer $CLAUDEAPIKEY" \
-H "content-type: application/json" \
-d '{
"model": "claude-sonnet-4-6",
"messages": [{"role": "user", "content": "Hello"}]
}'
响应
{
"id": "chatcmpl-...",
"object": "chat.completion",
"model": "claude-sonnet-4-6",
"choices": [{
"index": 0,
"message": {"role": "assistant", "content": "..."},
"finish_reason": "stop"
}],
"usage": {"prompt_tokens": 9, "completion_tokens": 12, "total_tokens": 21}
}
使用 OpenAI SDK
from openai import OpenAI
client = OpenAI(
api_key=class="s">"sk-your-key",
base_url=class="s">"https://aiprimetech.io/v1", class=class="s">"c"># the /v1 matters
)
resp = client.chat.completions.create(
model=class="s">"claude-sonnet-4-6",
messages=[{class="s">"role": class="s">"user", class="s">"content": class="s">"Hello"}],
)
print(resp.choices[0].message.content)
两种格式之间的字段映射
| 概念 | Messages | Chat Completions |
|---|---|---|
| 系统提示词 | 顶层 system | messages[0] 角色为 system |
| 回复文本 | content[0].text | choices[0].message.content |
| 停止原因 | stop_reason | finish_reason |
| 输入词元 | usage.input_tokens | usage.prompt_tokens |
| 输出 token 数 | usage.output_tokens | usage.completion_tokens |
| 流式增量 | content_block_delta | choices[0].delta.content |