切换主题
Claude Messages
Claude 原生接口使用 POST /v1/messages、x-api-key 和 anthropic-version。请求正文与 OpenAI Chat Completions 不同。
curl 示例
bash
curl https://sprelaytoken.com/v1/messages \
-H "x-api-key: $SPRELAY_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"model": "claude-sonnet-4-6",
"max_tokens": 512,
"messages": [
{"role": "user", "content": "解释 API 中转服务的作用。"}
]
}'Python SDK
python
import os
from anthropic import Anthropic
client = Anthropic(
api_key=os.environ["SPRELAY_API_KEY"],
base_url="https://sprelaytoken.com",
)
message = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=512,
messages=[
{"role": "user", "content": "解释 API 中转服务的作用。"}
],
)
print(message.content[0].text)JavaScript SDK
javascript
import Anthropic from '@anthropic-ai/sdk'
const client = new Anthropic({
apiKey: process.env.SPRELAY_API_KEY,
baseURL: 'https://sprelaytoken.com',
})
const message = await client.messages.create({
model: 'claude-sonnet-4-6',
max_tokens: 512,
messages: [{ role: 'user', content: '解释 API 中转服务的作用。' }],
})
console.log(message.content)关键差异
max_tokens是 Messages 请求中的必需字段之一。- 系统提示通常使用顶层
system,不是messages中的system角色。 - 返回正文位于
content数组,不是 OpenAI 的choices。 - Base URL 使用
https://sprelaytoken.com,SDK会添加/v1/messages。
常见错误
同时发送 Bearer 和错误的 x-api-key
保持鉴权来源唯一,推荐 Claude 原生请求只使用 x-api-key。多个值不一致会导致排查困难。
忘记 anthropic-version
原生请求应发送受支持的版本头。示例使用 2023-06-01。
把 OpenAI 消息字段直接复制过来
工具调用、多模态内容和系统提示的结构存在差异。先使用上面的纯文本最小请求,再按 Anthropic 协议增加内容块。
