能力评估与局限 核心 约 15 分钟 更新 2026-10-02

上下文窗口的局限:记忆边界与"迷失中间

学习状态:
未学

一句话定义

上下文窗口是模型单次推理能处理的词元上限,它相当于「工作记忆」而非「长期记忆」:窗口内信息还有位置偏差(开头结尾强、中间弱),窗口外信息则完全不可见。

为什么重要

窗口长度数字(128K、1M)常被当作能力宣传,但「能装下」不等于「用得好」。应用设计(RAG 分块、多轮对话摘要、长文档问答)的成败都取决于对窗口机制的准确理解;误解它会导致「塞得越满越好」的反模式。

前置知识

核心概念

原理与机制

机制上,窗口内每个词元通过注意力相互访问(复杂度 O(T²),工程见 kp-014);「迷失中间」的成因假说包括:训练数据中相关内容多位于开头结尾的分布偏置、因果注意力对早先词元的天然可达性、以及长序列上注意力稀释。窗口外的信息对模型完全不存在——它不会「想起来」,只能靠外部系统把相关信息重新注入窗口。多轮对话超窗后,早期轮次被丢弃或摘要压缩,产生「健忘」。

公式或模型

窗口约束的形式化:设窗口大小 W,可被注意力访问的位置集合为:

Visible(t) = { j : t − W < j ≤ t }
窗口外 j ∉ Visible(t) 的信息对输出无任何影响

图示

性能
 │▇▇▇                       ▇▇▇     ← 开头/结尾表现好
 │    ▇▇                 ▇▇
 │       ▇▇▇▇▇▇▇▇▇▇▇▇          ← 中间"塌陷"(U 型)
 └─────────────────────────────▶ 相关信息在窗口中的位置

直观类比

窗口像「一张只能摊开一页的桌子」:一页内的文件都能看,但视线对页首页尾最好、页面中间容易跳读(迷失中间);上一页的内容若没誊到这一页(RAG 注入),就等于从没存在过。

实例或案例

Liu 等(2023)的对照实验:把关键事实分别放在 20 段长文的开头/中间/结尾,中间放置时多模型性能显著下降,且「更多上下文」反而可能因噪声拖累表现——直接挑战「窗口越大越好」的直觉。工程对策:RAG 只注入最相关片段、把关键指令放在开头或结尾、长对话用摘要滚动压缩。

常见误区

与其他知识点的关系

自测题

  1. 「迷失中间」描述什么现象?
    答案要点:关键信息位于窗口中部时模型利用效率下降,性能呈首尾高、中间低的 U 型。
  2. 上下文记忆与参数记忆的差异?
    答案要点:窗口内是即用即弃的精确临时记忆;参数记忆持久但模糊、有知识截止。
  3. 对话超出窗口后系统层的常见处理?
    答案要点:滑动截断、滚动摘要、外部存储 + 检索回注。

延伸阅读