18 个主流模型的实测告诉你:「窗口装得下」和「读得准」完全是两回事——而且有一条结论连研究者自己都觉得意外
2026-07-26
一句话:各家 AI 都在比谁的「上下文窗口」更大——20 万字、100 万字。但装得下不等于读得准:一项覆盖 18 个主流模型的实测发现,性能下降远在触及上限之前就开始了,而且「怎么摆资料」比「塞了多少资料」更能决定答对率。
反幻觉声明:本文的实测结论来自 Chroma 团队的公开技术报告《Context Rot》,以及斯坦福等机构 2023 年的《Lost in the Middle》论文,两者的研究设计与结论均已从原文核实。文中未使用任何厂商自报的长文本性能数字。
这两年你大概听过这类宣传:
「支持 100 万 token 上下文」「一次能读完一整本《三国演义》」
token 就是文字被切开后的小块(上一篇讲过),上下文窗口就是这张「书桌」一次最多能摊多少块。窗口从几千涨到几十万,再到上百万,确实是了不起的工程进步。
于是很多人自然地想:那把资料全塞进去不就完了?
没那么简单。
有个团队做了一件很朴素的事:找来 18 个主流模型(涵盖 Anthropic、OpenAI、Google、阿里等),设计几组任务,然后只改变一个变量——输入有多长,看准确率怎么变1。
任务本身很简单,主要是「大海捞针」:在一大段文字里藏一句话(针),然后问模型这句话说了什么。
结果是:模型的表现随输入变长而持续下降,而且下降方式经常出人意料、并不均匀。
关键在于——这个下降不是等到窗口塞满才发生的。报告的说法是:模型在各种输入长度上并不保持稳定的表现。所以「我的窗口有 100 万」和「我在 100 万字里能准确找到那一句」是两回事。
这个现象后来被叫做 context rot(上下文腐烂)——资料越堆越多,模型反而越读越糊涂。
如果在文字里放进看起来相关、其实是错的段落(研究里叫「干扰项」),模型就更容易答错。放 1 个就掉,放 4 个掉得更多。
这条很实用:你给 AI 的材料里,不相关但看起来像的内容越多,它越容易被带偏。这也是为什么「把整个文件夹一股脑丢给它」经常不如「只挑那三段给它」。
当「针」和「问题」在字面上很接近时(比如问题里的词就在那句话里),模型容易找到;当两者只是意思相关、字面不像时,性能下降得更明显。
翻译成人话:它更擅长「对暗号」,不那么擅长「意会」。所以提问时尽量用材料里出现过的原词。
这条连研究者都觉得意外:把一大段连贯的文章打乱顺序之后,模型的表现反而变好了。
一份读起来通顺的长文档,反而比一堆被打散的句子更容易让模型出错。
为什么?报告没给出确定答案。但这至少说明一件事:模型「读长文章」的方式,和人类完全不同。我们靠连贯性理解,它似乎会被连贯性干扰。
在此之前,2023 年斯坦福等机构的研究已经发现了一个著名现象2:
关键信息放在长文档的开头或结尾时,模型表现最好;放在中间时,性能明显下降。
论文标题就叫《Lost in the Middle》——迷失在中间。而且研究特别指出:这个问题在那些专门为长上下文设计的模型上同样存在。
把两项研究合起来,结论就清楚了:
不是「塞进去了没有」,而是「摆在哪、旁边有什么、有多长」。
这几条是可以马上用上的:
| 做法 | 为什么有效 |
|---|---|
| 关键信息放开头或结尾 | 直接对应「迷失在中间」的位置效应 |
| 只给相关材料,删掉无关的 | 干扰项越少越好,而且会叠加 |
| 提问时用材料里的原词 | 字面接近比语义接近更容易被找到 |
| 长任务分段处理,别一次全塞 | 输入越长表现越差,这是实测出来的趋势 |
| 重要结论让它复述一遍 | 复述失败=它其实没抓住,早发现早补 |
顺带说一句:这也解释了为什么「RAG」(上一篇讲的「临时跑一趟图书馆」)到今天都没有被超大窗口淘汰。曾经有个流行预测是「等窗口够大,检索就没用了」——没有发生。因为问题从来不是装不装得下,而是装进去之后还能不能找准。
下次再看到「支持 XXX 万 token」的宣传,你可以在心里加一句:
那是桌子的尺寸,不是视力的度数。
桌子大是好事,但决定你能不能找到那张纸的,是你怎么摆。
Kelly Hong, Anton Troynikov, Jeff Huber (2025). Context Rot: How Increasing Input Tokens Impacts LLM Performance. Chroma 技术报告。测试了 18 个主流模型(含 GPT-4.1、Claude 4、Gemini 2.5、Qwen3 等),涵盖大海捞针变体、干扰项、结构打乱、长对话问答等多组任务,结论是模型在不同输入长度上并不保持一致表现。https://www.trychroma.com/research/context-rot↩︎
Nelson F. Liu, Kevin Lin, John Hewitt, Ashwin Paranjape, Michele Bevilacqua, Fabio Petroni, Percy Liang (2023). Lost in the Middle: How Language Models Use Long Contexts. arXiv:2307.03172。发现关键信息位于长上下文中部时性能显著下降,且该现象在专门的长上下文模型上同样存在。https://arxiv.org/abs/2307.03172↩︎