Skip to Content
知识库第 2 期:打造你的 AI 工作栈第 2 篇:Agent ≠ LLM——换模型就是改一行配置

第 2 篇:Agent ≠ LLM——换模型就是改一行配置

第 1 篇你学会了在终端里叫 AI。但你敲 claude,它默认连的是 Anthropic 的服务器,跑的是 Claude 的模型。

那你想用别的模型呢?比如 DeepSeek 写中文更好、更便宜;或者你想跑本地的 Llama。

Claude Code 其实可以连它们。秘诀在几个环境变量里。


第一步:手动换一次

先看看你当前的 claude 是什么。在终端里敲:

claude "你现在是什么模型?说出你的模型名称和所属公司"

等几秒,它会回答你。大概是这样:

我是 Claude Sonnet 4.5,由 Anthropic 公司开发。

好,现在把它变成别的。

退出 claude(按 Ctrl + C),在终端里敲这三行:

export ANTHROPIC_BASE_URL="https://api.deepseek.com/anthropic" export ANTHROPIC_AUTH_TOKEN="sk-你的key" export ANTHROPIC_MODEL="deepseek-v4-flash[1m]"

每行敲完回车。终端不会显示任何东西——设环境变量就是这样,没消息就是成功了。

这三行告诉 claude 三件事:

  • ANTHROPIC_BASE_URL —— 别去 Anthropic 了,去这个地址
  • ANTHROPIC_AUTH_TOKEN —— 用这把钥匙
  • ANTHROPIC_MODEL —— 跑这个模型

deepseek-v4-flash[1m] 里的 [1m] 表示上下文长度——100 万 token。不同模型后面括号里的数字不一样,有的是 [1m](100 万),有的是 [256k](25.6 万)。照着写就行。

现在环境变了。同样在终端里敲:

claude "你现在是什么模型?说出你的模型名称和所属公司"

这次它读到的是你刚设的环境变量,会跑去 DeepSeek 那边回答。回答大概是这样:

我是 DeepSeek V4 Flash,上下文 1M,由深度求索公司开发。

同一个软件 claude,同一个提示词。只是改了三行环境变量,回答你的模型就变了。


第二步:存到 .zshrc

刚才你手动敲了三个 export,成功了。

但下次再打开终端,那些 export 还在吗?不在。 你关掉终端,手动设的环境变量就丢了。

每次要用都得重新敲一遍——太烦了。

那就把它们存起来,让终端每次打开时自动执行。存的地方叫 .zshrc

.zshrc 是你家目录里的一个文件,终端每次启动都会自动读它,执行里面的每一行。

打开它:

code ~/.zshrc

不懂这些符号? code 是用 VS Code 打开。没有的话用 open -a TextEdit ~/.zshrc~ 是你的家目录。. 开头的是隐藏文件。以后碰到不懂的命令,另开一个终端窗口贴过去问 AI 就行。

在文件末尾加上这三行:

export ANTHROPIC_BASE_URL="https://api.deepseek.com/anthropic" export ANTHROPIC_AUTH_TOKEN="sk-你的key" export ANTHROPIC_MODEL="deepseek-v4-flash[1m]"

保存,关掉。然后让终端重新读一遍:

source ~/.zshrc

source 就是「重新读一遍」,让改动立刻生效。

现在试一下:

claude "你现在是什么模型?说出你的模型名称和所属公司"

回答跟刚才一样——DeepSeek。但这次你不用手动敲 export 了,.zshrc 里的配置已经自动生效了。


第三步:升级成别名

现在你每次敲 claude,它都跑 DeepSeek。

但你不能永远只用 DeepSeek 啊。有时候用 MiniMax 跑快速任务,有时候用 GLM-5.2 写代码,有时候用 DeepSeek 写中文。

一个配置不够,你需要多个。每个模型一个别名。

.zshrc 里,把你之前加的那三行删掉(或者注释掉),换成这个:

# MiniMax 跑快速任务 claude-minimax() { export ANTHROPIC_BASE_URL="https://api.minimaxi.com/anthropic" export ANTHROPIC_AUTH_TOKEN="sk-你的key" export ANTHROPIC_MODEL="MiniMax-M3[1m]" claude "$@" } # GLM-5.2 写代码 claude-glm() { export ANTHROPIC_BASE_URL="https://api.chatglm.cn/anthropic" export ANTHROPIC_AUTH_TOKEN="sk-你的key" export ANTHROPIC_MODEL="GLM-5.2" claude "$@" } # DeepSeek 写中文 claude-deepseek() { export ANTHROPIC_BASE_URL="https://api.deepseek.com/anthropic" export ANTHROPIC_AUTH_TOKEN="sk-你的key" export ANTHROPIC_MODEL="deepseek-v4-flash[1m]" claude "$@" }

这叫函数——你把一串操作打包成一个名字。你在终端里敲 claude-deepseek,它就自动执行里面的每一行:设环境变量、启动 claude。

怎么读它:claude-deepseek() { ... } —— 就是「定义一个叫 claude-deepseek 的别名,它做的事情是花括号里面的这些」。

保存,source ~/.zshrc,然后试试:

claude-minimax "你现在是什么模型?"

我是 MiniMax-M3。

claude-glm "你现在是什么模型?"

我是 GLM-5.2。

claude-deepseek "你现在是什么模型?"

我是 DeepSeek V4 Flash。

同一个软件,不同的别名,连到不同的模型。

现在闭上眼睛想一下这个画面——

你在同一个项目目录下,开了三个终端窗口。左边跑 MiniMax 在处理一批文档,中间用 GLM 在写代码,右边用 DeepSeek 在写中文方案。三个模型同时干活,字符刷刷地往上滚。

一个显示器平铺 3 个窗口。如果你有两个显示器,就是 6 个。

你不需要切换软件、不需要退出一个再开另一个。每个终端就是一条独立的流水线,跑着不同的模型,干着不同的活。

你就是那个指挥台——看哪条线跑完了,切过去看一眼结果,扔下一个任务。

这就是多模型并联干活的样子。 那些一天烧上千万,上亿Token的AI玩家,今天讲的这些,就是他们AI工作台的原型。


那在 Claudian 里怎么配?

你如果在用 Obsidian 里的 Claudian,打开 Obsidian 设置 → 插件 → Claudian,你会看到它有好几个面板——claude、codex、opencode 都有。说明它其实是套了好几家的软件壳。

切换到 claude 面板,找到「自定义变量」,在输入框里填:

ANTHROPIC_API_KEY=你的key ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic ANTHROPIC_MODEL=deepseek-v4-flash[1m]

填完之后关闭设置,右边的聊天窗口刷新一下就行了。然后问一句,看看回复的模型变了没有。

不过 Claudian 这种方式有个限制:你在这配的 key 和模型,只能在 Claudian 里用。换成别的 Agent 软件,又得重新配一次。在 .zshrc 里配是通用的,所有软件都能读到。

但 Claudian 也有它不可替代的好处——它跟 Obsidian 绑得紧。

  • 你可以在笔记里框选一段文字,然后直接说「帮我把这段改成口语化」,不用复制粘贴。
  • 当前打开哪个笔记,它就自动知道你在说哪篇,不用告诉它路径。

两种方式不冲突。你在 .zshrc 里配好通用的 key 和别名,在任何软件里都能用。同时 Claudian 的这种「框选即改、打开即用」的便利,终端里的 claude 暂时还做不到。


现在你掌握了

三步走过来,你在实战中理解了这个链条:

  1. 手工 export → 亲眼看到环境变量变了,模型就变了
  2. 存到 .zshrc → 不用每次手动敲,终端启动时自动加载
  3. 升级成别名 → 一个模型一个名字,想用哪个敲哪个

这也是配置任何 AI 软件的通用思路——软件是壳,模型是芯。claude 这个壳怎么知道用哪个芯?看环境变量。你把环境变量包进别名里,换别名就是换模型。


下一篇: 每次跟 AI 对话都要写「用简单的话说」「去掉废话」「说人话」——烦不烦?能不能把这些常用指令存起来,一键调用?下一篇讲 Skill,就是干这个的。

Last updated on