多智能体系统出了岔子,我们本能地会想:是不是某个 agent 太笨,或者模型不够强。但一篇 10 月 1 日挂上 arXiv 的论文(2610.02036)把另一类失败单独拎出来说事:每个智能体本地的决策都合法,合起来却产出非法的结果。作者 Xin Heng 管这叫「全局连贯性(global coherence)问题」——它失败的不是模型智商,而是共享状态。

观测混叠:看得一样,做起来却要相反 世界 A(隐藏事件 X) 要求动作 a 世界 B(隐藏事件 Y) 要求动作 b(与 a 互斥) agent 两者都看着一样 随机最优成功率 = 1/k,推理再多也救不回
图 1|两个世界在 agent 的上下文里长得一模一样,却要求互不相交的动作。定理给出精确边界:当 k 个不可区分世界要求两两互斥的动作时,随机策略最坏成功率只有 1/k。

论文里最有分量的是一条「观测混叠不可能定理」。它说的是:一个策略能从上一步的观察里保证做出合法动作,当且仅当「所有与该观察一致的世界」都共享至少一个可行动作。反过来说,如果有 k 个看起来一样、但要求动作两两互斥的世界,那么无论怎么随机化,最坏情况下的成功率上限就是 1/k。关键不在于模型不够努力——再多的推理、再多的角色拆分、再多的消息往来、再多的采样,都补不回那个「没被看见的区别」。一个更强的模型,只是能在自己的窗口内思考得更好,它看不到窗口之外的东西。

作者用九项研究给这个结论喂了实打实的证据。在一个受控的修订基准上,同一个前沿模型,当那个决定结果的事件可见时,得分是 40/40;一旦把事件藏起来,几个被测的智能臂得分掉到 12 到 17 分(和 1/3 的随机猜测差不多);而只要把那一条权威事实还回去,立刻又回到 40/40。更贴近真实协作的是 TeamBench 的预算实验:普通团队在 5/5 的跑次里都超了共享预算;把实时计数摆出来,仍有 4/5 超标;直到在提交(commit)那一刻强制校验,超标才降到 0/5。在 tau2-bench 的电信场景里,当前状态检查在静默回滚之后只剩 0.07,而由运行时统一管的得分是 1.00。

把这件事翻译成工程语言,相当于给多智能体系统提了个醒:你以为自己在「协调」,其实可能只是把同一个失真的事实,在多个 agent 的窗口里各讲了一遍。论文的价值不在于发明一个新框架,而在于把「缺了哪个区别、该由谁记住它」这件事,从模糊的直觉变成了可以逐项检查的职责清单。它和早些年大家热衷于堆角色、堆消息的玩法形成对照——那些做法默认「更聪明的编排」能解决一切,而这篇论文用定理和实验说明,编排再聪明,也补不回一个没被任何节点持有的关键区别。

控制点越往后移,团队越不超标(TeamBench 预算实验) 5/5 无约束 4/5 可见计数 0/5 提交时校验
图 2|把约束放在「看得见」层面还不够,真正生效的是在提交动作那一刻由运行时统一把关;这恰好是后面几篇会反复出现的解法——让 harness 拥有状态,而不是交给 agent 自己记。

论文给出的解法是:模型负责提议,运行时(harness)负责持有共享状态、并在提交时统一把关。它用一套局部到全局的运行时语义 X =(拓扑 H、范畴 C、群胚 G、层 F、最小历史 D)来描述这件事——拓扑记录哪些作用域重叠,范畴管会改变状态的动作,群胚保留可逆的翻译,层测试局部视图能否粘成一个一致的世界,最小历史只保留「会改变合法未来」的那些区别。这套话翻译过来就是一句大白话:局部聪明补不回全局状态的缺失。它和本站此前覆盖的「共享状态污染」(1613)指向同一方向,但分工不同——那篇戳的是协作基准只评末端、证据核验只有 14% 的盲区;这篇更进一步,把「谁来持有区别、谁在提交时校验」当成一类独立的失败模式来对待。

对实际搭多智能体系统的人,这篇论文最有用的提醒是:很多多智能体翻车,缺的是状态或归属,不是缺一个更大的模型。具体落地有两件事值得做:一是上下文工程,想清楚「哪些区别必须进每个 agent 的窗口」;二是把运行时该持有的状态、该做的校验真正交给 harness。论文还顺手泼了一盆冷水——加一个 manager agent 并不是解药,它不过是多了一个带局部视野的提议者,同样受那条不可能定理约束。换句话说,与其叠更多层编排,不如先把「哪个区别决定合法性、它该由谁持有」这件事想清楚,这往往比换更强的底座更划算。