Claude Messages

对于发送 Anthropic 风格消息负载的客户端,请使用 Claude 兼容的 Messages 接口。它与 OpenAI Chat Completions 和 Responses 使用不同的请求、响应及流式事件格式。

POST https://getrouter.ai/v1/messages

最小请求

curl https://getrouter.ai/v1/messages \
  -H "x-api-key: YOUR_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MODEL_ID",
    "max_tokens": 512,
    "system": "请清晰、简洁地回答。",
    "messages": [
      {"role": "user", "content": "解释 Base URL 的作用。"}
    ]
  }'

响应遵循 Claude 兼容的消息结构,包含内容块;如果上游提供,也会返回用量信息。

必填字段

字段说明
modelClaude 兼容模型 ID
messages对话消息列表
max_tokens最大输出 token 数

可选字段

接口 schema 包含以下字段(实际支持情况取决于模型):

  • system
  • temperaturetop_ptop_k
  • stream
  • stop_sequences
  • toolstool_choice
  • thinking
  • context_management
  • output_configoutput_format
  • metadata
  • speedservice_tier

不要因为某个字段出现在 schema 中,就默认当前模型一定支持。请先确认模型能力,并用最小请求验证。

流式输出

在模型支持时,将 stream 设为 true 启用 Claude 兼容流式输出:

{
  "model": "MODEL_ID",
  "max_tokens": 512,
  "stream": true,
  "messages": [
    {"role": "user", "content": "写一条简短的发布说明。"}
  ]
}

客户端需要使用 Claude 事件解析器,不要使用 Chat Completions 或 Responses 的事件解析逻辑替代。

工具调用与思考

Claude 兼容的工具定义、工具结果内容块和 thinking 配置,都要求模型具备对应能力。将它们用于无人值守 Agent 前,请先测试完整的请求—响应流程。

Warning

同一个模型通过 OpenAI 兼容接口和 /v1/messages 调用时,所需的请求字段和响应处理方式可能不同。请按照客户端实际使用的协议进行配置。

工具集成

Claude 兼容的编程工具可能还需要额外的环境变量或 Provider 设置。请查看集成指南下的对应指南,不要只替换主机名。

下一步