长上下文推理里的“复读机”问题:为什么少复制,反而更会找证据
我们经常用一个很自然的方式要求长上下文模型工作:先把很长的材料交给它,再让它一步步想清楚,最后给答案。
听起来,这应该是“思考”最擅长的场景。材料都在眼前,模型还能写出推理过程。它只要在几万甚至十几万 token 里找到相关证据,把它们串起来,就可以回答更复杂的问题。
但这篇论文抓住了一个很具体、也很尴尬的现象:模型有时并不是在推理,而是在把输入抄进自己的思维链。
不是偶尔引用一句证据。不是合理摘录。是大段、大段地把 prompt 里的文本转录到 reasoning trace 里,直到推理预算被吃光,或者答案被一堆未加工的上下文淹没。
研究者把这个现象叫做 repetitive copying。更重要的是,他们没有只把它当成“输出太长”或“过度思考”的泛泛问题,而是把它拆成了一个可以测量、可以诊断、也可以训练纠偏的问题:模型到底复制了多少?复制的是关键证据,还是无关干扰?

先把“复制”这件事看清楚
我们先做一个小实验想象。
给模型一份 64k token 的长材料,里面有很多数字描述。真正解题需要的条件散落在其中,比如某个数量的初始值、几次变化、最后要算的目标。其余绝大多数文字只是 filler。模型如果聪明,应该做的事很简单:定位少数关键条件,保持中间状态,算出答案。
可是一个“会思考”的模型可能会写出另一种轨迹:它先说“我需要找出相关数字”,然后开始列材料里的句子;列着列着,越来越像在复制原文;再过一会儿,思维链里出现大片连续的输入文本。表面上它很努力,实际是在把工作记忆变成复印机。
论文用 n-gram overlap 来度量这件事。把模型的推理轨迹看成一串 token,把输入 prompt 也看成一串 token。如果推理轨迹里的某个 3-gram 或 10-gram 在 prompt 里出现过,就计为一次重合。3-gram 用来捕捉总体复制量,10-gram 更严格:连续 10 个 token 都能在输入里找到,通常就不是巧合,而是有意识的转录。
这个指标朴素,但很有穿透力。因为它不需要猜模型“心里怎么想”,只看一个可观察事实:你的思维链里有多少内容直接来自输入。
研究者先在 GSM-Infinite 上做诊断。这个任务把 GSM8K 式算术题嵌进很长的数字描述里,每题需要 10–20 步连续操作;由于数据是程序生成的,哪些位置是关键条件、哪些是干扰文本都知道。实验覆盖 8k、16k、32k、64k 四种上下文长度,并测试七个会输出显式 reasoning trace 的长上下文模型:Claude-Opus-4.5、DeepSeek-V3.2、Qwen-3.5-Plus、GLM-4.7、QwQ-32B、Qwen3.5-35B-A3B 和 Qwen3.5-9B。
结果不是某个开源小模型的毛病,而是一个跨模型模式。
在 8k 时,3-gram overlap 已经从 Claude 的 20.0% 到 Qwen3.5-9B 的 43.7% 不等。上下文拉长后,复制变得更严重:Qwen-3.5-Plus 从 41.5% 升到 64k 时的 70.8%;即使是最不严重的 Claude,也从 20.0% 升到 29.7%。更刺眼的是 10-gram:Qwen3.5-9B 在 64k 上达到 52.7%,意味着它的推理轨迹里超过一半的 10-token 窗口都能直接在输入中找到。
这时我们就不能再说“模型只是在引用证据”。长连续片段的大量重合,更像是模型把长上下文当成了要誊写的对象。
为什么这不是“多想一点总没坏处”
直觉上,我们可能会替模型辩护:长材料里信息很多,模型多抄一点,也许是在保留证据;思维链长一点,也许只是更谨慎。
论文最有价值的地方,是它把这个直觉用数据推翻了。
研究者以 DeepSeek-V3.2 在 GSM-Infinite 64k 上的结果为代表,把样本按 10-gram overlap 分组。低复制区间里,准确率还能保持在 55–64%,平均 thinking length 大约 21k token。可一旦 overlap 超过 0.4,准确率掉到 11%,最后甚至到 0%;同时思维链长度接近翻三倍,超过 58k token。
也就是说,模型不是因为想得更深所以写得更长。它是因为在复制,所以写得更长;而更长的复制没有带来更高正确率,反而把答案挤没了。
论文还做了一个必要的排除:会不会只是难题更容易让模型又复制又答错?附录 A.4 按所需推理操作数分组检查。无论题目需要 10 步、15 步还是 20 步,只要 overlap 超过 0.4,准确率都急剧下降;超过 0.6 后,各难度组基本掉到 0%。这说明复制与失败的关系不只是任务难度的影子。
这里的关键不是“复制本身一定坏”。如果模型把关键证据摘出来,复制几句反而是好事。问题在于:它复制错了地方。

真正的瓶颈:模型分不清证据和噪声
长上下文推理有一个容易被忽略的前提:上下文不是一个均匀的知识库。
一份 128k token 的材料里,真正决定答案的可能只有几段。其余内容不是没有意义,但对当前问题来说是干扰。一个可靠模型不是“不复制”,而是只在需要时抓住证据。
论文把 prompt 分成两部分:key evidence 和 distractor context。然后分别计算推理轨迹与两部分的 10-gram overlap,并定义 grounding ratio:关键证据 overlap 除以干扰文本 overlap。这个比值越高,说明模型复制时越偏向真正有用的证据。
结果很符合直觉,也很说明问题。正确回答的样本,grounding ratio 明显更高;进一步拆开看,正确样本既有更高的 key evidence overlap,也有更低的 distractor overlap。也就是说,成功推理不是“完全不碰输入”,而是有选择地碰输入。
附录 A.2 把这个分析扩展到另外六个模型。六个里有五个都呈现同样趋势:答对的样本有更高的 grounding ratio。Claude 是一个例外,但论文给出的解释也合理:它整体复制很少,94% 的样本 overlap 低于 0.2,所以这个比值对它的区分度变弱。
到这里,故事就从“模型太爱复制”变成了更精确的诊断:模型缺的不是记忆力,也不是输出长度,而是 evidence grounding。它没学会在长材料里把“支持答案的证据”和“只是出现在上下文里的文字”分开。
GEAR:不是禁止复制,而是奖励“接地”的复制
如果问题是复制错地方,一个直接想法是:训练时惩罚复制。
但这会立刻出问题。长上下文任务本来就需要引用输入。模型如果完全不敢碰上下文,就会从“复印机”变成“闭眼猜”。所以论文提出的 GEAR(Grounding Evidence-Aware Reward)不是简单反复制,而是把奖励拆成两股相反的力。
它的总奖励可以写成:准确率奖励,加上关键证据 overlap 的奖励,再减去干扰文本 overlap 的惩罚。
更具体地说,R_acc 是答案是否正确的 0/1 奖励;模型推理轨迹与 key evidence 的 n-gram overlap 越高,获得 grounding reward;与 distractor context 的 overlap 越高,被 distractor penalty 扣分。论文训练时用 n=3,因为短 n-gram 给 RL 提供更密的信号;诊断时用 n=10,因为它更能确认长片段复制。
这里有一个很聪明但也很容易忽略的细节:两项必须同时存在。
如果只奖励关键证据 overlap,模型可以通过“把所有东西都抄一遍”来拿到高 key overlap。关键证据确实被抄到了,但干扰文本也被抄了。这正是论文实验里 +R_ground 单独使用会变坏的原因。
如果只惩罚干扰 overlap,模型又可能学会少碰上下文,包括少碰真正证据。这样会压掉有用引用。
GEAR 的目标是在两者之间形成一个窄通道:可以复制,但必须复制对地方;可以引用证据,但不能把干扰也搬进思维链。

为了让这个奖励能用在自然语言数据上,论文还设计了自动构造 evidence annotation 的流程。对于 GSM-Infinite 和 PhantomWiki 这类程序生成任务,支持证据的位置天然已知。对于普通长文档,研究者反过来做标注:先把文档切成 1024 字符块,随机挑 1–3 个块作为约束证据区,再让语言模型只基于这些块生成问题、答案和 1–3 条精确引用;最后再用同一约束证据重新回答一次,只有答案匹配的样本才保留。
这样,问题的支持证据不是事后猜出来的,而是从生成过程里“按构造”得到的。
最终训练集不大,只有 3,200 个样本:1,000 个 GSM-Infinite,1,000 个 PhantomWiki,再加 1,200 个从 RedPajama-v2 文档生成的自然语言 QA。训练对象是 Qwen3.5-9B、Qwen3.5-27B 和 Qwen3.5-35B-A3B,用 GSPO 做 1 个 epoch,大约 100 个 optimizer steps;prompt 最长 32k,生成最长 16k,训练上下文分布在 16k–32k。默认系数是 α=0.1、β=0.3,也就是对干扰复制的惩罚比对证据复制的奖励更强。
结果:越长的上下文,GEAR 越有价值
论文在五个未见过的长上下文 benchmark 上评估:Ruler、LongBench-v2、BrowseComp-LC、GraphWalks 和 AA-LCR。它们都原生使用 128k 上下文;研究者同时报告 32k 子集和完整 128k。
核心结果很清楚:在三个模型、两个上下文长度的六种组合里,GSPO + GEAR 的平均分都是最高。
以 32k 为例,相比只用 accuracy reward 的 GSPO,GEAR 平均提升 +2.8(9B)、+2.1(35B-A3B)、+1.5(27B)。到了 128k,提升反而更大:+4.6、+2.8、+2.1。9B 模型在 128k 上,GSPO 平均 70.2,GEAR 到 74.8;35B-A3B 从 73.4 到 76.2;27B 从 75.3 到 77.4。
这点很重要。GEAR 只在 16k–32k 的训练上下文上学过,却在 128k 上获得更大收益。论文没有证明它可以无限外推,但至少说明它学到的不是某个固定长度技巧,而是一种更通用的行为偏好:在长材料中少抄干扰,多抓证据。

同样关键的是消融实验。单独加 grounding reward 往往会伤害表现,最高在 128k 掉 8.3 分;Table 3 里只保留 distractor penalty(α=0, β=0.3)也只有 72.0 的平均分,低于默认 GEAR 的 81.3。默认 α=0.1、β=0.3 在 9B 32k 消融中最好,平均 81.3;当 β 降到 0.1 时,平均掉到 78.4;把 α 提到 0.3 也掉到 78.6。论文的解释很一致:这不是“奖励证据越多越好”,而是要让奖励和惩罚保持不对称平衡。
机制指标也对得上。Table 2 在 Qwen3.5-35B-A3B、32k 上看 Ruler 和 LongBench-v2。Ruler 里,GEAR 把 overlap rate 降到 27.0%,低于 Base 的 36.9%、GSPO 的 35.7% 和只加 R_ground 的 36.6%;thinking length 也从 GSPO 的 2808 降到 2066。LongBench-v2 里,普通 GSPO 反而把 overlap 从 24.9% 提到 27.2%,只加 R_ground 又到 28.5%;GEAR 则降到 22.6%,thinking length 从 4677 降到 3989。
这说明 GEAR 的收益不只是分数偶然变高。它确实改变了论文想改变的行为:更少无差别复制,更短、更有约束的推理轨迹。
附录的两个 case study 把这个变化讲得更直观。Ruler 的频繁词提取任务里,Base 模型 16,384 个 thinking token、97.6% overlap,复制到预算耗尽仍没答案;GSPO 不再复制输入,却退化成重复同一个候选词,也耗尽 16k;GEAR 只用 2,920 token、0.6% overlap,给出正确的 hldjac、rufrpd、ubpnvh。LongBench-v2 的多文档学术 QA 里,Base 早早识别 A,却在 14,855 token 中反复 “Wait” 15 次,最后改错为 C;GSPO 答对但仍有 7 次反复检查,用 9,578 token;GEAR 用 5,072 token 系统排除选项并答对 A,比 Base 少 66% thinking token。
这篇论文证明了什么,也没有证明什么
这篇论文最扎实的结论有三条。
第一,长上下文显式推理里存在一个可测的 repetitive copying failure mode。它不是个别模型怪癖,在七个长上下文 thinking LLM 中普遍出现,并且随上下文长度增长而加重。
第二,坏的不是“引用输入”,而是“无差别引用输入”。正确样本更偏向关键证据、更少复制干扰文本;错误样本则相反。这个证据把问题从输出长度、过度思考,推进到了 grounding quality。
第三,基于证据 overlap 和干扰 overlap 的轻量 reward shaping 能改善行为。GEAR 在三个 Qwen3.5 模型、五个未见 benchmark、32k 和 128k 两个尺度上都超过 accuracy-only GSPO,最高平均提升 +4.6,并同时降低 overlap 和 thinking length。
但边界也要说清楚。
论文没有证明 GEAR 是长上下文 RL 的最终方案。训练和评估模型都集中在 Qwen3.5 系列,诊断虽然覆盖了 Claude、DeepSeek、GLM、QwQ 等模型,但真正 RL 训练没有在这些闭源模型上做。论文也没有证明 n-gram overlap 能完整刻画“接地”。它足够简单、可计算、能抓住大段复制,但对于语义等价改写、隐式引用、跨句综合,它会漏掉很多更细的 grounding 行为。
此外,自动生成自然语言 evidence annotation 的流程很实用,但它依赖模型生成与验证,可能偏向单值答案、短证据、可局部回答的问题。现实里的长上下文任务常常需要跨段综合、比较、权衡,支持证据也未必能压缩成 1–3 个块。
所以更稳妥的理解是:GEAR 不是解决了“模型如何理解长文档”的全部问题,而是抓住了一个以前常被混在“overthinking”里的具体坏习惯,并给出了一种低成本纠偏方式。
为什么它值得关注
长上下文模型的评测正在从“针在稻草堆里”转向更复杂的多步推理。但只要模型还会把干扰文本搬进自己的思维链,长窗口就不只是能力,也会变成诱惑。
窗口越长,噪声越多。模型如果没有学会证据选择,更多上下文可能只是给它更多可复制的材料。
这篇论文的启发在于,它把“推理质量”落到了一个可操作的问题上:不是问模型想得够不够多,而是问它的每一段思考有没有绑定到正确证据。思维链不应该只是模型自言自语的长文本;它应该像一条可追踪的证据路径。
少复制,不是少看上下文。
少复制,是少把无关上下文带进推理;多 grounding,是让每一次引用都能回到真正支撑答案的地方。
这也是长上下文推理接下来最重要的一条分界线:能装下 128k token 只是入口,能在 128k 里知道哪几段该被认真对待,才是推理能力本身。