如何在ubuntu20.04系统配置Claude code使用中国大模型

1. 安装claude code

  1. 安装nvm

  2. 通过nvm 安装node.js

bash 复制代码
$ nvm --version
0.39.3

$ npm --version
11.12.1

$ node --v
v22.14.0
  1. 安装 claude-code
bash 复制代码
npm install -g @anthropic-ai/claude-code

2. 安装litellm

  1. 安装python3.10

  2. 创建python虚拟环境ccx

  3. 安装litellm

bash 复制代码
#$ mkvirtualenv ccx -p /usr/bin/python3.10 
(ccx) $ pip install litellm 
(ccx) $ pip install 'litellm[proxy]'
(ccx) $ pip install httpx[socks]

3. 配置claude code

3.1 启用litellm

在~/.zshrc文件中添加以下内容:

bash 复制代码
export ZHIPU_API_KEY=<your_api_key>

运行source ~/.zshrc命令,使环境变量生效。

创建 litellm_config.yaml(与下文启动命令文件名一致),并添加以下内容。Claude Code 会通过 Anthropic 接口请求诸如 claude-sonnet-4-6 等官方模型名,因此需要一条 model_name: "*" 的通配路由,把这些名称全部转到实际使用的国内模型。

yaml 复制代码
model_list:
#   - model_name: qwen
#     litellm_params:
#       model: dashscope/qwen-plus

#   - model_name: kimi
#     litellm_params:
#       model: moonshot/moonshot-v1-8k

  - model_name: "*"
    litellm_params:
      model: zai/glm-5.1
      api_key: os.environ/ZHIPU_API_KEY

  - model_name: glm
    litellm_params:
      model: zai/glm-5.1
      api_key: os.environ/ZHIPU_API_KEY

litellm_settings:
  drop_params: true

Claude Code 会带上 Anthropic 专有字段(如 context_management),转给 GLM 时需丢弃;drop_params: true 即由 LiteLLM 自动去掉后端不支持的参数。

运行 LiteLLM 代理:

bash 复制代码
(ccx) ➜  ccx litellm --config litellm_config.yaml --port 4000
INFO:     Started server process [379725]
INFO:     Waiting for application startup.

   ██╗     ██╗████████╗███████╗██╗     ██╗     ███╗   ███╗
   ██║     ██║╚══██╔══╝██╔════╝██║     ██║     ████╗ ████║
   ██║     ██║   ██║   █████╗  ██║     ██║     ██╔████╔██║
   ██║     ██║   ██║   ██╔══╝  ██║     ██║     ██║╚██╔╝██║
   ███████╗██║   ██║   ███████╗███████╗███████╗██║ ╚═╝ ██║
   ╚══════╝╚═╝   ╚═╝   ╚══════╝╚══════╝╚══════╝╚═╝     ╚═╝


#------------------------------------------------------------#
#                                                            #
#            'This product would be better if...'             #
#        https://github.com/BerriAI/litellm/issues/new        #
#                                                            #
#------------------------------------------------------------#

 Thank you for using LiteLLM! - Krrish & Ishaan



Give Feedback / Get Help: https://github.com/BerriAI/litellm/issues/new


LiteLLM: Proxy initialized with Config, Set models:
    qwen
    kimi
    glm
INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:4000 (Press CTRL+C to quit)

3.2 配置claude code

  1. 在~/.zshrc文件中添加以下内容:
bash 复制代码
export ANTHROPIC_API_KEY=dummy
export ANTHROPIC_BASE_URL=http://127.0.0.1:4000
  1. 运行source ~/.zshrc命令,使环境变量生效。

  2. 运行claude命令,并输入以下内容:

bash 复制代码
$ claude
  • Choose the text style that looks best with your terminal
  • ANTHROPIC_API_KEY: sk-ant-...dummy 选择yes
  • Enter
  • yes
  1. 如果运行claude初始化配置有问题,则执行以下命令重新配置:
bash 复制代码
$ rm -rf ~/.claude*
$ claude

4. 测试claude code

  1. 运行claude命令,并输入以下内容:
bash 复制代码
$ claude
> 写一个python函数,判断质数
❯ 
相关推荐
Uncertainty!!5 小时前
Windows 10 与 Ubuntu 22.04 通过 Samba 共享文件夹
windows·ubuntu·共享文件夹
缘友一世6 小时前
GLM5.3 CyberSec w4A16本地部署[2]:并行策略与 PP 切分
ubuntu·vllm·glm5.3 cybersec
QMCY_jason7 小时前
ubuntu x86_64架构的编译 aarch64架构的程序
linux·运维·ubuntu
.道阻且长.8 小时前
Linux软件包管理器
linux·运维·ubuntu·职场和发展·centos
陈让然19 小时前
WSL 桥接设置静态IP(快速)
linux·网络·ubuntu
荒--2 天前
Ubuntu软件包查询,弹框下载文件
运维·服务器·ubuntu
闲云自留地2 天前
CentOS 搬 Ubuntu 24.04:yum 变 apt、防火墙、SELinux、root 全差异避坑
linux·ubuntu·centos
xiaobobo33302 天前
Ubuntu 26.04环境中如何使用中文man手册以及man手册默认中文显示
ubuntu·中文man手册·man手册默认中文显示·简化man·cheat
菜菜的院子2 天前
WSL2 运行 Ubuntu 26.04 完整 GNOME 桌面(WSLg Wayland)
linux·运维·ubuntu·wsl
KIDULT°2 天前
Kubeadm 部署 Kubernetes v1.30.2 实战:Ubuntu24.04 三节点集群 + 排坑记录
ubuntu·云原生·容器·kubernetes·k8s