十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

把 Claude Code 的 ANTHROPIC_BASE_URL 改到 TaoToken 之后,GLM 和 Kimi 不用再各写一份 export

把 Claude Code 的 ANTHROPIC_BASE_URL 改到 TaoToken 之后,GLM 和 Kimi 不用再各写一份 export 原文「接入第三方」那一节里Claude Code 接 Kimi 2.5 和 GLM-4.7 要分别 export ANTHROPIC_BASE_URL、ANTHROPIC_AUTH_TOKEN、ANTHROPIC_MODEL还要把 HAIKU/SONNET/OPUS 的默认模型一起对齐。每次重启终端都要重新 export 一遍写进 .zshrc 或 .bashrc 又会互相覆盖。TaoToken 的做法是只固定一个 Base URL 和一把 Key模型在会话里用 /model 切。先去 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end 创建 Key后面我们把 ~/.claude/settings.json 一次写清。这样 GLM-4.7 和 kimi-k2.5 共用同一通道不用再为每家服务商维护一套环境变量。1. 旧做法为什么在 GLM 与 Kimi 之间来回打架1.1 原文那两段 export 的实际操作原文里 GLM 是一套export ANTHROPIC_BASE_URLhttps://open.bigmodel.cn/api/anthropic export ANTHROPIC_AUTH_TOKEN你的API密钥 export ANTHROPIC_MODELGLM-4.7 export ANTHROPIC_DEFAULT_HAIKU_MODELGLM-4.7 export ANTHROPIC_DEFAULT_SONNET_MODELGLM-4.7 export ANTHROPIC_DEFAULT_OPUS_MODELGLM-4.7Kimi 又是另一套export ANTHROPIC_BASE_URLhttps://api.moonshot.cn/anthropic export ANTHROPIC_AUTH_TOKEN你的API密钥 export ANTHROPIC_MODELkimi-k2.5 export ANTHROPIC_DEFAULT_HAIKU_MODELkimi-k2.5 export ANTHROPIC_DEFAULT_SONNET_MODELkimi-k2.5 export ANTHROPIC_DEFAULT_OPUS_MODELkimi-k2.5这两套配置里Base URL和Key都绑在具体供应商上模型名只是其中一个变量。想切模型就得改根地址和钥匙。原文也承认写进 .zshrc 或 .bashrc 之后每次重启终端都还要重新 export很烦。如果两个终端同时开一个窗口是 GLM一个窗口是 Kimi过一会儿就分不清哪个 export 生效了。项目旧做法GLM/Kimi 各一套TaoToken 统一通道Base URLopen.bigmodel.cn 或 api.moonshot.cnhttps://taotoken.net/apiKey每家一把分别保存一把 YOUR_API_KEY模型切换改 export重启终端/model 或启动参数配置文件.zshrc / .bashrc~/.claude/settings.json1.2 问题不在模型而在 Base URL 和 Key 被供应商绑定Claude Code 认的入口就两个ANTHROPIC_BASE_URL指到哪个 API 地址ANTHROPIC_AUTH_TOKEN用哪把 Key。模型 ID 只是请求里的参数。旧做法把入口地址和钥匙都写死在某个供应商的环境变量里所以每换一家就要改根地址、换钥匙、再对齐默认模型。TaoToken 这类统一 API 通道解决的是入口问题把 GLM、Kimi 这些模型放在同一个兼容通道后面Claude Code 只认一个 Base URL 和一把 Key。模型切换变成会话内的 /model 操作而不是每次改环境变量。这个思路和原文里写两套 export 并不冲突你仍然是在接第三方模型只是不再把「供应商地址」和「模型选择」绑在一起。Claude Code 侧只维护一份通道配置GLM-4.7 和 kimi-k2.5 共用同一个入口。以后再加别的模型也是去模型广场看 ID而不是再往 .zshrc 里塞一组新 export。1.3 可以保留旧终端习惯但别让旧 export 抢配置如果你之前已经把 GLM 或 Kimi 的 export 写进 .zshrc、.bashrc、PowerShell 的 $PROFILE改 settings.json 之前先注释掉。Claude Code 读环境变量的优先级通常高于 settings.json旧 export 还在的话你会以为配置没生效。可以开新终端执行env | grep ANTHROPIC看到 open.bigmodel.cn 或 api.moonshot.cn 就说明旧变量还在。这一步不需要删 Key只是让 Claude Code 从 settings.json 里读统一的 Base URL 和 Token。2. 去 TaoToken 拿一把 Key先看清 GLM-4.7 与 kimi-k2.5 的模型 ID2.1 注册、创建 API Key、找到模型广场打开 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end 注册并登录进控制台创建 API Key复制出来先存到密码管理器后面用 YOUR_API_KEY 占位。接着去模型广场看当前可用的模型 IDGLM-4.7 和 kimi-k2.5 的准确写法以广场当时列表为准。不要凭记忆补日期后缀也不要把大小写写错。原文里 export ANTHROPIC_MODELGLM-4.7 和 kimi-k2.5 是当时的示例现在配置时以模型广场为准。这一步和原文「申请 API Key → 配置环境变量 → 启动」的节奏一样只是原来要申请两家、复制两把钥匙现在只创建一把。Key 建好之后不要急着关页面顺手把模型广场里的 GLM-4.7、kimi-k2.5 对应 ID 复制到记事本。后面 settings.json 和 /model 都要用这个 ID先复制比来回猜省时间。2.2 为什么要先确认模型 IDClaude Code 启动时会读取ANTHROPIC_MODEL会话里 /model 切换时也要用模型 ID。模型 ID 写错常见表现是模型不存在、请求 404或者回复里提示当前模型不可用。模型广场里的列表就是当前通道实际能接的模型先把 GLM-4.7 和 kimi-k2.5 对应的 ID 复制到记事本再开始改配置。这样后面 /model 来回切的时候不用猜也不会把旧文章里的模型名直接当成现在的正式 ID。2.3 准备一份 settings.json而不是三份 export原文的建议是把两套 export 写进 .zshrc 或 .bashrc。更省事的办法是写~/.claude/settings.json的 env 字段。这个文件在 Windows 下是C:\Users\你的用户名\.claude\settings.json在 macOS 和 Linux 下是~/.claude/settings.json。它跟着 Claude Code 启动自动加载不用每次开终端都 source。我们只在这里固定 Base URL 和 Key模型可以先给一个默认也可以留到会话里切。这样 GLM 和 Kimi 共用同一把 Key不再各写一份 export。3. 在 ~/.claude/settings.json 里把 Claude Code 指到 TaoToken3.1 一份能直接抄的 settings.json先备份原来的 settings.json然后用编辑器打开。下面这份只固定通道和 Key模型给一个默认值方便第一次启动就能用{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_AUTH_TOKEN: YOUR_API_KEY, ANTHROPIC_MODEL: GLM-4.7 } }注意 Base URL 末尾不要加/v1不要加任何 UTM 参数。ANTHROPIC_AUTH_TOKEN 里填的是你在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end 创建的那把 Key这里用 YOUR_API_KEY 占位。ANTHROPIC_MODEL 先写 GLM-4.7但准确 ID 以模型广场当时列表为准。如果原来 settings.json 里还有其他 env比如 GITHUB_TOKEN合并进去不要整文件覆盖。3.2 想让 /model 自由切就别把模型锁死如果你希望启动后用 /model 在 GLM-4.7 和 kimi-k2.5 之间来回切可以把 ANTHROPIC_MODEL 留成你常用的默认模型或者删掉这一行。不同版本的 Claude Code 对 /model 的支持略有差异有的版本会列出内置别名有的版本允许直接输入模型 ID。更稳的做法是保留一个默认 ANTHROPIC_MODEL启动后发一条消息确认通道通了再用 /model 切到另一个模型。模型 ID 从模型广场复制不要自己拼。3.3 环境变量和 settings.json 的优先级Claude Code 读取配置时shell 环境变量通常会覆盖 settings.json。如果你在 .zshrc 或 .bashrc 里还留着原来的 GLM、Kimi export改完 settings.json 也会被旧变量顶掉。先注释掉那两段再开一个新终端。可以用env | grep ANTHROPIC检查如果输出里还有 open.bigmodel.cn 或 api.moonshot.cn就说明旧 export 没清干净。清干净后Base URL 应该是https://taotoken.net/apiAUTH_TOKEN 应该是 YOUR_API_KEY。3.4 一份更精简的推荐配置如果你确定要在会话里频繁切模型推荐只固定通道和 Key{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_AUTH_TOKEN: YOUR_API_KEY } }这样启动 claude 后用 /model 输入 GLM-4.7 或 kimi-k2.5 对应的准确模型 ID。GLM 和 Kimi 共用同一个 Base URL 和同一把 Key切换时不需要重启终端也不需要重新 export。这里 TaoToken 的 Base URL 只写https://taotoken.net/api不要写成官网地址也不要在末尾加/v1。4. 启动 claude 后用 /model 在 GLM-4.7 与 kimi-k2.5 之间来回切4.1 第一次验证通道通不通保存 settings.json 后开一个新终端进入你的工作目录运行claude。先输入/status或/config看当前 Base URL 和模型是否读到了不同版本命令名可能略有差异。如果看不到直接发一条简单消息比如「用一句话说明你现在是哪个模型」。正常情况下会返回内容。如果报 401 或认证失败先回到 5.1 检查 Key。确认通道通了再试 /model 切换。4.2 切换 GLM-4.7 和 kimi-k2.5在会话里输入/model选择或输入 GLM-4.7 对应的模型 ID发一条消息再输入/model切到 kimi-k2.5 对应的模型 ID再发一条消息。两次都能正常回复就说明同一个 Base URL 和同一把 Key 可以跑通两个模型。模型 ID 以 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end 模型广场当时列表为准别用记忆里的旧名字。如果 /model 只显示内置别名可以考虑用claude --model 模型ID启动或者临时 export ANTHROPIC_MODEL 做验证但长期配置仍然建议只固定通道和 Key。4.3 和 claude-code-router 的关系原文提到 claude-code-router可以用ccr use kimi、ccr use glm、ccr use claude快速切换。它的思路是在本地做一层路由把不同供应商的 Base URL 和 Key 映射成不同配置。TaoToken 的统一通道把这一步提前到了 API 侧Base URL 只有一个Key 只有一把模型切换在 Claude Code 的 /model 里完成。如果你已经在用 ccr也可以把 ccr 的目标地址指向https://taotoken.net/api但没必要再为 GLM 和 Kimi 各维护一条路由配置。5. 排障settings.json 改完不生效的几种情况5.1 401 或认证失败先看 ANTHROPIC_AUTH_TOKEN 是不是还写着 YOUR_API_KEY 没替换。确认 Key 是从 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end 创建的那一把复制时不要多空格、不要带引号外的换行。如果同时设置了 ANTHROPIC_API_KEY也可能出现读错变量的情况建议只保留 ANTHROPIC_AUTH_TOKEN。Claude Code 请求头里的认证由它自己加通常不需要你手动拼 Bearer。还有一点Key 如果被删除或重新生成旧 Key 会立刻失效也会表现为 401。5.2 模型不存在或 404多半是 ANTHROPIC_MODEL 或 /model 里写的模型 ID 不对。去模型广场复制准确 ID再试一次。另一个常见原因是 Base URL 末尾多了/v1导致请求路径变成/api/v1/...而兼容通道的正确地址是https://taotoken.net/api。去掉/v1再重启 claude。如果只在切换后 404检查你切换的模型 ID 是否在模型广场列表里不要把 GLM-4.7 写成 GLM-4.7-xxx 之类的猜测后缀。5.3 settings.json 不生效JSON 格式错会静默失败多一个逗号、少一个引号、写了注释Claude Code 都可能读不到。把 JSON 贴到编辑器里做语法检查或者用python -m json.tool ~/.claude/settings.json验证。确认改的是用户级~/.claude/settings.json不是项目里的.claude/settings.json。改完保存后退出当前 claude新开终端再启动。如果还不行用claude --version确认版本并检查是否有企业策略或别名覆盖。5.4 旧 export 还在抢配置在终端执行env | grep ANTHROPIC如果还能看到 open.bigmodel.cn 或 api.moonshot.cn 的 Base URL说明旧的 GLM 或 Kimi export 还在。把 .zshrc、.bashrc 或 PowerShell $PROFILE 里对应的行注释掉再开新终端。别只改 settings.json 就以为万事大吉环境变量的优先级经常让人误判「配置没生效」。清掉之后Base URL 应该只剩https://taotoken.net/api。5.5 /model 切换后回复没变化有的版本里settings.json 的 ANTHROPIC_MODEL 会作为默认模型/model 切换只影响当前会话也可能你切换后没有发新消息。可以先退出 claude 再进来或者用/model重新确认当前模型。如果仍然无效用claude --model 模型ID启动做交叉验证。长期使用建议只固定 Base URL 和 Key模型留给 /model 或启动参数这样 GLM 和 Kimi 共用通道时最省心。6. 跑通之后去控制台对一下这次调用6.1 用同一把 Key 在模型对话里发一条测试消息配置保存后先在 TaoToken 模型对话里用同一把 Key 发一条测试消息确认模型 ID 和 Base URL 没填错。地址是 TaoToken 模型对话。如果模型对话里能看到回复说明 Key 和模型 ID 都没问题Claude Code 里报错就更可能是 settings.json 或旧 export 的问题。这一步和刚才在终端里 /model 切换是互相印证的模型对话能通终端却 401优先查 AUTH_TOKEN两边都失败优先查模型 ID。6.2 看套餐和 Key 管理如果打算长期用 Claude Code 写代码可以打开 Coding Plan 看套餐是否够用。Key 的创建和管理在 控制台 API Keys。Claude Code 的环境变量对照和更多接入细节可以看 Claude Code 接入文档。这三个页面比反复试 export 更快定位问题尤其是模型 ID 和 Base URL 的写法文档里通常有现成对照。6.3 最后一句个人体会以前给 GLM 和 Kimi 各写一份 export最怕的是终端一多就忘了哪个窗口是哪个模型重启后还要重新 source。现在把~/.claude/settings.json里的 ANTHROPIC_BASE_URL 固定成https://taotoken.net/apiKey 只留一把模型用 /model 切至少不用再为每家服务商维护一套环境变量。模型 ID 和可用列表以 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end 当时显示为准别照抄旧文章里的日期后缀。
返回列表