Claude Code 接入国产大模型:通过 LiteLLM 网关对接 Kimi K3/GLM-5.3 / 豆包
本指南将介绍通过 LiteLLM 协议转换网关,让 Claude Code 接入 Kimi K3、GLM-5.3、豆包等最新国产大模型的完整配置方法,解决 Claude Code 仅支持 Anthropic 协议、无法直连 OpenAI 兼容接口的问题。
适用场景
我们团队在多个客户项目中验证,这套方案特别适合以下场景:
- 已习惯 Claude Code 的终端交互逻辑和 Agent 能力(文件读写、命令执行),但需要使用 Kimi K3、GLM-5.3 等最新国产大模型处理国内业务代码、对数据合规有要求的开发者
- 持有 Kimi、智谱 GLM、火山方舟豆包等国产大模型的 API 额度,希望在 Claude Code 中复用这些额度、降低使用成本的个人开发者和小团队
- 需要在同一终端工具中切换对比 Kimi K3、GLM-5.3 等不同国产大模型的代码生成、调试效果,进行技术选型的调研场景
不适用场景
以下情况我们不推荐使用这套方案,建议选择更匹配的工具:
- 如果你只使用 Kimi K3 一个模型,不需要 LiteLLM 网关 ——Kimi K3 官方已提供 Anthropic 兼容 API 端点,可直接在 Claude Code 中配置
ANTHROPIC_BASE_URL接入,方案更轻量(详见 FAQ Q6) - 如果你主要使用 VS Code、JetBrains 等图形化 IDE 且偏好行内自动补全,建议使用 Trae、Cursor 等桌面端 AI IDE,Claude Code 是终端对话式工具,不提供编辑器内联补全
- 如果你完全没有命令行和服务部署经验,部署和维护 LiteLLM 网关会有一定学习成本,建议直接使用各平台官方客户端或支持 OpenAI 兼容接口的终端工具(如 OpenCode)
开始配置前,请确保你已经准备好以下条件:
- 开发环境:macOS 12+ / Linux 内核 4.15+ / Windows 10+ WSL2 环境(LiteLLM 网关和 Claude Code 均推荐在 macOS/Linux/WSL2 下运行)
- Claude Code:已安装最新稳定版 Claude Code 并完成初始登录(首次使用需登录 Anthropic 账号,配置第三方模型后可退出官方账号)
- 网关运行环境:Python 3.8+ 和 pip(用于部署 LiteLLM 网关),或 Docker(用于容器化部署 LiteLLM)
- 模型 API 密钥:已开通对应大模型平台的 API 服务并获取 API Key(Kimi 开放平台支持 Kimi K3、智谱 AI 开放平台支持 GLM-5.3、火山引擎方舟平台支持豆包系列模型,需开通 API 调用权限并有可用额度)
- 预计耗时:20-30 分钟(含 LiteLLM 网关部署和 Claude Code 配置验证)
步骤 1:部署 LiteLLM 协议转换网关
步骤说明:Claude Code 只识别 Anthropic 兼容协议,而 GLM-5.3、豆包等国产大模型通常只提供 OpenAI 兼容接口,二者协议不兼容,无法直接对接。LiteLLM 是一个开源的 LLM 网关,支持将 OpenAI 兼容接口转换为 Anthropic 兼容格式,充当二者之间的翻译层。这一步是整个方案的核心,跳过会导致 Claude Code 无法连接国产模型。
我们推荐使用 pip 方式部署 LiteLLM,适合本地开发和小团队使用。
安装 LiteLLM:
# 使用 pip 安装 LiteLLM pip install litellm[proxy] # 验证安装 litellm --version
创建网关配置文件:在项目目录下创建 litellm_config.yaml,配置需要接入的国产大模型。以下为 Kimi K3、GLM-5.3、豆包三个平台的参考配置:
model_list: - model_name: kimi-k3 litellm_params: model: openai/kimi-k3 api_key: os.environ/KIMI_API_KEY api_base: https://api.moonshot.cn/v1 - model_name: glm-5.3 litellm_params: model: openai/glm-5.3 api_key: os.environ/GLM_API_KEY api_base: https://open.bigmodel.cn/api/paas/v4 - model_name: doubao-seed-code litellm_params: model: openai/YOUR_ARK_ENDPOINT_ID api_key: os.environ/ARK_API_KEY api_base: https://ark.cn-beijing.volces.com/api/v3
参数说明:
model_name:LiteLLM 网关中的模型标识,Claude Code 后续通过这个名称调用对应模型,可自定义model:底层真实模型标识,openai/前缀表示使用 OpenAI 兼容格式调用- Kimi K3 的模型 ID 为
kimi-k3(2026 年 7 月发布,2.8 万亿参数,支持 1M token 上下文和视觉理解) - GLM-5.3 的模型 ID 为
glm-5.3(2026 年 8 月发布,7533 亿参数,编程能力较上一代提升 50%) - 豆包需替换
YOUR_ARK_ENDPOINT_ID为火山方舟控制台的推理接入点 ID(ep-开头),推荐使用doubao-seed-code或doubao-seed-2.1-pro模型创建接入点
- Kimi K3 的模型 ID 为
api_key:通过环境变量引用 API Key,避免明文写入配置文件api_base:对应平台的 OpenAI 兼容接口地址- Kimi 国内接口:
https://api.moonshot.cn/v1 - 智谱 GLM 接口:
https://open.bigmodel.cn/api/paas/v4 - 豆包普通在线推理接口:
https://ark.cn-beijing.volces.com/api/v3
- Kimi 国内接口:
💡 提示:以上配置字段基于 LiteLLM 通用 OpenAI 兼容模式,如最新版 LiteLLM 配置格式有调整,请以 LiteLLM 官方文档 为准。豆包用户如开通了 Coding Plan 套餐,api_base 应使用 https://ark.cn-beijing.volces.com/api/coding/v3,使用普通接口地址不会消耗套餐额度。
启动网关服务:
# 设置 API Key 环境变量(替换为你自己的密钥) export KIMI_API_KEY="your_kimi_api_key" export GLM_API_KEY="your_glm_api_key" export ARK_API_KEY="your_ark_api_key" # 启动 LiteLLM 网关,默认监听 4000 端口 litellm --config litellm_config.yaml --port 4000
预期结果:终端输出 LiteLLM 启动成功的日志,显示网关运行在 http://0.0.0.0:4000,并列出已加载的模型列表(kimi-k3、glm-5.3、doubao-seed-code)。保持这个终端窗口运行,不要关闭。
⚠️ 常见错误:启动 LiteLLM 时报错 "Address already in use"
原因:4000 端口已被其他进程占用,常见于之前启动的 LiteLLM 进程未正常关闭,或其他服务占用了该端口。
解决方法:更换端口启动(如 --port 4001),或先终止占用 4000 端口的进程(macOS/Linux 执行 lsof -ti:4000 | xargs kill -9),再重新启动。注意 Claude Code 端的 ANTHROPIC_BASE_URL 端口要与网关实际端口保持一致。
步骤 2:配置 Claude Code 接入 LiteLLM 网关
步骤说明:LiteLLM 网关启动后,我们需要在 Claude Code 中配置环境变量,将 API 请求指向本地 LiteLLM 网关。Claude Code 通过 ANTHROPIC_BASE_URL 环境变量识别自定义 API 端点,所有请求会发送到该地址而非 Anthropic 官方服务器。这一步是对接的关键,配置错误会导致 Claude Code 仍连接官方模型或连接失败。
Claude Code 的全局配置文件路径:
- macOS/Linux:
~/.claude/settings.json - Windows:
%USERPROFILE%\.claude\settings.json
如果文件不存在,手动创建目录和文件。在配置文件中添加以下内容:
{ "env": { "ANTHROPIC_BASE_URL": "http://localhost:4000", "ANTHROPIC_AUTH_TOKEN": "sk-litellm-master-key", "ANTHROPIC_MODEL": "kimi-k3", "ANTHROPIC_SMALL_FAST_MODEL": "kimi-k3" } }
参数说明:
ANTHROPIC_BASE_URL:LiteLLM 网关的地址,默认http://localhost:4000,如修改了端口需同步更改ANTHROPIC_AUTH_TOKEN:LiteLLM 网关的认证密钥,本地部署可使用任意非空字符串(如sk-litellm-master-key),生产环境建议在 LiteLLM 配置中设置真实的 master keyANTHROPIC_MODEL:默认使用的模型名称,必须与 LiteLLM 配置中的model_name完全一致(如kimi-k3、glm-5.3、doubao-seed-code)。这里默认设为 Kimi K3,你可以根据自己的需求改为其他模型ANTHROPIC_SMALL_FAST_MODEL:用于后台轻量任务的模型,建议与主模型设为同一个,避免调用不存在的模型导致报错
🔒 安全提示:ANTHROPIC_AUTH_TOKEN 虽然是本地网关的密钥,但仍建议避免使用过于简单的字符串。如 LiteLLM 网关暴露到局域网或公网,必须在 LiteLLM 配置中设置强 master key,并配置防火墙限制访问来源。配置文件建议设置文件权限为仅所有者可读写(macOS/Linux 执行 chmod 600 ~/.claude/settings.json)。
预期结果:保存配置文件后,完全退出 Claude Code(如已运行)并重新启动,Claude Code 会自动读取新的环境变量配置,所有 API 请求将发送到本地 LiteLLM 网关。
⚠️ 常见错误:配置后 Claude Code 仍连接官方 Claude 模型
原因:Claude Code 可能缓存了之前的登录状态或配置,或者 settings.json 的 env 字段层级写错(如写在了根层级而非 env 对象内)。另外,如果之前登录过 Anthropic 账号,部分版本的 Claude Code 可能优先使用登录态的官方端点。
解决方法:先在 Claude Code 中执行 /logout 退出官方账号,完全关闭 Claude Code 进程后重新启动。检查 settings.json 格式是否正确,ANTHROPIC_BASE_URL 等字段必须在 env 对象内部。可在终端执行 echo $ANTHROPIC_BASE_URL 确认环境变量未被 shell 层面的配置覆盖。
步骤 3:切换模型并验证基础对话
步骤说明:配置完成后,先测试基础对话功能是否正常,确认 LiteLLM 网关和 Claude Code 的连接没有问题,再测试更复杂的 Agent 功能。Claude Code 支持通过 /model 命令切换不同模型,我们可以依次测试 Kimi K3、GLM-5.3、豆包三个模型是否都能正常调用。
操作方法:在终端中启动 Claude Code:
claude
启动后,使用 /model 命令切换到指定模型:
/model glm-5.3
切换成功后,输入测试问题:
用Python写一个快速排序函数,带中文注释和类型注解
预期结果:模型正常流式返回带注释的 Python 代码,没有报错信息,对话流程顺畅。返回的代码可以直接复制运行。依次执行 /model kimi-k3 和 /model doubao-seed-code,确认三个模型都能正常响应。
💡 提示:/model 命令后接的模型名称必须与 LiteLLM 配置中的 model_name 完全一致,大小写敏感。如果不确定模型名称,可以在 LiteLLM 网关的启动日志中查看已加载的模型列表。
完成上述 3 步后,你可以通过一个完整的 Agent 任务验证配置是否成功,包括文件读写和命令执行能力:
测试用例:在一个空目录下启动 Claude Code,切换到 GLM-5.3 模型(/model glm-5.3),输入指令:"帮我创建一个名为 calc.py 的文件,实现加减乘除四个函数,每个函数带中文注释,然后执行一个加法测试用例验证功能正常"。
验证成功标志:
- Claude Code 自动创建 calc.py 文件,文件内容包含四个带注释的函数
- 自动执行 python 命令运行测试,终端输出正确的计算结果
- 整个过程没有弹出 API 错误或模型不存在的提示
- 查看 LiteLLM 网关的终端日志,能看到对应的 API 请求记录,状态码为 200,请求的模型名称为 glm-5.3
验证失败常见原因及排查:
- 401 Unauthorized:LiteLLM 网关认证失败,检查
ANTHROPIC_AUTH_TOKEN是否与 LiteLLM 配置的 master key 一致(本地部署如未设置 master key,使用任意非空字符串即可) - 404 Model Not Found:模型名称不匹配,检查
/model后输入的名称是否与 LiteLLM 配置中的model_name完全一致(大小写敏感) - 连接超时 / Connection Refused:LiteLLM 网关未启动或端口不匹配,确认网关终端窗口仍在运行,
ANTHROPIC_BASE_URL的端口与网关实际监听端口一致 - 工具调用失败:部分国产模型对 Anthropic 协议的 tool use 格式支持不完善,可能导致文件读写、命令执行等 Agent 功能异常。Kimi K3 和 GLM-5.3 作为最新旗舰模型,工具调用兼容性较好;如遇到问题,建议切换模型测试,或使用 LiteLLM 的工具调用转换功能(需在 LiteLLM 配置中开启)
Q1:接入国产模型后,Claude Code 的所有功能都能用吗?
A:基础对话、代码生成功能可以正常使用,但 Agent 能力(文件读写、命令执行、多步任务编排)取决于接入的模型和 LiteLLM 网关对 Anthropic 协议 tool use 格式的支持程度。Kimi K3 和 GLM-5.3 作为 2026 年最新发布的旗舰模型,工具调用能力较强,大部分 Agent 场景可以正常使用。Claude Code 的部分高级功能(如 Extended Thinking 深度思考、项目记忆联动)依赖 Claude 模型的定制化能力,第三方模型可能不支持。
Q2:LiteLLM 网关必须一直运行吗?关闭后 Claude Code 还能用吗?
A:是的,LiteLLM 网关作为协议转换层必须持续运行,Claude Code 才能通过它调用国产模型。如果关闭网关,Claude Code 的 API 请求会连接失败。你可以将 LiteLLM 配置为系统服务开机自启,或使用 Docker 容器化部署并设置自动重启,减少手动维护成本。
Q3:什么情况下不建议用 Claude Code + LiteLLM 接入国产模型?
A:如果你只需要基础对话和代码生成,不需要 Claude Code 的 Agent 能力,直接使用支持 OpenAI 兼容接口的终端工具(如 OpenCode)更简单,不需要部署额外网关。如果你对延迟非常敏感,LiteLLM 网关会增加一层网络转发,首字延迟会略有增加。如果你需要严格的合规审计,建议直接使用各平台官方客户端,避免第三方网关带来的额外数据路径。
Q4:token 消耗是算 Claude 订阅的还是国产模型平台的?
A:所有 token 消耗都计入你对应国产大模型平台的 API 额度,与 Anthropic 的 Claude 订阅无关。Claude Code 客户端本身免费,但使用官方 Claude 模型需要 Anthropic 订阅或 API 额度;通过 LiteLLM 接入第三方模型后,费用由第三方模型平台收取。LiteLLM 本身是开源免费工具,不收取额外费用。
Q5:可以同时配置多个模型,在 Claude Code 中随时切换吗?
A:可以。在 LiteLLM 配置文件的 model_list 中添加多个模型配置,启动网关后即可在 Claude Code 中通过 /model 模型名称 随时切换,不需要修改配置文件或重启网关。适合需要对比 Kimi K3、GLM-5.3 等不同模型编码效果的场景。
Q6:Kimi K3 可以不通过 LiteLLM,直接接入 Claude Code 吗?
A:可以。Kimi K3 官方同时提供 OpenAI 和 Anthropic 两种兼容 API,因此可以直接在 Claude Code 中配置,不需要 LiteLLM 网关转换。在 ~/.claude/settings.json 中配置:
{ "env": { "ANTHROPIC_BASE_URL": "https://api.moonshot.cn", "ANTHROPIC_AUTH_TOKEN": "your_kimi_api_key", "ANTHROPIC_MODEL": "kimi-k3" } }
注意 Kimi 的 Anthropic 兼容端点地址可能随版本调整,具体以 Kimi 官方文档为准。如果你只使用 Kimi K

