Anthropic Messages 接口

最后更新

Anthropic 兼容接口让 Claude Code 和 Anthropic SDK 不改代码就能接入,可以调用目录里的任意文本模型,不限于 Claude。

接入

  • 基础地址填 https://modelportal.ai,不带 /v1;SDK 会自己拼出 https://modelportal.ai/v1/messages。
  • 密钥放在 x-api-key 请求头,或 Authorization: Bearer。
  • /anthropic/* 下的旧地址已停用,返回 410,错误信息指向新地址。
import anthropic

client = anthropic.Anthropic(base_url="https://modelportal.ai", api_key="YOUR_API_KEY")
message = client.messages.create(
    model="MODEL_ID",
    max_tokens=1024,
    messages=[{"role": "user", "content": "你好"}],
)
print(message.content[0].text)

与 OpenAI 格式不同的地方

  • max_tokens 必填。
  • 支持 thinking、工具调用和 cache_control,按报价的能力声明处理,见推理控制、工具调用、提示缓存。
  • 多轮工具调用时回传的带签名 thinking 块,会让后续请求固定在产生签名的报价上。
  • 路由偏好用请求头 X-ModelPortal-Provider-Preferences 传,见供应商选择;metadata.user_id 会被当作会话标识,用于会话亲和,转发前删除。
  • 错误体是 {"type": "error", "error": {"type", "message"}},没有机器可读的错误码;响应头 x-should-retry 告诉你是否值得重试。

接口与字段见 Anthropic 兼容接口参考。