1. 为什么我要用 85 页世界杯前瞻来测 GLM-5.2
最近世界杯正踢得热闹,朋友圈里一堆人在让大模型猜比分。说实话,让模型吐个「2:1」出来太简单了,反正怎么编都能给你憋个数,猜的人多了总有蒙对的。我想玩点不一样的:把 2026 这届世界杯的小组赛做成一套完整的前瞻 PPT,每场对阵一页,要有国旗、对阵时间、场地、关键球员、核心洞察和赛果预测,已经踢完的直接用真实比分。算下来这是 85 页的工程量。
我真正想验证的不是它会不会写 HTML,而是 GLM-5.2 的 1M 上下文在 Claude Code 这种长链路 Agent 场景里到底稳不稳。以前用短上下文模型干这种活,做到一半就得反复存档交接,项目规范喂到深处它就开始忘前面。这次我把又长又啰嗦的项目规范加两个自定义 skill 一起压上去,就想看它接不接得住。
顺便说一句,GLM-5.2 下周开源、走 MIT 协议,这个时间点挺有意思。我当天晚上就上手了,下面把整套流程拆开讲,包括怎么在 Claude Code 里接入、配置骨架长什么样、以及我踩过的坑。
2. 前置准备:在 Claude Code 里接入 TaoToken
Claude Code 默认走 Anthropic 官方端点,要换成 GLM-5.2 这类模型,最省事的路径是通过兼容 Anthropic 协议的网关来转发。我用的是 TaoToken,它提供 Anthropic 兼容接口,Claude Code 只要改一个环境变量指向它就能跑,不用动 Claude Code 本身的代码。
你需要先准备好两样东西:一个 TaoToken 的 API Key,以及确认你要调的模型名。API Key 在控制台的 API Keys 页面生成,地址是 https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api_keys&utm_campaign=rewrite 。生成后复制那串sk-开头的字符串,后面配置要用。
模型名这块要注意,Claude Code 里填的模型标识必须和网关侧支持的名称一致。GLM-5.2 在 TaoToken 侧的模型标识建议直接在模型对话页面确认,避免拼错导致 404。模型对话入口在 https://taotoken.net/models?utm_source=taotoken_aicg_blog_end&utm_content=models&utm_campaign=rewrite ,进去能看到当前可用的模型列表和对应的调用名。
注意:API Key 属于敏感凭证,不要写进会提交到 Git 的配置文件里。生产环境建议用环境变量注入,本地调试也尽量放在 shell 的 profile 里而不是项目目录。
3. 可复制的 settings.json 配置骨架
Claude Code 的配置分两层:一层是环境变量,决定它请求哪个端点、用哪个 Key;另一层是settings.json,决定权限、工具白名单、模型参数这些。我先把环境变量这层讲清楚,因为它是最容易出错的地方。
在~/.claude/settings.json里,核心是env字段。下面是我实测能跑通的骨架,你可以直接抄:
{ "env": { "ANTHROPIC_BASE_URL": "https://taotoken.net/api", "ANTHROPIC_AUTH_TOKEN": "sk-你的TaoToken密钥", "ANTHROPIC_MODEL": "glm-5.2", "ANTHROPIC_SMALL_FAST_MODEL": "glm-5.2", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1" }, "permissions": { "allow": [ "Read", "Write", "Edit", "Bash(git:*)", "Bash(node:*)", "Bash(python3:*)" ], "deny": [] } }几个字段逐个说明。ANTHROPIC_BASE_URL指向https://taotoken.net/api,注意这里不带任何路径后缀,Claude Code 会自己拼/v1/messages。ANTHROPIC_AUTH_TOKEN填你的 Key,Claude Code 会把它作为x-api-key头发出去。ANTHROPIC_MODEL和ANTHROPIC_SMALL_FAST_MODEL都填 GLM-5.2 的标识,后者用于一些轻量任务,填成一样的省心。
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC这个开关建议打开,它会关掉一些非必要的遥测请求,走第三方端点时能少很多莫名其妙的超时。
如果你不想把 Key 写死在文件里,可以改成从环境变量读:
export ANTHROPIC_BASE_URL="https://taotoken.net/api" export ANTHROPIC_AUTH_TOKEN="sk-你的TaoToken密钥" export ANTHROPIC_MODEL="glm-5.2"然后settings.json里只留permissions部分。这样 Key 不进版本库,团队协作时每人自己配。
提示:改完配置后建议重启一次 Claude Code 进程,环境变量在启动时读取,热改不一定生效。
4. 验证请求:确认 GLM-5.2 真的接上了
配置写完别急着上大工程,先用一个最小请求确认链路通。最直接的办法是在 Claude Code 里跑一句让它自我介绍:
claude -p "用一句话说明你是什么模型,以及你的上下文窗口有多大"如果返回里明确提到 GLM-5.2 和百万级上下文,说明模型路由对了。如果返回的还是 Claude 系列,那多半是ANTHROPIC_MODEL没生效,检查一下字段名有没有拼错。
更底层的验证可以直接打 API,绕过 Claude Code 看网关本身通不通:
curl https://taotoken.net/api/v1/messages \ -H "x-api-key: sk-你的TaoToken密钥" \ -H "anthropic-version: 2023-06-01" \ -H "content-type: application/json" \ -d '{ "model": "glm-5.2", "max_tokens": 128, "messages": [ {"role": "user", "content": "回复四个字:链路正常"} ] }'正常的话你会拿到一个 JSON,content数组里第一项的text就是「链路正常」。这一步能过,说明 Key、端点、模型名三样都对。
接下来验证长上下文。我用的办法是喂一份长文档进去,让它做信息提取。你可以准备一个几万字的文本文件,然后:
claude -p "读取 ./worldcup_preview.md,告诉我里面一共提到了多少场比赛,以及第 30 场的对阵双方是谁"如果它能准确数出 72 场并定位到具体某一场,说明长上下文的信息召回是靠谱的。我实测下来,把一份接近 8 万 token 的项目规范喂到对话很深的位置,它依然能遵循前面的约束,没有出现「读着读着忘了开头」的情况。
5. 本篇常见错排查
接入过程里我踩过几个坑,集中列一下,你遇到类似报错可以对照。
第一个是 401。返回authentication_error基本就是 Key 的问题,要么复制时带了空格,要么 Key 已经失效。去 API Keys 页面重新生成一个,注意复制完整。
第二个是 404。model not found说明模型名写错了。GLM-5.2 的标识在不同网关侧可能略有差异,去模型对话页面确认当前可用的准确名称,别凭记忆填。
第三个是超时。长上下文请求本身耗时就长,如果max_tokens设得很大又赶上网络抖动,容易断。建议把CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC打开,同时确认本地网络到taotoken.net的连通性。如果只是偶尔超时,重试一次通常就好。
第四个是权限被拒。Claude Code 默认对写文件、执行命令是询问式的,跑批量任务时会一直卡在确认上。把常用的Read、Write、Edit和必要的Bash前缀加进permissions.allow,能省掉大量手动确认。但别图省事写Bash(*),那等于把整个 shell 交出去。
第五个是风格漂移。这个不是配置问题,是任务设计问题。85 页的工程如果让模型一页页顺着写,风格一定会飘。我的做法是让它先出两三页样板,确认方向后再批量,同时把内容和样式分开——子任务只产出结构化数据,HTML 由统一模板渲染。这套思路在 GLM-5.2 上跑得很稳。
6. 想长期跑编码和 Agent,可以看 Coding Plan
如果你只是偶尔验证一下模型能力,上面这套配置就够了。但如果你打算把 GLM-5.2 接进 Claude Code 长期跑编码、跑多 Agent 流水线,那按量计费的成本会不太可控,尤其是长上下文任务 token 消耗很快。
这种情况可以看 TaoToken 的 Coding Plan,它是面向长期编码场景的套餐,地址在 https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding_plan&utm_campaign=rewrite 。接入方式和我上面写的完全一样,只是计费模型换成套餐制,适合每天都要跑 Agent 的人。
接入文档在 https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_content=doc&utm_campaign=rewrite ,里面有各语言 SDK 的调用示例和参数说明,遇到协议细节问题可以翻。Claude Code 专用的接入说明在 https://taotoken.net/claude-code?utm_source=taotoken_aicg_blog_end&utm_content=claude_code&utm_campaign=rewrite ,配置字段和我这篇基本一致,可以作为交叉参考。
最后说个我自己的体会。判断一个模型能不能扛大工程,不看它单页写得多漂亮,看它在长链路里会不会自己停下来纠错。我那份任务里有个陷阱:往届世界杯 32 队、小组赛 48 场,这个旧知识太「合理」了,模型很容易顺着做下去。GLM-5.2 做到一半自己停了,说 2026 改制后是 48 队 12 组、每组 6 场、共 72 场,它不能凭记忆断言,要去核实。然后它真的去交叉核对了分组和已完赛比分。知道多少是知识量,知道自己可能记错、肯在该停的地方停下来,这个更难得。