Claude Code 可以通过环境变量 ANTHROPIC_BASE_URL 来设置所使用的 ANTHROPIC 协议的 OpenAPI 。所以我们想在 Claude Code 中使用其它的 AI 模型比如 Kimi K2、DeepSeek V3 等,可以通过构造对应的 ANTHROPIC API 来实现。

另外 LiteLLM 作为 LLM API 网关,兼容了很多模型提供商,这给了我们很大的选择空间。

我使用火山引擎方舟的 OpenAPI 来使用 Kimi 和 DeepSeek 模型。下面介绍如何配置运行 LiteLLM 并在 Claude Code 中使用它。

配置并运行 LiteLLM

首先创建一个 LiteLLM 配置文件,比如 litellm_config.yaml

model_list:
  - model_name: "*haiku*"
    litellm_params:
      model: volcengine/kimi-k2-250711 # volcengine/deepseek-v3-250324
      api_key: os.environ/VOLCENGINE_API_KEY
  - model_name: "*sonnet*"
    litellm_params:
      model: volcengine/kimi-k2-250711 # volcengine/deepseek-r1-250528
      api_key: os.environ/VOLCENGINE_API_KEY
 
  - model_name: "*opus*"
    litellm_params:
      model: volcengine/kimi-k2-250711 # volcengine/deepseek-r1-250528
      api_key: os.environ/VOLCENGINE_API_KEY
 

我们使用 * 模糊匹配(例如 "*sonnet*" ),把 Anthropic 的不同模型指向我们想使用的模型(不同模型提供商的配置参考 LiteLLM 官方文档)并配置相应的密钥。 os.environ/VOLCENGINE_API_KEY 表示读取环境变量 VOLCENGINE_API_KEY 来获取内容。

推荐安装使用 uv 来运行 LiteLLM,简单便捷,以下默认 uv 已安装。

我们创建一个 bash 脚本 run.sh 配置环境变量并运行 LiteLLM 代理服务器:

#!/bin/bash
export VOLCENGINE_API_KEY=xxxx-key1 # AI 模型提供商的密钥
# export LITELLM_MASTER_KEY=xxxx-key2 # 可选,配置接口鉴权
# export LITELLM_SALT_KEY=xxxx-key3 # 可选,如果填写了 LITELLM_MASTER_KEY 需要填
 
uvx litellm[proxy] --config ./litellm_config.yaml --port 4000 # 指定配置文件及端口号,默认端口号为 4000

最后运行 run.sh 即可启动 LiteLLM 代理服务器,运行于 http://localhost4000/

配置 Claude Code

Claude Code 用户配置文件在 ~/.claude/settings.json ,内容如下:

{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "xxxx",
    "ANTHROPIC_BASE_URL": "http://localhost:4000"
  }
}

如果 LiteLLM 配置了 LITELLM_MASTER_KEY 需要将值填写到 ANTHROPIC_AUTH_TOKEN 的值。

保存配置后,执行 claude 命令会有类似以下文案提示你在使用自定义 API:

API Base URL: http://localhost:4000