跳到主要内容

多模型配置

学会配置多个 AI 服务,根据不同场景选择最适合的模型,既能保证效果又能控制成本。

概述

Claude Code 支持通过环境变量配置不同的 AI 服务。通过编写简单的脚本,可以实现在多个模型之间一键切换,让你在不同场景下使用最合适的模型。

前置要求

安装 Node.js

Claude Code 依赖 Node.js 环境:

# macOS (使用 Homebrew)
brew install node

# macOS (使用 pkg)
pkg install nodejs

# 验证安装
node --version
npm --version

安装 Claude Code CLI

# 全局安装 Claude Code
npm install -g @anthropic-ai/claude-code

# 验证安装
claude --version

推荐的 AI 服务

以下是一些常用的 AI 服务,可以根据需求选择:

1. GLM(智谱清言)

  • 优点:稳定可靠,日常使用效果好
  • 适用场景:日常开发、代码生成、调试

2. 豆包(字节跳动)

  • 优点:新发布,针对编程优化
  • 适用场景:专业编程、复杂逻辑实现

3. Kimi(月之暗面)

  • 优点:长文本支持,性价比高
  • 适用场景:大量代码处理、文档生成

4. DeepSeek

  • 优点:开源模型,可自部署
  • 适用场景:私有化部署、数据敏感场景

配置步骤

Shell 函数配置(推荐)

这是最优雅的切换方案,通过在 Shell 配置文件中定义函数,一个命令就能切换模型。

安装和配置 Zsh

检查当前 Shell

echo $SHELL  # 查看当前使用的 Shell

安装 Zsh

# macOS (使用 Homebrew)
brew install zsh

# Ubuntu/Debian
sudo apt-get install zsh

# CentOS/RHEL
sudo yum install zsh

# 设置为默认 Shell
chsh -s $(which zsh)

了解 Shell 配置文件

Zsh 配置文件说明

  • ~/.zshrc:交互式 Shell 的配置文件,每次打开终端都会加载
  • 适合定义:别名(alias)、函数、环境变量、提示符等
  • 修改后需要使用 source ~/.zshrc 重新加载

环境变量持久化

  • 使用 export 命令定义的环境变量只在当前会话有效
  • 要让环境变量永久生效,必须写入配置文件
  • 子进程会继承父进程的环境变量

函数定义技巧

  • 函数名使用有意义的别名,如 cc-glm
  • 使用 "$@" 传递所有参数给 claude 命令
  • 在函数中可以使用条件判断,实现更复杂的逻辑

1. 编辑 Shell 配置文件

# 如果使用 zsh
vim ~/.zshrc

# 如果使用 bash
vim ~/.bashrc

2. 添加模型切换函数

在文件末尾添加以下内容:

# ==============================================
# Claude Code 多模型配置
# ==============================================

# GLM 模型配置
cc-glm() {
echo "🚀 启动 Claude Code 环境,使用 GLM 模型..."
export ANTHROPIC_BASE_URL="https://open.bigmodel.cn/api/anthropic"
export ANTHROPIC_AUTH_TOKEN="你的GLM_API_KEY"
export API_TIMEOUT_MS="3000000"
export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC="1"
claude "$@"
}

# 豆包模型配置
cc-doubao() {
echo "🚀 启动 Claude Code 环境,使用豆包模型..."
export ANTHROPIC_BASE_URL="https://ark.cn-beijing.volces.com/api/v3"
export ANTHROPIC_AUTH_TOKEN="你的豆包_API_KEY"
export ANTHROPIC_MODEL="doubao-code-model"
claude "$@"
}

# Kimi 模型配置
cc-kimi() {
echo "🚀 启动 Claude Code 环境,使用 Kimi 模型..."
export ANTHROPIC_BASE_URL="https://api.kimi.com/coding/"
export ANTHROPIC_AUTH_TOKEN="你的Kimi_API_KEY"
export ANTHROPIC_MODEL="kimi-for-coding"
claude "$@"
}

# DeepSeek 模型配置
cc-deepseek() {
echo "🚀 启动 Claude Code 环境,使用 DeepSeek 模型..."
export ANTHROPIC_BASE_URL="https://api.deepseek.com/v1"
export ANTHROPIC_AUTH_TOKEN="你的DeepSeek_API_KEY"
export ANTHROPIC_MODEL="deepseek-coder"
claude "$@"
}

# 查看当前模型配置
cc-current() {
echo "当前 Claude Code 配置:"
echo "Base URL: ${ANTHROPIC_BASE_URL:-'未设置'}"
echo "Model: ${ANTHROPIC_MODEL:-'未设置'}"
echo "API Key: ${ANTHROPIC_AUTH_TOKEN:+已设置}"
}

# 切换回官方 Claude
cc-claude() {
echo "🚀 启动 Claude Code 环境,使用官方 Claude 模型..."
unset ANTHROPIC_BASE_URL
unset ANTHROPIC_MODEL
export ANTHROPIC_AUTH_TOKEN="你的官方Claude_API_KEY"
claude "$@"
}

3. 重新加载配置

# zsh
source ~/.zshrc

# bash
source ~/.bashrc

4. 使用方法

# 使用不同的模型
cc-glm # 切换到 GLM 模型
cc-doubao # 切换到豆包模型
cc-kimi # 切换到 Kimi 模型
cc-deepseek # 切换到 DeepSeek 模型
cc-claude # 切换回官方 Claude

# 查看当前配置
cc-current

4. 验证配置

重新打开终端或执行 source ~/.zshrc 后,可以验证配置是否生效:

# 查看函数是否定义成功
type cc-glm

# 测试环境变量是否设置
cc-glm --help

# 查看当前生效的配置
cc-current

5. Shell 函数进阶用法

条件判断示例

# 智能选择模型
cc-auto() {
# 检测项目类型
if [[ -f "package.json" ]]; then
echo "检测到 Node.js 项目,使用豆包模型"
cc-doubao "$@"
elif [[ -f "requirements.txt" ]] || [[ -f "pyproject.toml" ]]; then
echo "检测到 Python 项目,使用 DeepSeek 模型"
cc-deepseek "$@"
else
echo "使用默认 GLM 模型"
cc-glm "$@"
fi
}

批量操作函数

# 批量处理多个文件
cc-batch() {
model=$1
shift
for file in "$@"; do
echo "处理文件: $file"
cc-$model "$file"
done
}

带参数的快捷方式

# 快速启动特定模式
cc-debug() {
cc-glm --debug "$@"
}

cc-quiet() {
cc-doubao --quiet "$@"
}

使用建议

场景选择

  1. 日常开发:使用 GLM 或 Kimi,性价比高
  2. 复杂项目:使用豆包,编程能力强
  3. 大量生成:使用 Kimi,成本低
  4. 关键任务:使用官方 Claude,效果最好

成本控制

  1. 设置每日使用限额
  2. 根据任务复杂度选择模型
  3. 利用免费的测试额度
  4. 关注各平台的优惠活动

最佳实践

  1. 保存对话记录:重要对话使用官方 Claude
  2. 批量处理:简单任务使用便宜模型
  3. 混合使用:创意用 Claude,实现用其他模型
  4. 监控使用量:定期检查 API 使用情况

常见问题

Q: 模型切换不生效?

确保:

  1. 重新加载了 Shell 配置:source ~/.zshrc
  2. API 密钥正确设置
  3. 网络连接正常

Q: 如何查看当前使用的模型?

使用我们创建的命令:

cc-current

Q: 可以同时使用多个模型吗?

可以在不同的终端窗口使用不同的模型,每个进程独立配置。

Q: 模型效果差异大吗?

  • 官方 Claude:综合能力最强,但最贵
  • 豆包:编程专项优化,代码生成效果好
  • GLM:平衡型,日常使用足够
  • Kimi:长文本处理优秀,适合大量代码

进阶技巧

1. 项目特定配置

为不同项目配置默认模型:

# 在项目根目录创建 .claude-config
echo "MODEL=glm" > .claude-config

# 在启动脚本中读取
if [ -f .claude-config ]; then
MODEL=$(cat .claude-config)
cc-$MODEL
fi

2. 智能切换

根据文件类型或任务自动选择模型:

cc-smart() {
# 检测文件类型
if [[ "$1" == *.py ]]; then
cc-deepseek "$@"
elif [[ "$1" == *.js ]]; then
cc-doubao "$@"
else
cc-glm "$@"
fi
}

3. 使用统计

记录各模型的使用情况:

# 在模型函数中添加日志
cc-glm() {
echo "$(date): GLM" >> ~/.claude-usage.log
# ... 其他配置
claude "$@"
}

总结

通过配置多个 AI 服务,你可以:

  1. 降低成本:根据任务选择合适的模型
  2. 提高效率:不同模型各有优势
  3. 灵活切换:一个命令即可切换
  4. 优化体验:获得最佳的性价比

开始配置你的多模型环境吧!

相关资源