上下文窗口
今天咱们就当面锣对面鼓地聊聊,上下文窗口这玩意到底是个啥?大模型为什么要给自己加这个限制?

最近,像 OpenClaw 这类能全自动帮人干活的 AI 智能体(Agent)彻底火了。为了让它们干更复杂的活,大家给它装配了各种各样的外接工具。

但很多人发现,工具装得越多、活儿干得越久,AI 就越容易频繁“失忆”,甚至因为忘了最初的指令而彻底失控。

最近科技圈就发生了一起著名的翻车事故:一位 Meta AI 的研究员在使用 OpenClaw 时,AI 跑着跑着突然“断片”,一顿暴走把她邮箱里的重要邮件删了个精光,停都停不下来。

深挖底层原理才发现,导致这些高级 AI 频频失忆的幕后黑手,其实都指向了同一个概念,上下文窗口(Context Window),它就像是一堵 AI 自身无法逾越的“物理记忆墙”。

今天咱们就当面锣对面鼓地聊聊,上下文窗口这玩意到底是个啥?大模型为什么要给自己加这个限制?

更重要的是,咱们普通人只要搞懂了它,就能像个真正的内行一样,把大模型操控得服服帖帖!

什么是上下文窗口?

简单说,你直接把它当成 AI 手里拿着的一个“临时记事本”。

跟你说个反直觉的真相:大模型本身其实是完全没有记忆的。 它就跟金鱼一样,所谓的“记性好”,全靠硬背这个“临时记事本”里的内容。

你在这个对话框里敲下的每一个问题、上传的每一份文档,还有它回复你的每一句话,都会被一字不落地抄进这个本子里。

而且 AI 是个死脑筋,你每发一条新消息,它都必须把本子里前面记录的所有内容从头到尾重新读一遍,才能接着往下聊。

结果呢?一旦你俩聊嗨了,这个记事本里的内容就会像滚雪球一样越攒越多。

但可惜的是,这个本子并不是无限厚的,它有一个绝对的容量上限,而这个物理上的容量上限,就是我们天天说的“上下文窗口”。

我们常听大厂吹牛,说自家模型支持 几十万 甚至 100万 Token,说的其实就是这个记事本的容量。

数字越大,能装的字自然就越多。打个比方,128k 的窗口大约能装下一本长篇小说,而 1M 的超大窗口,相当于能一口气塞进去 10 本《红楼梦》。

可是,记事本再厚,也总有写满的那一刻。写满了怎么办?

这时候,AI 只能被迫使出两招:要么“简单粗暴”,直接把最前面的几页纸撕掉扔了;要么“偷工减料”,把前面聊过的几万字强行压缩成一两句梗概。

你想想,早期的核心设定一旦被撕毁或者被压缩,细节全丢了,它可不就转头把你最开始定好的规矩忘得一干二净了吗?

上下文窗口上下文窗口

上下文窗口越来越不够用?

看到这儿,你可能会嘀咕:“现在主流的大模型,动不动就支持十几二十万的上下文窗口,相当于好几本书的字数了。我平时也就跟它随便聊两句,这怎么可能用得完?”

千万别高兴得太早,因为你以为的“够用”,只是你以为。

在这个“临时记事本”里,并不仅仅只记了你们俩的聊天记录,AI 甚至比你还能“水字数”。

现在的 AI 越来越聪明,很多模型在正式回复你之前,都会在后台“哐哐”地思考一大通。这就像是它在草稿纸上打草稿一样。请注意,这些长篇大论的“思考过程”,全都会被一字不落地写进记事本里,疯狂挤占你的上下文空间。

上下文窗口 思考上下文窗口 思考

如果你玩的是像 OpenClaw 这种更高级、能自动帮你干活的 AI 智能体(Agent),那吃掉窗口的速度就更恐怖了。

可以说,你连第一句话都还没发,记事本就已经被写掉一小半了。 为什么?

因为在开聊之前,系统得先给 AI 做“战前准备”。

它会把一套极其复杂的设定提前塞进记事本里:比如规定它是谁的“人设文件”(Soul、Self),它曾经经历过的“历史记忆”(Memory),甚至还有各种外接工具和技能的“使用说明书”(Tools MCP 和 Skills)。

等到你俩真正开始干活了,它在后台也没闲着。为了回答你的问题,它会不断地调用工具:一会儿去读个本地文件,一会儿跑去网上搜查资料。这些它从四面八方扒拉回来的长篇资料,也全都会被系统默默地追加进这个记事本里。

 上下文窗口 战前准备上下文窗口 战前准备

这套“隐形连招”打下来结果是什么?

你看着屏幕,感觉自己才跟它聊了没两三个回合;但实际上,后台的记事本早就被它自己的思考过程、各种系统设定和搜索来的资料给塞得满满当当。十几万的超大窗口?分分钟就见底了!

为什么不能给它发个无限大的记事本?

既然记事本越大越好用,为什么不直接给 AI 配个无限大的?是厂商抠门不想给吗?

真不是厂商不想给,而是物理条件根本不允许。

这背后,有一座名为算力的物理大山死死压着它。这就不得不提 AI 的核心骨架,Transformer 架构了。它里面有一个极其要命的机制,叫“自注意力机制”(Self-Attention)。

什么意思?简单说,AI 为了真正读懂一句话,它得把句子里面的每一个词,和前面出现过的所有词都“配对相亲”一遍,算一算它们的关联度。

比如你说:“我把杯子放在桌子上,它掉下去了。” AI 想搞清楚“它”到底指的是谁,就得把“它”跟前面的“我”、“杯子”、“桌子”等词挨个连线打分。

结果呢?如果你这句子里有 10 个词,它要算 10×10 = 100 次配对。但如果是 10 万个词呢?那就是 100 亿次极其复杂的计算!

这种“字数翻一倍,计算量直接翻四倍”的平方级指数爆炸,就是上下文窗口不能无限大的最底层原因。

平方级指数爆炸平方级指数爆炸

哪怕是你把现在市面上最顶级的显卡全搬来,也扛不住无限长内容的计算量,分分钟给你算到显存耗尽、冒烟卡死。

正因为算力有物理极限,AI 的记忆就天然必须有一道边界。

所以在 AI 进工厂预训练的时候,工程师必须给它定死一个“最大窗口长度”。

这个长度,就像是你手机出厂时,直接焊死在主板上的运行内存(RAM)。造手机的时候是 16G,它在娘胎里就锁死了 AI 底层的计算规则和能力天花板,在技术上这就叫绝对的核心超参数。

懂了这个底层逻辑,你就能看穿现在很多厂商玩的文字游戏了。

很多大厂搞所谓的“窗口扩展”,对外宣传能支持多大多大的上下文,其实就像是用软件优化技术,把原生 8G 的内存硬生生当 12G 跑。

但实际用起来,效果永远比不上人家原生就焊了 12G 的真家伙,本质上根本逃不开超参数划定的天花板。

总结

看到这里,你是不是豁然开朗了?

上下文窗口,从来不是厂商故意抠门设下的绊脚石,而是大模型受限于底层算力的“物理记忆边界”。它就是 AI 在单次干活时,能有效理解并牢牢记住的内容上限。

理解了这个底层逻辑,你再去回头看现在爆火的 Claude Code、OpenClaw 这些高级 AI 智能体(Agent),就会瞬间明白它们为什么要在“省空间”这件事上绞尽脑汁了。

为什么它们要专门搞出一个 /compact 压缩命令?为什么要用“渐进式披露”技术?

说白了,就是在“精打细算”那个临时记事本里的每一寸空间,生怕被没用的废话占满了位置。

所以,咱们平时在使用这些 AI 智能体帮你干活的时候,一定要从上下文空间的角度多考虑考虑:

不要一股脑地把几十个 MCP 、Skill 全给它装上;在写 .claude、.soul 这些规定 AI 人设和工作习惯的文件时,也千万不要贪多,别写成几万字的小作文。

你给的额外工具和背景设定越多,留给它真正用来思考和干活的“记事本页数”就越少。

最后教大家一个防翻车的小习惯:

在使用这些工具时,多敲一下 /context 这个命令,或者顺手装个监控插件。这就像看手机剩余内存一样,随时盯紧你的“记事本”还剩多少页,快满的时候赶紧做个清理。

文章来自:51CTO

Loading

作者 yinhua

发表回复