API 文档
LLM API 提供高可用的 Claude API 服务,采用与 Anthropic 一致的 API 格式。更改 Base URL 即可开始使用,无需其他代码改动。
基础地址
https://llmapi.pro
三步开始
设置环境变量
export ANTHROPIC_BASE_URL=https://llmapi.pro
export ANTHROPIC_API_KEY=your-api-key
发送第一个请求
curl https://llmapi.pro/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-sonnet-4-6",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Hello! What can you do?"}
]
}'
Claude Code 集成
配置 Claude Code CLI,将所有请求通过 LLM API 路由。设置两个环境变量,然后像往常一样启动 Claude Code,无需插件或补丁。
macOS / Linux
# 临时设置(仅当前 shell 会话有效)
export ANTHROPIC_BASE_URL=https://llmapi.pro
export ANTHROPIC_API_KEY=your-api-key
# 永久设置(添加到 ~/.bashrc 或 ~/.zshrc)
echo 'export ANTHROPIC_BASE_URL=https://llmapi.pro' >> ~/.zshrc
echo 'export ANTHROPIC_API_KEY=your-api-key' >> ~/.zshrc
source ~/.zshrc
# 然后正常启动 Claude Code
claude
Windows PowerShell
# 临时设置(仅当前会话有效)
$env:ANTHROPIC_BASE_URL="https://llmapi.pro"
$env:ANTHROPIC_API_KEY="your-api-key"
# 永久设置(用户级环境变量)
[System.Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", "https://llmapi.pro", "User")
[System.Environment]::SetEnvironmentVariable("ANTHROPIC_API_KEY", "your-api-key", "User")
# 然后启动 Claude Code
claude
环境变量
| 变量 | 必填 | 说明 |
|---|---|---|
ANTHROPIC_BASE_URL |
是 | 设置为 https://llmapi.pro,将请求代理到 LLM API。 |
ANTHROPIC_API_KEY |
是 | 你的 LLM API 密钥(以 sk-llmapi- 开头)。在控制台获取。 |
模型映射
当 Claude Code 发送请求时,LLM API 会自动将模型标识映射到最佳可用后端。你可以使用任何标准的 Anthropic 模型名称。
| 模型名称 | 优化方向 | 说明 |
|---|---|---|
claude-sonnet-4-6 |
代码生成与工具调用 | Claude Code 默认模型。路由到我们最佳的编码模型。 |
claude-opus-4-6 |
复杂推理 | 能力最强的模型,适用于架构和设计任务。 |
claude-haiku-4-5 |
快速且经济 | 适合简单任务的快速响应。每 Token 成本最低。 |
提示:模型路由是自动处理的。你无需更改 Claude Code 中的 model 参数,LLM API 会自动处理。
认证
每个 API 请求都必须包含有效的 API Key。你可以通过以下两种请求头传递密钥。在控制台创建和管理密钥。
支持的认证头
| 请求头 | 格式 | 说明 |
|---|---|---|
x-api-key |
sk-llmapi-xxxx |
主要方式。兼容 Anthropic SDK。 |
Authorization |
Bearer sk-llmapi-xxxx |
备选的 Bearer Token 方式。 |
示例:使用 x-api-key 的 cURL 请求
curl https://llmapi.pro/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: sk-llmapi-xxxxxxxxxxxxxxxxxxxxxxxx" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-sonnet-4-6",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Explain quantum computing in simple terms."}
]
}'
安全提示:切勿在客户端代码或公开仓库中暴露你的 API Key。如果密钥泄露,请立即从控制台删除并创建新密钥。
API 参考
/v1/messages
创建消息。完全兼容 Anthropic Messages API。
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
model |
string | 是 | 模型标识,如 claude-sonnet-4-6 |
messages |
array | 是 | 消息对象数组,包含 role(user | assistant)和 content。 |
max_tokens |
integer | 是 | 响应中生成的最大 Token 数。 |
system |
string | 否 | 系统提示词,用于设定模型的行为和上下文。 |
temperature |
number | 否 | 采样温度,范围 0 到 1。值越低结果越确定。 |
tools |
array | 否 | 模型可使用的工具定义列表(函数调用)。 |
tool_choice |
object | 否 | 控制工具使用:auto、any 或指定工具名称的 tool。 |
stream |
boolean | 否 | 启用 Server-Sent Events 流式传输。默认:false。 |
非流式响应
当 stream 为 false(默认)时,API 返回单个 JSON 对象:
{
"id": "msg_01XFDUDYJgAACzvnptvVoYEL",
"type": "message",
"role": "assistant",
"content": [
{
"type": "text",
"text": "Hello! I can help you with a wide range of tasks..."
}
],
"model": "claude-sonnet-4-6",
"stop_reason": "end_turn",
"stop_sequence": null,
"usage": {
"input_tokens": 12,
"output_tokens": 58
}
}
流式响应 (SSE)
当 stream 为 true 时,响应通过 Server-Sent Events 传输。每个事件包含 event 字段和 JSON data 字段:
event: message_start
data: {"type":"message_start","message":{"id":"msg_01...","type":"message","role":"assistant","content":[],"model":"claude-sonnet-4-6","usage":{"input_tokens":12,"output_tokens":0}}}
event: content_block_start
data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""}}
event: content_block_delta
data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"Hello"}}
event: content_block_delta
data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"! I can"}}
event: content_block_stop
data: {"type":"content_block_stop","index":0}
event: message_delta
data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"output_tokens":58}}
event: message_stop
data: {"type":"message_stop"}
SSE 事件类型
| 事件 | 说明 |
|---|---|
message_start |
在开始时发送一次。包含消息对象和元数据。 |
content_block_start |
标记新内容块的开始(text 或 tool_use)。 |
content_block_delta |
增量内容更新。拼接 delta.text 以构建完整响应。 |
content_block_stop |
内容块已完成。 |
message_delta |
最终消息元数据,包括 stop_reason 和总用量。 |
message_stop |
流结束。关闭连接。 |
模型
LLM API 接受所有标准 Anthropic 模型标识符。请求会被路由到最优后端以确保可靠性和性能。
| 模型 ID | 显示名称 | 适用场景 | 上下文窗口 |
|---|---|---|---|
claude-opus-4-6 |
Claude Opus 4.6 | 复杂推理、高级编码、深度分析 | 200K tokens |
claude-sonnet-4-6 |
Claude Sonnet 4.6 | 均衡性能、日常编码、通用任务 | 200K tokens |
claude-haiku-4-5 |
Claude Haiku 4.5 | 快速响应、简单任务、高吞吐工作负载 | 200K tokens |
支持所有官方 Anthropic 模型标识符,包括版本别名。
错误处理
LLM API 使用标准 HTTP 状态码。错误响应始终返回包含机器可读 type 和人类可读 message 的 JSON 主体。
错误响应格式
{
"type": "error",
"error": {
"type": "authentication_error",
"message": "Invalid API key provided."
}
}
HTTP 状态码
| 状态码 | 错误类型 | 说明 | 建议操作 |
|---|---|---|---|
400 |
invalid_request_error |
请求体格式错误或缺少必填参数。 | 检查 JSON 负载和必填字段。 |
401 |
authentication_error |
API Key 无效或缺失。 | 检查 x-api-key 是否正确设置。 |
403 |
permission_error |
权限不足或账户已暂停。 | 检查账户状态和套餐权限。 |
429 |
rate_limit_error |
请求过多,超出速率限制。 | 退避并重试。参见速率限制。 |
500 |
api_error |
服务器内部错误。 | 短暂延迟后重试。如持续出现请联系支持。 |
503 |
overloaded_error |
上游服务暂时过载。 | 稍等片刻,使用指数退避重试。 |
速率限制
速率限制因套餐而异,按 API Key 执行。超出限制时,API 返回 429 状态码。升级套餐可获得更高吞吐量。
各套餐限制
| 套餐 | 请求数/分钟 | 请求数/天 | 每月 Token 配额 |
|---|---|---|---|
| Free | 10 | 40 / 5h, 200 / week | 不限 |
| Pro | 20 | 400 / 5h, 2,000 / week | 不限 |
| Max 5x | 60 | 1,200 / 5h, 6,000 / week | 不限 |
| Max 20x | 120 | 3,000 / 5h, 15,000 / week | 不限 |
速率限制响应头
每个 API 响应都包含以下头信息,帮助你实时跟踪用量:
anthropic-ratelimit-requests-limit: 60
anthropic-ratelimit-requests-remaining: 58
anthropic-ratelimit-requests-reset: 2026-04-08T12:01:00.000Z
anthropic-ratelimit-tokens-limit: 800000
anthropic-ratelimit-tokens-remaining: 800000
| 响应头 | 说明 |
|---|---|
x-ratelimit-limit |
你的套餐每分钟允许的最大请求数。 |
x-ratelimit-remaining |
当前速率限制窗口中的剩余请求数。 |
x-ratelimit-reset |
速率限制窗口重置的 ISO 8601 时间戳。 |