Illusion of Diminishing Returns
Paper · ICLR 2026 · arXiv 2509.09677v3

回报递减是错觉:单步的几个百分点,会放大成长程执行的数倍长度

短基准上的单步准确率提升看起来越来越小,但如果任务要求连续做对很多步,这些提升会复利。 论文把规划和知识都显式喂给模型,只留下 retrieve-then-compose 的执行,发现执行本身就会随步数崩掉; 进一步把长上下文与 self-conditioning 分开,并观察到 thinking 能修复后者。

Akshit Sinha 等 · Cambridge / U. Stuttgart / MPI-IS / Southampton / ELLIS Tübingen / Tübingen AI Center arXiv 2509.09677v3(以 v3 为准)↗ 代码 ↗
TL;DR · 30 秒抓住核心

如果每步独立、成功率为 p、出错就失败,长度 H 的任务成功率是 pH;把成功率固定为 s,可执行长度是 Hs(p) = ln(s) / ln(p)。 按这条公式,p 从 0.95 到 0.99 的变化,会让 H0.5 从约 13.5 轮变成约 69.0 轮——短基准上的「边际递减」因此可能只是尺子选错了。

论文把知识(上下文字典)和计划(每轮要查的 key)都给出,只测执行。即使这样,除 Gemma3-4B 和 Qwen3-4B 外,所有模型第一步都接近满分;但 Qwen3-32B 仍在 15 轮内跌破 50%。更大的模型能在更高准确率上维持更多回合,Figure 4(b) 给出清晰的规模趋势。

每步准确率不是常数:固定第 100 轮、只改变前 99 轮历史中的错误率,错误率越高,第 100 轮越容易错。这是 self-conditioning。r=0 时仍低于第一轮,是长上下文效应;两者可分离。扩大模型能大幅缓解长上下文退化,却缓解不了 self-conditioning——Figure 5 图注甚至写的是“increases”(§3.2)。

Qwen3 thinking 模型在同样设定下,第 100 轮准确率不随历史错误率下降(Figure 6)。单轮任务里,这个差别更直观:无 CoT 的最大执行步数是 2–6 步;thinking / CoT 组从 72 步到 2176 步(GPT-5),而 DeepSeek-V3 无 CoT 只有 4 步(Figure 7)。

2176步
GPT-5 单轮最大 K
要求该 K 下准确率 ≥80%
15轮
Qwen3-32B 跌破 50% 的轮数上限
K=1,100 条 rollout
48%
ALFWorld 失败轨迹中
疑似 self-conditioning 的比例
01

短基准上的「回报递减」,可能是尺子选错了

先把两个量分开:单步准确率 p,和模型能连续做对的步数 H。

论文的起点是一个简单事实:如果每一步独立、每步成功率都是 p,且一次错误就让整个任务失败,那么长度 H 的任务成功率是 pH。 把目标成功率固定为 s,反解 H,就得到 Proposition 1:

P(success, H) = pH      Hs(p) = ⌈ ln(s) / ln(p) ⌉ ≈ ln(s) / ln(p)
§2.1 · Proposition 1;推导见 Appendix J。假设每步独立、p 恒定、无自我纠正。

这条曲线在 p 接近 1 时非常陡。按连续近似,p=0.95 时 H0.5 约为 13.5 轮;p=0.99 时约为 69.0 轮。 短基准上只是从 0.95 到 0.99 的变化,换成长度就是十几轮与近七十轮的区别——这就是标题里的 “illusion”。

但这条公式只是分析用的简化。论文在 §2.1 明确说,这两个假设只用于建立直觉;实测中模型的每步准确率并非常数,也可能自我纠正。 于是真正的问题变成:真实模型的单步准确率,会随着任务变长怎样变化?

要测这件事,得先把规划和执行分开。规划是决定查什么信息、用什么工具、按什么顺序做;执行是把这些步骤做出来。 现有基准往往把两者混在一起:模型答错时,你无法判断是没想到步骤,还是想到了却做错。论文要补的是后一种失败。

论文的中心命题

即使规划和知识都完美,执行仍会在长程上出错

“Even if planning and world knowledge are perfected, LLMs will still make mistakes in execution over a long-horizon.”(§2)

这句话把「长任务失败」从一个笼统的能力问题,拆成了一个可单独测量的问题。

02

把失败归给规划或长上下文,都解释不了同一长度下的差异

论文要排除两个竞争解释:模型不会规划,和模型只是被长上下文拖累。

解释 A

规划 / 推理失败

一条常见叙事是:模型在复杂推理基准上进步,但任务一长就暴露「不会想」。论文引用 Shojaee et al. (2025) 的说法:thinking 模型可能只给出 “illusion of thinking”,因为任务变长后终究会失败(§1)。

这类解释把失败归给规划或推理;它预测模型从一开始就不知道下一步做什么。

解释 B

长上下文退化

另一条解释是:上下文越长,模型越容易丢信息或分心,和内容无关(Zhou et al., 2025a)。它预测只要历史变长,准确率就会下降。

问题在于,更长的历史不仅更长,还更可能包含模型自己的错误。长度和错误率被混在了一起。

论文的拆法很直接:把知识放进上下文(字典),把计划也显式给出(每轮要查的 key),这样规划和参数知识都被拿掉,剩下的就是执行。 在这个设定里,如果模型仍然随回合数变差,就不能再用「不会规划」解释。

对长上下文解释,论文做了一个反事实实验:固定第 100 轮这个位置,把前 99 轮的历史替换成不同错误率的人工输出。历史长度不变,只改变其中错误的比例。 如果错误率越高、第 100 轮越差,就说明模型在 self-condition,而不只是被长度拖累(§3.2)。

论文的定位不是否定规划和知识的重要性,而是说:在长程任务里,执行是一个独立的、可被单独测出的失败来源。这也是它和「长上下文基准」「规划基准」的分工。

03

把计划和知识喂给模型,剩下的才是执行

任务简单到多数模型第一步就接近满分(两个 4B 模型例外);难点只在「连续做对很多步」。

论文设计了一个键值字典求和任务。字典 D: V → Z 的 key 是常见五字母英文单词,value 从 [−99, 99] 均匀采样。 初始状态 S0 = 0;第 t 轮,模型收到一个计划 Pt = {kt,1, …, kt,K},需要查值并更新运行和:

St = St−1 + Σi=1K D[kt,i]
§3 · 每一步是 retrieve-then-compose:先检索 D[k],再把它组合进状态

任务长度有两条轴:回合数 T 和每轮复杂度 K。§3.1 固定 K=1,只增加回合数;§3.3 固定单轮,增加 K。 两个指标分别是 turn accuracy(该轮状态更新正确的比例,与前一轮状态是否正确无关)和 task accuracy at H(前 H 轮每一步都正确的样本比例);在论文独立、恒定 p 的分析假设下,后者等于 pH。Horizon Length H0.5 定义为 task accuracy 首次跌破 50% 的轮数(§2 Evaluation Metrics)。

自己动手:单步准确率如何决定可执行长度

下面的滑块只做一件事:按 Proposition 1 的连续近似,把 p 映射成 H0.5。 它假设 p 恒定、每步独立、无自我纠正——正是论文用来建立直觉的简化条件,不是论文对真实模型的实测结果。

69.0
轮 · 任务成功率降到 50% 时的长度 H0.5
1 轮10 轮100 轮1000 轮
H₀.₅ = ln(0.5) / ln(0.990) = 69.0
读数怎么来的
公式来自 Proposition 1 的连续近似;横轴按 log10(H) 标尺绘制,1–1000 轮。推断 以第一轮准确率代入这条曲线时,论文实测的 H0.5 会低于它,因为真实模型的每步准确率会随回合下降(§3.2)。
手算核对:两组参数与 JS 同口径

公式:H0.5 = ln(0.5) / ln(p),取自然对数,连续近似,不取整。

参数一:p = 0.95。ln(0.5) = −0.693147,ln(0.95) = −0.051293,H = 13.513 → 13.5。

参数二:p = 0.999。ln(0.5) = −0.693147,ln(0.999) = −0.0010005,H = 692.80 → 692.8。

JS 用 Math.log(自然对数),保留一位小数;该交互不做标准差计算。手算与 JS 在相同参数下逐位一致。

简化条件:每步独立、p 恒定、无自我纠正(§2.1 明确说这些条件只用于分析;§3.2 的实测显示 p 会随回合下降)。

反事实:把历史里的错误率当成自变量

论文固定「第 100 轮」这个位置,人为替换前 99 轮的输出历史,使其中错误答案的比例 r ∈ {0, 25, 50, 75, 100}%。 如果 r=0 时第 100 轮准确率仍低于第 1 轮,说明有长上下文效应;如果 r 越高、第 100 轮越差,说明模型在 self-condition。 这个设计把「历史长度」和「历史错误率」分开了(§3.2)。

04

不训练新模型,只把执行拆成回合与步数来计数

论文没有提出新架构,也没有训练新策略;它做的是一套可程序化生成、可复现的评测协议。

多轮实验用 Qwen3(4B / 8B / 14B / 32B)和 Gemma3(4B / 12B / 27B)两个家族,§3.1 固定 K=1,只改变回合数。 单轮实验用二分搜索找最大 K,要求该 K 下准确率 ≥80%(§3.3)。 论文还报告了温度 0 下趋势不变(Appendix Figure 14),以及 CoT / thinking 下的趋势(Appendix Figure 13)。

Appendix G.1–G.5 · 实验设置(按小节转录)

项目设置出处
字典100 个常见五字母单词;值从 [−99, 99] 均匀采样Appendix G.1
rollout每条 50,000 步;Qwen/Gemma 100 条,frontier 模型 20–50 条Appendix G.1
轮复杂度 K§3.1 固定 K=1;§3.3 二分搜索最大 K§3.1 / §3.3
单轮成功阈值准确率 ≥80%§3.3
输出格式<answer> 标签内给整数;few-shot 示例固定格式Appendix G.2
CoT / thinking token 上限10,000 / 32,000Appendix G.4
采样Gemma 与 Qwen thinking:temperature 0.6,top-p 0.95;Qwen non-thinking:temperature 0.7,top-p 0.8Appendix G.4
计算4× NVIDIA A100(40/80GB);frontier 模型通过 OpenRouterAppendix G.5

多轮指标定义在 §2 Evaluation Metrics:task accuracy at H 要求前 H 轮全程无错;Horizon Length H0.5 是 task accuracy 首次跌破 0.5 的轮数。Appendix J 给出 Proposition 1 的推导:在独立、恒定 p、无自我纠正的假设下,task accuracy at H 为 pH。单轮指标则是「一次上下文内能连续执行多少步」的最大 K。

thinking 模型的评测有两个工程细节:其一,CoT 提示下,模型看到历史答案格式后会停止写 CoT,所以论文把 CoT trace 留在历史里,这会增加输入上下文;其二,thinking 模型的 <think> 标签内容会从历史中移除,这会减少上下文(Appendix G.3)。 论文保留 CoT trace 是权衡后的选择:代价是上下文变长,但不这样模型会忘记 CoT 指令(Appendix G.3)。

05

一条 retrieve-then-compose 循环,外加一个反事实分支

上面是多轮执行,下面是分离长上下文与 self-conditioning 的实验设计。

A · 多轮执行循环(K=1) 上下文字典 D word → integer 值 ∈ [−99, 99] 第 t 轮计划 Pₜ K 个 key 由用户给出 下一轮仍由用户给出 输出 answer 当前运行和 Sₜ 进入历史 Retrieve 查 D[k] Compose Sₜ = Sₜ₋₁ + Σ D[k] 历史 Hₜ 前 t−1 轮输出 历史中的错误提高后续执行出错概率 B · 反事实:固定历史长度,只改错误率 固定第 100 轮 历史长度不变 注入错误率 r r ∈ {0, 25, 50, 75, 100}% 测 turn 100 比较 r 与准确率 r=0 仍下降 → 长上下文;r 越高越差 → self-conditioning(§3.2)
图:按 §3、§3.2 与 Figure 3 的实验设计重绘。A 是多轮执行:字典与每轮计划(包括下一轮 Pt+1)都由用户给定,模型只负责 retrieve 与 compose;自己的输出 answer 进入历史,历史中的错误会提高后续 retrieve/compose 的出错概率(红箭头),但下一轮计划不由 answer 生成。B 是反事实分支:把前 99 轮替换成指定错误率的人工历史,再测第 100 轮。

单轮版本把循环压成一次上下文:模型一次看到 K 个 key,要在同一个回答里完成 K 次 retrieve-then-compose。 论文用二分搜索找最大 K,所以这里的「步数」是单轮内的执行长度,不是多轮回合数(§3.3)。

06

规模拉长回合数,thinking 拉长单轮步数

两类能力分开看:多轮实验测「能撑多少回合」,单轮实验测「一次能走多少步」。

规模:第一步几乎都对,长程却分得开

在 K=1 的多轮设定里,除 Gemma3-4B 和 Qwen3-4B 外,所有模型的第一步准确率都接近满分(§3.1)。这说明字典查找和单次加法不是瓶颈。 但 task accuracy 随回合数快速走低:Qwen3-32B 在 15 轮内跌破 50%(§3.1)。

更大的模型能在更高准确率上维持更多回合,Figure 4(b) 因此呈现清晰的 horizon length 规模趋势。论文没有拟合 scaling law:每个家族最多只有 4 个尺寸,作者只描述趋势,不下定律(§3.1)。

Self-conditioning:历史里的错误,会提高后续出错概率

固定第 100 轮、替换前 99 轮历史:当诱导错误率 r=0 时,turn 100 准确率仍低于第 1 轮——这部分归因于长上下文;当 r 增大时,turn 100 准确率继续下降——这部分归因于 self-conditioning(§3.2, Figure 5)。

前沿非 thinking 模型(Kimi-K2、DeepSeek-V3、Qwen3-235B-Instruct-2507,均 200B+)在 healed history 上接近满分,说明长上下文退化可以被规模大幅缓解;但它们在 r 增大时仍然下降,说明 self-conditioning 没有被规模消除(§3.2)。

原文措辞并列:§3.2 Result 4 的标题是 “Unlike long-context, scaling model size does not mitigate self-conditioning.”;Figure 5 图注写的是 “Scaling model size increases self-conditioning, even for frontier non-thinking models.” 两句强度不同,页面保留原文,不替论文统一。

Thinking:同一历史压力下,turn 100 不随 r 下降

Qwen3 thinking 模型在 Figure 6 中表现出不同的模式:turn 100 准确率在 r 从 0% 到 100% 的变化中保持稳定(§3.2)。 论文给出两个可能原因:RL 训练降低了「续写上下文」的倾向;以及先前回合的 thinking trace 被移除,模型在新回合独立思考(§3.2)。

这不是说所有 CoT 都有效。Appendix I 的 CoT 实验仍观察到 self-conditioning;Appendix C.1 的 turn-wise self-verification 只带来混合结果,并明显增加每轮 token、提前耗尽上下文;Appendix C.2 的滑动窗口能缓解,但依赖任务的马尔可夫性质;Appendix D 的并行 majority voting 只带来边际改善。

单轮:从个位数到 2176 步

§3.3 用二分搜索找最大 K,要求该 K 下准确率 ≥80%。Figure 7(a) 的无 CoT 组里,最大执行步数是 2–6 步;Figure 7(b) 的 thinking / CoT 组里,范围从 72 步到 2176 步。

§3.3 / Figure 7 · 单轮最大执行步数(按图中标注转录)

设定模型最大单轮步数 K
无 CoTQwen3-32B2
无 CoTGemma3-27B2
无 CoTDeepSeek-V34
无 CoTKimi-K26
Thinking / CoTKimi-K272
Thinking / CoTQwen3-235B-A22B80
Thinking / CoTDeepSeek-V3112
Thinking / CoTGemini-2.5-Pro120
Thinking / CoTDeepSeek-R1120
Thinking / CoTQwen3-Next352
Thinking / CoTGrok-4384
Thinking / CoTClaude-4-Sonnet432
Thinking / CoTGPT-52176

每个数都是二分搜索得到的最大 K,要求该 K 下准确率 ≥80%;同一模型在两组的数值不能相加。

当前视图
条形长度按 log10(K+1) 归一化,数字是原始 K;同一条对数刻度下,两组可直接比较长度。

在同样单轮、≥80% 的条件下,GPT-5 的 2176 步是 DeepSeek-V3 无 CoT 4 步的 544 倍,是 Claude-4 Sonnet 432 步的 5.04 倍,是 Gemini-2.5 Pro / DeepSeek-R1 120 步的 18.1 倍。 论文还指出,Qwen3-Next 把 Gated DeltaNet 与标准注意力混合,以 352 步高于一些更大的纯注意力模型,提示架构会影响长程执行(§3.3)。

原文对 DeepSeek-V3 无 CoT 的上限有两处不同表述:§1 写 “DeepSeek-V3 fail at performing even four steps”;Figure 7(a) 标 4。§3.3 的完整句是 “the larger Qwen3 32B, Gemma3 27B, as well as frontier non-thinking models like DeepSeek-V3 (670B), and Kimi K2 (1026B), fail to execute even a turn complexity of more than six.”——“more than six” 是四个模型的组级表述,不是 V3 单独上限(4 ≤ 6)。真正的冲突是 §1 说 4 步就失败 vs Figure 7(a) 标 4。页面并列保留,不替原文统一。

真实 agent 轨迹:self-conditioning 的痕迹

Appendix A 人工分析 AgentErrorBench 的失败轨迹,估计 20% 的 GAIA、48% 的 ALFWorld、33% 的 WebShop 失败与 self-conditioning 相似。 错误类别包括 inefficient_plan(计划因先前错误变得过长或不合逻辑)、progress_misjudge(基于自己的先前输出误判进度)、causal_misattribution(正确发现失败但归因错误)。

ALFWorld 与 GAIA 的估计相差 28 个百分点(48 − 20)。作者也说明,这些任务里「哪一步算错」带主观性,难以做定量控制;这正是他们需要合成任务的原因(Appendix A)。

07

这套测量能证明必要,不能证明充分

论文自己的 Limitations 已经划出三条边界:任务、可并行性、指标定义。

边界一

合成任务不是真实 agent

字典求和没有真实 agent 的动作空间、副作用和多种正确计划。论文的原话是:“Improvement on our task is necessary, but not sufficient for long-horizon execution on real-world tasks.”(§5 Limitations)

边界二

单轮任务理论上可并行

把一列数相加属于 TC0,transformer 可以用常数深度完成(Appendix B)。作者补了一个 2×2 矩阵连乘任务(一般属于 TC1),趋势相同;它仍是合成任务,用来补上单轮设定可并行性的缺口(Appendix B)。

边界三

指标不计算自我纠正

task accuracy 要求前 H 轮全程无错;中途犯错即使后来改对也记为失败,因此不奖励自我纠正。论文的分析假设无自我纠正;真实任务里如果错误可撤销、可重试,结论可能不同(§5 Limitations)。

还有两条覆盖范围的限制。规模分析只覆盖 Qwen3 和 Gemma3 两个家族,每个家族最多 4 个尺寸;前沿模型通过 API 评测,rollout 数为 20–50,受成本限制(Appendix G.1)。 论文没有给出 scaling law,只描述趋势。真实 agent 的 self-conditioning 比例来自人工标注,步骤正确性带主观性(Appendix A)。

什么时候别用这套测量:如果你想测的是规划、知识或工具选择,这个任务会把它们拿掉;如果任务有副作用、允许多种正确计划、或错误可以撤销,这个任务的成功率不能直接外推。 推断(依据 §2.2 的任务设计与 §5 Limitations:论文只声称该任务是真实长程执行的必要条件)。

一句话:论文测的是执行这一层。它不能替代真实 agent 基准,但给出了一个可程序化生成、可复现的必要条件下界;在这个下界上,规模与 sequential test-time compute 的收益都能被单独看见。