创建对话请求 (Anthropic)
使用 Anthropic Messages API 协议访问 AccessAPI 上的多厂商模型。AccessAPI 提供统一的 AI API 路由能力,可在不同模型之间自动完成协议适配与请求分发,使开发者通过一个接口即可调用多种模型能力。在跨模型调用场景下,部分 Anthropic 专有能力可能存在差异,详见下方兼容性说明。
✨ AccessAPI 能力
- 统一 API 接入多厂商模型(OpenAI / Anthropic / 通义等)
- 自动模型路由与调度
- 协议自动适配(无需关心不同厂商差异)
- 兼容 OpenAI / Anthropic SDK
Header Parameters
Anthropic API 版本号。AccessAPI 网关不强制校验此字段,可不传。
Example:
2023-06-01
⚠️ 功能兼容性说明
AccessAPI 作为统一 AI 路由层,会根据目标模型自动完成协议适配与请求分发。由于不同厂商模型能力存在差异,部分 Anthropic 协议参数或特性在跨模型调用时支持情况如下:
| 功能 | 支持情况 | 说明 |
|---|---|---|
| messages / system | ✅ 支持 | 普通文本对话正常 |
| stream | ✅ 支持 | SSE 流式输出正常 |
| temperature / top_p | ✅ 支持 | 范围 0~1,超出范围可能被截断 |
| top_k | ⚠️ 部分支持 | 不同模型对该参数支持程度不同,部分模型可能忽略该参数 |
| tools / tool_choice | ⚠️ 部分支持 | 取决于所选模型是否支持工具调用(function calling)能力 |
| thinking / extended_thinking | ❌ 不支持 | Claude 专有能力,不同模型不具备等效功能 |
| vision(图片输入) | ⚠️ 部分支持 | 需要底层模型支持多模态 |
| betas header | ❌ 不支持 | 当前路由层不支持透传 anthropic-beta header |
Body Parameters
目标模型名称,用于指定本次请求调用的模型。
✅ 模型名称不区分大小写,例如 Qwen3-Max 和 qwen3-max
效果相同。
Example:
qwen3-max
输入消息。我们的模型经过训练,可以对交替的用户和助手对话轮次进行操作。
数组长度要求:1 - 10 个元素
停止前生成的最大 token 数量。
请注意,我们的模型可能会在达到此最大值之前停止。此参数仅指定要生成的绝对最大 token 数。
不同模型对此参数具有不同的最大值。
Example:
8192
系统提示。系统提示是一种向 LLM 提供上下文和指令的方法,例如指定特定的目标或角色。
导致模型停止生成的自定义文本序列。
我们的模型通常会在自然完成轮次时停止,这将导致 stop_reason 为 "end_turn"。
如果您希望模型在遇到自定义文本字符串时停止生成,可以使用 stop_sequences 参数。如果模型遇到自定义序列之一,stop_reason 值将为 "stop_sequence",stop_sequence 值将包含匹配的停止序列。
是否使用服务器发送事件增量流式传输响应。
Example:
true
注入响应的随机性量。
Range: 0 <= x <= 1(注意:Anthropic 原生范围为 0~1,与 OpenAI 的 0~2 不同,请勿传入大于 1 的值)
Example:
0.7
核采样。此参数控制 token 选择的累积概率。
要求范围:0.1 <= x <= 1
Example:
0.7
要求范围:0 <= x <= 50
注意:该参数在不同模型上的支持情况存在差异,部分模型可能忽略该参数。
Example:
50
模型可能使用的工具定义。
name: 工具名称。
description: (可选) 工具描述。
input_schema: 工具输入的 JSON 架构,模型将在 tool_use 输出内容块中生成。
注意:工具调用功能经 LiteLLM 转换后,取决于底层模型是否支持 function calling,不同模型行为可能有差异。
工具名称。
这将是模型用于调用工具的名称。
工具输入的 JSON 架构。
这定义了工具接受的输入形状,也是模型将生成的输入形状。
模型应如何使用提供的工具。模型可以使用特定工具、任何可用工具或自行决定。
Auto / Tool / None
选项:auto, any, tool
是否禁用并行工具使用。
默认为 false。如果设置为 true,模型将最多输出一个工具使用。
Response
消息的唯一标识符。
对象类型。
对于 Messages,这始终是 "message"。
Default:
message
生成消息的对话角色。
这始终是 "assistant"。
Default:
assistant
模型生成的内容。
这是一个内容块数组,每个块都是一个具有 type 字段的对象。
Example:
[{"type": "text", "text": "Hi"}]
处理请求的模型。
我们停止的原因。这可能是以下值之一:
"end_turn": 模型达到了自然停止点或生成了自定义停止序列之一。
"max_tokens": 我们超过了请求的 max_tokens 或模型的最大值。
"tool_use": 模型调用了一个或多个工具。
"refusal": 由于内容过滤,模型拒绝了请求。
在非流式模式下,此值始终非空。在流式模式下,它在 message_start 事件中为空,否则非空。
生成的自定义停止序列(如果有)。
如果您指定了自定义停止序列,并且生成了一个,则此字段将非空并包含该序列。
计费和速率限制使用情况。
包含 input_tokens 和 output_tokens。
Example:
{ "input_tokens": 2095, "output_tokens": 503 }
curl -X POST https://api.AccessAPI.com/anthropic/v1/messages \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "qwen3-max", "max_tokens": 1024, "messages": [ {"role": "user", "content": "Hello!"} ] }'
{
"id": "msg_01Xnu9zn7pB6b4f7b4f7b4f7",
"type": "message",
"role": "assistant",
"content": [
{
"type": "text",
"text": "Hello! How can I help you today?"
}
],
"model": "qwen3-max",
"stop_reason": "end_turn",
"usage": {
"input_tokens": 12,
"output_tokens": 18
}
}
🤖 Claude Code 接入配置
如果你使用 Claude Code CLI 工具开发,可以通过环境变量将其接入 AccessAPI,使用平台上的任意模型替代官方 Claude,无需修改代码。
🐚 Zsh 用户(macOS 默认)
# 编辑 ~/.zshrc 文件 echo 'export ANTHROPIC_BASE_URL=https://api.AccessAPI.com/anthropic' >> ~/.zshrc echo 'export ANTHROPIC_AUTH_TOKEN=YOUR_API_KEY' >> ~/.zshrc echo 'export ANTHROPIC_MODEL=qwen3-max' >> ~/.zshrc source ~/.zshrc
🐚 Bash 用户(Linux / 旧版 macOS)
# 编辑 ~/.bashrc 文件 echo 'export ANTHROPIC_BASE_URL=https://api.AccessAPI.com/anthropic' >> ~/.bashrc echo 'export ANTHROPIC_AUTH_TOKEN=YOUR_API_KEY' >> ~/.bashrc echo 'export ANTHROPIC_MODEL=qwen3-max' >> ~/.bashrc source ~/.bashrc
💡 配置完成后直接运行 claude
命令即可,无需额外参数。将 YOUR_API_KEY
替换为你的实际 API Key。