一句话定义:上下文腐烂(Context Rot)指的是——往模型的AI 词典:上下文窗口">上下文窗口(context window)里塞的内容越多,模型的输出质量不是"基本稳住、只在某一段打折扣",而是随着长度增加整体一路下滑。上下文不是仓库,塞得越满越糟。
为什么会"烂"
想象你让一位同事帮你整理一份方案,你一口气口述两小时,中间夹杂了上次会议的结论、客户随口提的偏好、三条已经作废的报价、还有一段你自己的想法。他不是"漏掉了第 40 分钟那句话",而是从头到尾都抓不住重点了——线索太多,彼此打架,他分不清哪句是最终决定。
模型的注意力机制(attention)也是这样。每生成一个词,它都要在已有的所有 token 之间分配注意力。长度一涨,注意力被摊薄:真正有用的那几句权重下降,无关内容、重复内容、过期内容一起变成噪声。更麻烦的是,长上下文里常常自带矛盾(前面说用 A 方案,后面又提了 B 方案),模型没有可靠的"谁更新谁算数"的判断机制,于是开始摇摆、编造或干脆答得含糊。这就是"腐烂":不是某处坏掉,而是整锅汤的味道都变了。
和相邻概念的区别
| 概念 | 说的是什么 | 关注点 |
|---|---|---|
| 上下文窗口 | 一次能装多少 token | 容量上限 |
| 中间迷失(Lost in the Middle) | 中段信息更容易被忽略 | 位置偏差 |
| 上下文腐烂 | 长度增加导致整体质量下降 | 全局长度的质量衰减 |
| 幻觉(Hallucination) | 输出与事实不符 | 可能是腐烂的结果之一 |
| 上下文工程(Context Engineering) | 主动设计喂进去什么 | 应对手段 |
一句话:窗口大小是"能不能装",中间迷失是"哪一段容易被忽略",上下文腐烂是"装多了整体都变差"。
对实际工作意味着什么
对做产品的人:别把长上下文当成免费的垃圾桶。能检索就不要全量塞,能摘要就不要原文堆;把最关键的要求放在开头或结尾,中间放支撑材料;一个复杂任务拆成几轮,比一次性投喂一部长文档更稳。检索增强(RAG)也一样——召回十条不相关的文档,等于主动给模型下毒。
对普通职场人:手里有一份几十页的材料,不要直接丢进去问"帮我总结重点"。先问"这份材料的目录结构和核心结论是什么",再分章节追问细节,答案通常明显更靠谱。上下文越干净、越聚焦,模型越像那个听懂了你要什么的同事。
最后一句:上下文是一种预算,不是仓库。给得少而准,往往比给得多而杂更强。各家模型对长度的实际表现差异很大,具体以官方页面为准。
