Insights·2026-08-24

百万 token 的窗口已经开了 —— 为什么还是不该全塞进去

Anthropic 认证考试列出的最后一个智能体反模式,是任由上下文无限增长。上下文就是 token,token 就是钱;但更重要的理由是另一个:上下文越多,模型越糊涂,答案越不准。处方有两个——把输出量大的工作放进单独的上下文,只取回摘要;以及在对话变大时压缩(演讲代码里的阈值是 15 万 token)。与之一并出现的,还有「CI 里别用对话模式调用」和「用 Batch API 把成本减半」。

100만 토큰 창이 열려도 넣을 것은 제한한다 — 명령과 단계를 담은 요약 도식

上下文是什么

先解释术语。提示是你刚刚打下的那一行。上下文是这一行抵达模型时,随之一起被带过去的全部内容。

这里面包括系统提示、CLAUDE.md 这类指令文件、技能、迄今为止的全部对话,以及工具返回的结果。你打的提示,只是这一整包里的最后一行。

所以对话越长,上下文越大。一旦进去的东西,会一直跟到对话结束。你粘贴了 500 行日志,那 500 行就会跟着下一个问题,再下一个问题一起被送过去。

如今的模型标榜百万 token 窗口,让人产生了「这些都不用在意了」的印象。这个反模式针对的正是这个印象。

为什么要省着用 —— 理由有两个,第二个更重要

第一个理由很简单。上下文就是 token,token 就是钱。对话越长,每次请求都要把同样的内容重新送一遍,成本会累加。

第二个理由更重要:上下文越多,模型越糊涂,答案越不准。

这听起来与直觉相反——给的信息更多,答得应该更好才对。但实际上,无关的信息会削掉有关信息的相对分量。这与「不该把所有东西堆进一个 CLAUDE.md」是同一个位置。

所以结论是这样:很容易觉得既然开了百万 token 的窗口,那就全塞进去吧。恰恰相反——限制放进去的东西,才会准。

处方一 —— 把长输出切到单独的上下文里

有些工作输出量很大。比如把所有日志翻一遍找错误,或者扫一个大文件统计某个模式。

在主对话里做这些,几千行日志就会原样堆进上下文——而你真正需要的,只是「有三类错误,各自是这样」的五行摘要。

所以把这类工作切到单独的上下文里去做。演讲称之为 fork。在那个分支里,智能体把日志全读完、思考、整理,然后只把摘要送回主对话。冗长的输出留在那个分支里,随之消失。

在 Claude Code 里,这件事用子智能体来做——和上一篇「把智能体拆开」用的是同一个工具,只是这次的理由不是工具数量,而是输出量。

不写代码的人也有对应的做法。需要粘贴大量资料的工作,别在当前对话里做,另开一个新对话。在那里拿到摘要,再带回原来的对话。

处方二 —— 变大了就压缩

就算切出去了,对话本身还是会继续变大。于是有了第二个处方:压缩。

演讲里的代码每一圈都数一下 token,超过阈值就执行压缩。那里写的阈值是 15 万 token。压缩就是把迄今为止的对话换成一份摘要——丢掉细节,只留决定和状态。

Claude Code 里这就是 /compact 命令。它也会自动触发,但当你觉得对话开始跑偏时,也可以自己敲。

不写代码的话,就用手做同一件事。先说「把我们到目前为止定下来的东西总结成五行」,然后把这五行贴到新对话的开头。别花力气死死抓住,写下来带过去就好。

顺带的一条 —— CI 里别用对话模式调用

最后一个场景是在流水线里运行,这个反模式有点好笑。

用对话模式调用智能体,它会停在询问权限的那一步:「我可以这么做吗?」可流水线里没有人来回答。它就站在那里,等一个永远不会来的回答。

所以要用非交互方式运行,并让输出以 JSON 返回,流水线才读得懂。在 Claude Code 里,`claude -p` 就是这个位置。

这里还多一条:Batch API。把提示和任务打包成批次提交,token 成本减半,结果在 24 小时内返回。如果这件事并不需要马上要答案,那才是它该去的地方——晚上交出去,早上取回来。

贯穿五篇的那一件事

到这里,Anthropic 认证考试列出的五个反模式就讲完了。

别直接用回答,先看它为什么停下。别把规则堆进一个文件,放到它生效的位置。别把工具全挂上去,把智能体拆开。把长输出隔离出去,变大了就压缩。CI 里别用对话模式调用。

贯穿五条的只有一件事:答案全都是给得更少。工具、上下文、信息,都更少。

「会用智能体」常被说成是能挂上更多东西的能力,而这场考试选的答案正好相反——是知道什么不该给。

今天可以试的一件事

想一想你现在开着的最长的那个 AI 对话。如果答案比一开始更含糊了,那说明上下文已经在碍事了。

在那个对话里敲一句:「把我们到目前为止定下来的东西总结成五行。」把这五行复制出来,贴到新对话的开头,从那里继续。这就是用手做处方二。

还有,下次需要粘贴日志或长资料时,别用当前对话,另开一个窗口。这就是处方一。