文档 · 接入

Anthropic 格式

Claude 模型可以用 Anthropic 原生 Messages 格式调用:POST /v1/messages,直接使用 Anthropic 官方 SDK,代码无需改动。

Anthropic SDK 的 Base URL 不带 /v1(SDK 会自动拼接 /v1/messages);OpenAI SDK 的 Base URL 要带 /v1。

安装

pip install --upgrade anthropic

基础调用

curl https://<your-endpoint>/v1/messages \
  -H "x-api-key: $API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-4-5",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

流式输出

import anthropic

client = anthropic.Anthropic(base_url="https://<your-endpoint>", api_key="YOUR_API_KEY")

with client.messages.stream(
    model="claude-sonnet-4-5",
    max_tokens=4096,
    messages=[{"role": "user", "content": "Explain TCP slow start."}],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)
    final = stream.get_final_message()
print("\n", final.usage)

在命令行与 IDE 工具中使用

支持自定义 Anthropic 地址的工具,一般设置下面两个环境变量即可:

# Tools that accept a custom Anthropic endpoint (CLIs, IDE plugins…) usually read these
export ANTHROPIC_BASE_URL="https://<your-endpoint>"
export ANTHROPIC_API_KEY="YOUR_API_KEY"

与 OpenAI 格式的区别

OpenAI 格式Anthropic 格式
路径/v1/chat/completions/v1/messages
鉴权Authorization: Bearerx-api-key + anthropic-version
系统提示词role: system 消息顶层 system 字段
输出上限可选max_tokens 必填
回复内容choices[0].message.contentcontent[] 内容块
用量prompt_tokens / completion_tokensinput_tokens / output_tokens / cache_*

Claude 模型同样可以用 OpenAI 格式调用。需要思考(thinking)、缓存断点(cache_control)等 Claude 特有能力时,建议使用原生格式,参数与 Anthropic 官方文档一致。