跳到正文

Anthropic SDK

使用 Anthropic SDK 通过 HopBase 调用 Claude 模型。

使用 Anthropic SDK 调用 Claude 模型时,请保留 Messages API 结构,只替换 Base URL、Claude 分组密钥和模型 ID。

项目填写值
Base URLhttps://api.hop-base.com(不带 /v1)
密钥环境变量HOPBASE_CLAUDE_API_KEY
协议Anthropic Messages:POST /v1/messages;也支持 POST /v1/messages/count_tokens
模型 ID以 Claude 分组密钥调用 GET /v1/models 的返回值为准

安装并发送最小请求

安装 SDK:

python -m pip install anthropic

发送请求:

import os
from anthropic import Anthropic

client = Anthropic(
    base_url="https://api.hop-base.com",
    api_key=os.environ["HOPBASE_CLAUDE_API_KEY"],
)

msg = client.messages.create(
    model="claude-sonnet-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "你好"}],
)
print(msg.content[0].text)
用哪个分组的密钥:

使用「Claude Max (官号满血版)」或「Claude Max (官号满血版) - 限时特惠」分组的密钥。「Claude Max (ccmax)」分组只供 Claude Code 客户端使用,SDK / API 调用会被拒绝。

不要把 Claude 分组密钥配置成 OpenAI Compatible。Claude SDK 应保持 Anthropic 原生鉴权和 Messages API 请求结构;Claude 密钥调 OpenAI 协议接口会返回 404。

读取本次扣费

计费的非流式请求会在响应头 X-HopBase-Cost-USD 里返回本次实际从余额扣除的美元金额,X-HopBase-Cost 是同一笔扣费的人民币金额,X-HopBase-Currency 是 X-HopBase-Cost 的币种(恒为 CNY);响应的 usage 里也有同样的 cost、cost_usd 与 currency,SDK 会把它们当作额外字段保留。流式响应都不带,message_delta 的 usage 保持原样,扣费请到控制台「使用记录」查看。完整口径见扣费说明。

raw = client.messages.with_raw_response.create(
    model="claude-sonnet-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "只回复 ok"}],
)
print(raw.headers.get("x-hopbase-cost"), raw.headers.get("x-hopbase-cost-usd"), raw.headers.get("x-hopbase-currency"))
msg = raw.parse()  # 与不带 with_raw_response 时的返回值相同
print(msg.usage.cost, msg.usage.cost_usd, msg.usage.currency)  # 额外字段,与响应头同值

支持的请求参数

下表只列网关会补值或特别处理的部分;其余 Messages API 字段(system、tools、thinking、temperature 等)原样转发,取值范围按 Anthropic 官方规格。各模型的上下文与输出上限见模型列表。

参数 / 请求头必填类型与限制默认说明
x-api-key 或 Authorization: Bearer必填以 sk- 开头的 Claude 分组密钥—两种请求头都接受;缺失返回 401 missing_api_key,格式不对返回 401 invalid_api_key
model必填string,当前密钥分组内的模型 ID—分组不包含该模型时返回 404 model_not_found
max_tokens可选integer;网关不设上限,最大值按模型官方规格4096官方 API 要求必填,HopBase 缺省时补为 4096:长输出会在 4096 处截断(stop_reason: "max_tokens"),请显式设置
messages必填array,按 Anthropic 官方格式—原样转发
stream可选booleanfalsetrue 返回 Anthropic SSE 事件流
anthropic-version / anthropic-beta可选string 请求头—SDK 会自动带上;原样转发

整个请求体上限 60 MB,超过返回 413。

下一步