UniterRouter
API 参考Anthropic API

Messages

Claude API Messages 端点 - 通过 UniterRouter 创建 Claude 3.5 Sonnet、Claude 3 Opus 对话。Anthropic 兼容 API,支持流式响应和工具调用。

Messages API

使用 Claude 模型创建消息。此端点为偏好使用 Anthropic SDK 的应用提供原生 Anthropic API 兼容性。

替代方案:您也可以通过 OpenAI 兼容 API 访问 Claude 模型,这是大多数场景的推荐方式。

端点

POST https://api.uniterouter.ai/v1/messages

认证

UniterRouter 支持两种认证方式:

方式一:Anthropic 原生 (x-api-key)

x-api-key: your_uniterouter_api_key
anthropic-version: 2023-06-01

方式二:Bearer Token

Authorization: Bearer your_uniterouter_api_key
anthropic-version: 2023-06-01

两种认证方式工作方式完全相同。使用 x-api-key 以兼容 Anthropic SDK,或使用 Bearer 以兼容 Claude Code 等工具。

请求体

UniterRouter 完全兼容 Anthropic 官方 API,支持所有参数。

基础参数

参数类型必需描述
modelstring是模型 ID(如 claude-sonnet-4-20250514)
messagesarray是消息对象数组
max_tokensinteger是生成的最大 token 数

系统提示

参数类型必需描述
systemstring | array否系统提示,可以是字符串或 TextBlockParam 数组

采样参数

参数类型必需描述
temperaturenumber否采样温度 (0.0-1.0,默认:1.0)
top_pnumber否核采样参数
top_kinteger否Top-k 采样参数
stop_sequencesarray否自定义停止序列

流式与元数据

参数类型必需描述
streamboolean否启用流式传输(默认:false)
metadataobject否请求元数据,可包含 user_id
service_tierstring否服务层级:auto 或 standard_only

工具调用

参数类型必需描述
toolsarray否工具定义(支持 custom、bash、text_editor、web_search)
tool_choiceobject否工具选择策略:auto、any、tool 或 none

扩展思考 (Extended Thinking)

参数类型必需描述
thinkingobject否扩展思考配置

Thinking 配置示例:

{
  "thinking": {
    "type": "enabled",
    "budget_tokens": 10000
  }
}

扩展思考允许 Claude 展示其推理过程。要求 budget_tokens ≥ 1024 且小于 max_tokens。

消息格式

{
  "messages": [
    {
      "role": "user",
      "content": "你好,Claude!"
    }
  ]
}

请求示例

curl https://api.uniterouter.ai/v1/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: $UNITEROUTER_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-sonnet-4-20250514",
    "max_tokens": 1024,
    "system": "你是一个有帮助的助手。",
    "messages": [
      {"role": "user", "content": "你好,Claude!"}
    ]
  }'
import anthropic

client = anthropic.Anthropic(
    api_key="your_uniterouter_api_key",
    base_url="https://api.uniterouter.ai"
)

message = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    system="你是一个有帮助的助手。",
    messages=[
        {"role": "user", "content": "你好,Claude!"}
    ]
)

print(message.content[0].text)
import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic({
  apiKey: process.env.UNITEROUTER_API_KEY,
  baseURL: "https://api.uniterouter.ai"
});

const message = await client.messages.create({
  model: "claude-3-5-sonnet-20241022",
  max_tokens: 1024,
  system: "你是一个有帮助的助手。",
  messages: [
    { role: "user", content: "你好,Claude!" }
  ]
});

console.log(message.content[0].text);

响应

{
  "id": "msg_01XFDUDYJgAACzvnptvVoYEL",
  "type": "message",
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "你好!有什么我可以帮助你的吗?"
    }
  ],
  "model": "claude-3-5-sonnet-20241022",
  "stop_reason": "end_turn",
  "stop_sequence": null,
  "usage": {
    "input_tokens": 25,
    "output_tokens": 15
  }
}

流式传输

启用流式传输以获取实时响应:

with client.messages.stream(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    messages=[{"role": "user", "content": "给我讲个故事"}]
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)

工具使用(函数调用)

Claude 支持工具使用进行结构化交互:

tools = [
    {
        "name": "get_weather",
        "description": "获取某个位置的当前天气",
        "input_schema": {
            "type": "object",
            "properties": {
                "location": {
                    "type": "string",
                    "description": "城市名称"
                }
            },
            "required": ["location"]
        }
    }
]

message = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    tools=tools,
    messages=[
        {"role": "user", "content": "巴黎的天气怎么样?"}
    ]
)

可用模型

模型描述上下文最大输出
claude-sonnet-4-20250514最新 Claude 4 Sonnet200K64K
claude-opus-4-20250514最强大 Claude 4200K32K
claude-3-7-sonnet-20250219Claude 3.7,支持扩展思考200K128K
claude-3-5-sonnet-20241022Claude 3.5 Sonnet200K8K
claude-3-5-haiku-20241022快速且实惠200K8K
claude-3-opus-20240229Claude 3 Opus200K4K
claude-3-haiku-20240307上一代 Haiku200K4K

相关文档

How is this guide?