上下文不该同时当计算器和账本

2026-10-09 · 论文提交日 2026-10-07 · 列表为 arXiv cs.AI / cs.CL recent(10-08,show=25;show=20 已被 arXiv 拒绝)

为什么重要

同一天的两篇预印本,从异构资料问答和办公工作区两端拒绝同一件事:把长任务的中间状态全塞进上下文窗口。RECAST 认为答案需要的证据经常不在任何一条原文里,必须过滤、聚合或写程序算出来。RunningTab 认为文件已经读到了也不够,任务还欠什么必须由环境记账,不能指望模型自己记得。

筛选只留新方法,不看热度,也不把它们写成已接收顶会。RECAST(2610.10507)是检索与计算混合的证据路由;RunningTab(2610.10444)是环境侧的任务账本。两篇摘要都没给独立代码仓库,stars 未核。Papers with Code 首页这次超时,下面数字只来自 arXiv HTML。

核心论文解读

RECAST:证据是算出来的,不是搜出来的

Yilun Hao、Krishna Sayana、Isabella Ye、James S Ren、Sukhdeep Sodhi、Craig Boutilier、Chuchu Fan(MIT)。arXiv:2610.10507。HTML 脚注写了 equal contribution 和 Google 实习,抽取文本没有把脚注锚到具体姓名,这里不替他们分配单位。

问题用一个例子就够:源里有每月营收和营业利润,问哪三个月营业利润率升得最多。没有任何一段原文直接写着答案。常规 RAG 和 agentic RAG 改的是怎么搜,不改「证据必须先被算出来」。

形式化很短。任务 q,源集合 X,只训练证据构造过程 Gθ,答案模型冻结:

E = G_θ(q, X),    y = F_ans(q, E)

源先被规则预处理器收成统一记录,再给一个紧凑的源画像 m(规模、结构、字段)。RouterLM 看不到全文。每轮动作只有三类。

状态更新是并集加历史,不是覆盖:Et+1 = Et ∪ ΔEt,历史只追加 (动作, 执行结果)。执行结果含状态、命中数和报错。

只训 RouterLM,两段。SFT 用预训练路由器采样轨迹,冻结裁判判对错,每题选一条又对、可执行、结构合法的专家轨迹;3368 条,并按基准族和难度做封顶上采样。GRPO 只拿「SFT 收集时不是稳定做对」的题:必须至少有一条成功专家轨迹(说明可解)和一条失败轨迹(说明还有空间)。从 SFT 检查点每题再采 4 条,只留成败都有的组。608 个 GRPO 实例,LoRA,Qwen3.5-9B,思考模式关掉。奖励是

R(τ) = 0.90·C(τ) + 0.08·F(τ) + 0.02·V(τ)

C 是裁判判的最终对错,F 是和参考答案的 token F1,V 是动作结构是否合法。正确性占九成。

评测把 CompilerLM 和全体方法的 AnswerLM 都固定成 Gemini 3.5 Flash,裁判也是同一个模型、同一条提示、温度 0。多轮最多 6 轮,保留证据最多 4000 字符。域内六个族各 100 道未见题,跑三次取均值:DataBench、FinQA、HiTab、HotpotQA、LaMP、MultiHiertt。对照五档:不给源、单次 BGE-M3 top-3、一次写完全程 Python、IRCoT、Interact-RAG。

路由器 / 控制器设定域内平均成功率
Gemini 3.5 FlashInteract-RAG(文中最强大模型基线)59.7%
Gemini 3.5 FlashDirect Code(一次写程序)45.1%
Qwen3.5-9BRECAST,不训练64.1%
Qwen3.5-9B最强 Qwen 基线57.0%
Gemini 3.5 FlashRECAST,不训练70.6%
Qwen3.5-9BRECAST,SFT+GRPO75.6%

75.6% 比 Interact-RAG 的 59.7% 高 15.9 个点。不训练的 Qwen 路由器已经高于用 Gemini 当控制器的 IRCoT 和 Interact-RAG,所以动作空间本身(BM25、向量、SQL、临时程序)贡献了一截,不是只有 GRPO。训练再把 Qwen 从 64.1% 拉到 75.6%,并比不训练的 Gemini 路由器高 5.0 个点,六个基准里四个更高。正文说换两个别的裁判、再看 token F1,优势还在;附录 B.4 的逐格数字这次没有核对。

留出集 2WikiMultiHopQA、TAT-QA、WikiTableQuestions 不进 SFT、GRPO 和检查点选择,各 100 题。RECAST 79.3%,最强基线 64.3%,平均高 15.0 个点。域内表 1 的逐基准格子在 HTML 抽取里只有表注、没有单元格,这里不补。

AnswerLM 和裁判都是 Gemini 3.5 Flash。成功率是「这个答案模型加上这个裁判」下的成功率,不是路由器单独的准确率。CompilerLM 看不到原任务,说明写漏了约束,程序会按残缺规格执行。论文没有在摘要里放代码仓库。

RunningTab:读过的文件要记在环境里

Jinheon Baek、Soyeong Jeong、Yumin Choi、Dongsu Han、Sung Ju Hwang(KAIST;Hwang 同时署 DeepAuto.ai)。arXiv:2610.10444。设定叫直接工作区交互(DWI):不建索引,终端直接对原始文件 ls、grep、打开,最后交出一份由很多文件拼成的交付物,而不是一句短答案。

他们先量「已经看见但交卷时丢掉」。DCI(直接语料交互落到工作区)加 GPT-5.4 nano,在 Workspace-Bench 的 100 个任务上跑三次。失败条目由 LLM 标注,和人工的 Cohen's κ = 0.83。丢分里,抽取出错占 51.1%:其中 Shown but Missing 12.3%(打开过的文件输出里有,交付物里没有),Dropped or Distorted 38.9%。发现失败(该打开的没打开,含列出但没开)占 17.6%。交出了交付物的尝试里,891 个评分细则期望、且曾出现在观察里的不同数值,有 19.8% 没进交付物。

RunningTab 不改怎么找到文件。环境在模型旁边维护一张每任务的账:

实现沿用 DCI-Agent-Lite,终端壳是 Pi,工具是 read 和 bash,最多 300 轮,上下文管理级别 3(截断观察、清掉更早的观察),每题一小时。三个模型:GPT-5.4 nano、DeepSeek V4 Flash、Gemini 3.8 Flash。需要裁判时用各基准自己的协议,模型是 GPT-5.4 mini。账本操作从评测轨迹里拿掉。三次运行取均值。

模型基准DCI模型自己记账的最好对照RunningTab
GPT-5.4 nanoWorkspace-Bench 通过率 / TCR@7041.63 / 20.67Self-Tracking 42.93 / 23.0044.73 / 25.67
DeepSeek V4 Flash同上53.28 / 38.67TODO 54.94 / 38.0059.99 / 41.00
Gemini 3.8 Flash同上31.42 / 23.33Self-Refine 32.73 / 28.0046.91 / 36.33
GPT-5.4 nanoTheAgentCompany 分 / 成功32.09 / 17.86TODO 36.74 / 22.6239.12 / 23.81
DeepSeek V4 Flash同上37.47 / 21.43Self-Refine 与 Self-Tracking 成功都是 26.1943.11 / 29.76
Gemini 3.8 Flash同上26.35 / 19.05Self-Refine 分 26.6832.93 / 22.62
GPT-5.4 nanoOfficeQA Pro Acc@0% / @1%53.53 / 65.38Self-Tracking 55.13 / 66.9960.58 / 71.15
DeepSeek V4 Flash同上65.71 / 74.68TODO 66.03 / 73.0868.59 / 77.56
Gemini 3.8 Flash同上43.08 / 45.64Self-Tracking 45.00 / 48.2155.77 / 62.82

九个模型×指标组里 RunningTab 都是表内最高。模型自己写 TODO、收尾时自查、或两样都做,提升小,Gemini 上 TODO 和 Self-Tracking 的 Workspace-Bench 通过率还低于 DCI(27.52、26.87 对 31.42)。差别不在「提醒模型要记账」,在账是不是环境写的、会不会被上下文截断清掉。

消融只做了 GPT-5.4 nano × Workspace-Bench。拿掉环境捕获(不再记阅读日志和候选,复查和证据检查一并失效)通过率掉到 41.36,和 DCI 的 41.63 齐平。拿掉复查掉到 41.87 / TCR@70 20.33。拿掉证据检查或收尾检查,通过率都是 42.89。阅读量最高的三分之一任务上,相对 DCI 的增益大约是阅读最少那三分之一的两倍;DCI 自己的通过率从轻到重掉 16 到 27 个点。账本的价值随读过的东西变多而变大。

同一个账,三个模型用法不同。Gemini 每次都先写需求并在收尾检查前拉复查,76.9% 的尝试用复查点名的日志条目来结项。GPT 经常等到收尾检查才碰账,检查之后还有 72.6% 会操作账本、17.1% 会改交付物。DeepSeek 更常去开那些列出但没打开的候选(54.7%)。所以「有账」不等于「会用账」。

阅读日志只存文件内容,不存模型自己算出来的和(比如加总),也不存只在目录列表里见过的值。GPT-5.4 nano 上,交付物丢掉、但观察里出现过的数值,94.8% 仍在账里;把这些值遮住再问同一个模型,不给账只能找回 8.4%,给该需求的复查能找回 45.8%,给整份阅读日志能找回 78.1%。账里有,不等于交付物会写上。Shown but Missing 类细则的满足率只从 DCI 的 20.7% 到 27.0%。

相关工作

两篇都明确和「模型自己维护状态」划界。RECAST 的相关工作把 IRCoT、Interact-RAG 放在检索侧,把 PAL、Toolformer 一类放在程序侧:前者只挑选源里已经写着的内容,后者常常让程序直接产出最终答案,或只服务一种表。RECAST 把程序降成证据操作,答案仍由冻结的 AnswerLM 在接受后的证据上生成。

RunningTab 的相关工作把 MemGPT、Reflexion、Magentic-One 放在另一边:那些记录是模型写的,完成也是模型标的。环境侧账本的完成条件是「摘录对得上」,不是模型说完成了。

同一天还有一篇可以放在旁边,但不并进主结论。SciExam for ENSO(2610.10513) 让智能体用真实观测建 ENSO 的低阶随机模型,六小时预算内先写诊断,诊断冻结之后只能拿这些诊断当反馈,隐藏评分再测统计、未观测量和留出年份。十二个系统里六个超过一篇已发表模型。它同样把「可反馈的中间对象」从原始材料和最终叙事里拆出来,但是气候建模考试,不是证据路由,也没有和上面两篇共享实验协议。代码在 ylzhang2447/SciExam-ENSO-code。

我的判断

两篇合在一起,说的是分工,不是又一个更长的上下文。要跨记录计算的东西,交给显式操作和一次编译;要活过很多轮阅读的东西,交给环境记账。上下文窗口继续当当前这一步的工作记忆,不再兼任数据库和项目经理。

RECAST 的 15.9 个点不能读成「小模型碾压大模型做问答」。域内最强对照是 Gemini 控制器的 Interact-RAG,答案模型和裁判仍是 Gemini 3.5 Flash。更值得记住的是不训练的切分:同一套动作空间,Qwen 路由器 64.1% 已经高于 Qwen 最强基线 57.0%,也高于 Gemini 版 Interact-RAG 的 59.7%。GRPO 是在这个动作空间上再加 11.5 个点,而且奖励几乎就是最终对错(0.90)。它优化的是「哪条证据构造路径让答案模型做对」,不是证据本身的某种独立正确性。

RunningTab 的增益很不匀。GPT-5.4 nano 在 Workspace-Bench 上通过率只比 DCI 高 3.1 个点(41.63 到 44.73),Gemini 3.8 Flash 高 15.5 个点(31.42 到 46.91)。论文自己的操作表说明原因:Gemini 会用复查,GPT 多半等到被退回才看账。消融把环境捕获拿掉就回到 DCI,所以不要把它实现成系统提示里的一张 TODO。

落地时两条约束不要丢。RECAST 的编译器看不到原题,路由说明必须自洽。RunningTab 的账不记录派生计算,加总、汇率、只在 ls 里出现的文件名,仍会丢。两篇都还是 2026-10-07 的预印本。