Claude Code

Claude Code 是 Anthropic 的命令行编程助手。腾讯公益推理平台提供 Anthropic 兼容的 Messages 接口,Claude Code 可以用平台的 API Key 调用平台上的模型,不需要 Anthropic 账号或密钥。

还没有 API Key 的话,先按快速开始创建一个。

工作方式

Claude Code 会把请求发到 ANTHROPIC_BASE_URL,并在后面追加 /v1/messages。平台的 Anthropic 兼容地址是:

https://freeinference.qq.com/anthropic

平台把请求交给你指定的平台模型,再以 Anthropic 格式返回,流式输出和工具调用都走同一条通道。

Claude Code 默认请求 Claude 系列模型(Opus、Sonnet、Haiku),而平台上没有这些模型,所以必须把这几个模型别名都指向平台上的模型,否则请求会因为模型不存在而返回 404。

此接入依赖平台的协议兼容能力。Anthropic 官方不支持通过网关将 Claude Code 路由到非 Claude 模型,因此不同版本的工具能力可能存在差异;先验证基本对话和工具调用,再用于实际项目。

安装 Claude Code 请参考官方文档,其中也说明了安装与更新所需的网络条件。完成配置后,模型请求通过平台处理;更新、遥测及其他工具请求遵循 Claude Code 自身的配置。

配置

编辑 ~/.claude/settings.json(Windows:%USERPROFILE%\.claude\settings.json)。把下面的键合并进已有内容,不要整体覆盖文件:

{
  "model": "deepseek-v4.1-flash",
  "env": {
    "ANTHROPIC_BASE_URL": "https://freeinference.qq.com/anthropic",
    "ANTHROPIC_AUTH_TOKEN": "你的 API Key",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "deepseek-v4.1-flash",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "deepseek-v4.1-flash",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "deepseek-v4.1-flash"
  }
}

设置

作用

model

新会话默认使用的模型

ANTHROPIC_BASE_URL

让 Claude Code 把请求发到平台

ANTHROPIC_AUTH_TOKEN

以 Authorization: Bearer 请求头发送你的 API Key

ANTHROPIC_DEFAULT_OPUS_MODEL、ANTHROPIC_DEFAULT_SONNET_MODEL

把 Opus、Sonnet 别名映射到平台模型

ANTHROPIC_DEFAULT_HAIKU_MODEL

把 Haiku 别名映射到平台模型,Claude Code 的后台轻量任务使用它

说明:

  • 用 ANTHROPIC_AUTH_TOKEN,不要用 ANTHROPIC_API_KEY:后者以 x-api-key 请求头发送,并且在交互模式下会先弹出是否使用该密钥的确认。

  • settings.json 里 env 的值优先于终端里的同名环境变量,不需要再写进 .zshrc 或 .bashrc。

  • 平台有多个模型时,可以给 Haiku 配一个更快的模型,给 Opus、Sonnet 配能力更强的模型,模型 ID 见模型列表。

  • 修改配置后,重启正在运行的 Claude Code。

可选设置

CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY: "1"

写在 env 中。Claude Code 启动时会读取平台的模型列表,并把平台模型加入 /model 的选择列表,切换模型时不用手动输入 ID。

CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC: "1"

写在 env 中。关闭版本检查、遥测等发往 Anthropic 和其他第三方服务的后台请求,所在网络无法访问这些服务时建议设置。它同时会关闭自动更新,需要自行更新 Claude Code。

验证

  1. 先直接请求接口,确认地址和密钥可用:

    curl --fail-with-body 'https://freeinference.qq.com/anthropic/v1/messages' \
      -H "Authorization: Bearer $TENCENT_INFERENCE_API_KEY" \
      -H "Content-Type: application/json" \
      -H "anthropic-version: 2023-06-01" \
      --data-binary @- <<'JSON'
    {
      "model": "deepseek-v4.1-flash",
      "max_tokens": 1024,
      "messages": [{"role": "user", "content": "用一句话介绍你自己"}]
    }
    JSON
    

    返回 200 和一段 "type": "message" 的 JSON,说明接口可用。

  2. 在项目目录中运行 claude,输入 /status:应当显示 Anthropic base URL 为 https://freeinference.qq.com/anthropic,认证方式为 ANTHROPIC_AUTH_TOKEN。

  3. 用 /model 查看或切换当前会话的模型。

选择模型

Claude Code 每次请求都带着很长的系统提示和大量工具定义,并通过工具调用读写文件、执行命令。请在模型列表里选择支持工具调用、上下文尽量长的模型。上下文较短的模型在长会话中容易超出长度限制,可以用 /compact 压缩对话,或开启新会话。

不可用的功能

通过第三方接口使用 Claude Code 时,依赖 Claude 账号或 Anthropic 云服务的功能不可用,例如 Remote Control、网页端与移动端的云端会话、语音输入等。命令行里的读写代码、执行命令等本地功能不受影响。

常见问题

现象

原因

处理

401 认证失败

API Key 缺失或无效

检查 settings.json 中的 ANTHROPIC_AUTH_TOKEN 与 ANTHROPIC_BASE_URL

404 Model '…' not found,或 “There's an issue with the selected model”

请求了 Claude 模型名,或该模型对你的账号不可用

按配置设置 model 和三个 ANTHROPIC_DEFAULT_*_MODEL,模型 ID 以 GET /v1/models 为准

429 Too many concurrent requests

Claude Code 的子任务同时发出的请求超过了账号的并发上限

稍后重试,或减少同时运行的会话;限制说明见 API 参考

429 Daily cost quota exceeded

当日额度已用完

等到额度重置;重置时间见控制台

对话变长后报错

超出模型的上下文长度

/compact 压缩对话,或换上下文更长的模型

参考