这条在讲一个我憋了很久的问题:agent 跑长任务失败之后,根因到底怎么找。出处是 arXiv 2609.13463,原作者 Harsh Raj 他们一帮人,2026 年 9 月 11 号挂上去的,主分类 cs.AI,交叉到 HC、LG、SE。标题起得挺直接,就叫 Root-Cause Attribution Is a Search Problem。
我一开始以为是又一篇"把 LLM 拿来做根因分析"的套路文。这种我夹子里存了三五个,大部分都是换个 prompt 说同样的事。读到第二段才确认这篇不一样。作者写了一个我最近正好撞上的场景:agent 跑一个长任务,日志一大堆,真正关键的那几个动作散在很远的几处,跟最后那个失败信号之间隔了半条轨迹。然后他们说,这种情况下让 LLM 一次性读完整条轨迹、给出诊断,会过早锁定一个看似合理的解释,然后就不再回去看更长的轨迹里的证据了。
过早锁定。这词选得准。
我上周跑的一个 agent 任务就是这毛病。它不是没诊断对,是诊断得太快,快得可疑。任务跑了 40 多步,中间有一步明显是错的,但 LLM 在最后总结时一口咬定是"第 12 步的约束理解偏差"导致的,因为那个偏差看起来最像。我后来人工翻日志,发现真正的问题是第 27 步一个工具调用返回了空值,后面所有判断都建立在那个空值上了。但 LLM 的诊断里没提这个,因为第 27 步和第 12 步之间隔了十五步,它已经锁定在第 12 步了。
所以读到这个论点的时候基本是被戳中了。这篇说的就是这事:根因归因在长时程轨迹里不是"读一遍判断一下",是个搜索问题。信息稀疏、分布在远处、跟可见的失败信号脱节——三个原因。后半句那个"与失败信号脱节"是关键,因为我那个空值问题就是这样,它本身没有直接报错,失败信号根本不指向它。
他们给的方案叫 Continual Search,迭代框架,连续多轮推动判断器继续搜尚未解决的诊断证据。思路不复杂,就是把"一次性判断"改成"持续搜索"。
我顺手跑了一下。原话的完整 prompt 不贴了,论文里有 TeX 源码。我只说我跑的那个感觉。我用这思路改了上周那个失败案例的复现——原来我让模型"读完轨迹给根因",现在改成先给一个初步诊断,然后明确问它"有哪些证据你还没看过",多问两轮。第一轮它还是锁定在第 12 步,第二轮它开始搜第 27 步那个空值了。
所以这个方向我信。不是信它的结果,是信它的机制跟我的坑对得上。
文中另一个数据也值得说:他们在 MegaRCA-Mix 这个自己搞的规模化评测集上,把 GPT-5.5 的 F1 从 0.349 拉到 0.498,超过 40%。MegaRCA-Mix 是 50 个人工标注的失败试验,长时程、执行密集。这个基准造出来就是为了测长时程下的归因,因为现有的 RCA 基准测的是短轨迹,短轨迹上一次性判断够用,长轨迹就露馅。
还有一个观察我读了三四遍才接受:同一模型家族内,较低层级模型有时候能超过较高层级模型。换句话说,搜索效率比原始模型规模更有用。第一次读觉得是偶然,后来想想对。因为如果你的根因归因质量卡在"模型不愿意回去搜"这个行为上,而不是卡在"模型不懂"这个能力上,那更大的模型只是更自信地告诉你一个更顺滑的错诊断。这结论对"堆更多参数就能救 agent 可靠性"这股风头是个冷提醒。
这篇我没跑通的地方也有:他们选了四个现有基准加上自己的 MegaRCA-Mix,我没有去核对那四个基准的细节,时间不够,只把 MegaRCA-Mix 在论文里的描述看完了。所以我说"跑了一下"只是跑在我自己的那个样例上,不是跑他们的实验。别误会成我复现了结果。
DOI 贴这里:https://doi.org/10.48550/arXiv.2609.13463 ,还挂着 pending registration,arXiv 常这样,不影响看正文。
不点链接也能带走的一句:长时程 agent 失败之后,别让模型一次读完整条轨迹就给根因——那只是它找到的最顺滑的答案。把它分轮次往"还有哪些证据没搜"上推。
