登录

NeurIPS 2026|别等Agent把任务搞砸!7 B审计员AgentForesight在线抓错


速读:更麻烦的是,一个Agent给出错误前提,其他Agent却继续认真执行。 在AFTraj-2K测试集上,它对失败轨迹的关键错误步骤识别指标。 但能不能在预算刚被改错时就提醒系统,而不是让后面的Agent继续沿用这个错误前提? 对失败边界的判断,为更精确的错误归因提供起点。 审计员还要指出错误发生在哪一步、由哪个Agent引入,并给出简短理由,让后续处理有明确的着力点。
2026年10月10日 13:0

从事后归因到在线审计,在任务失败前识别关键错误

多智能体的失误,未必表现为当场报错。更麻烦的是,一个 Agent 给出错误前提,其他 Agent 却继续认真执行。来自罗格斯大学、得克萨斯大学奥斯汀分校和普渡大学的研究团队提出 AgentForesight,让一个 7B 模型在任务运行中持续审计。在 AFTraj-2K 测试集上,它对失败轨迹的关键错误步骤识别指标  Exact-F1 达到 66.44 ,比最强通用模型基线高  19.88  分,而对成功轨迹误报率仅为  2.37% 。

让一个 Agent 规划,一个 Agent 搜索,再让另一个 Agent 汇报,任务就一定更可靠吗?

设想这样一个场景:用户想买一副 200 美元以内的降噪耳机,筛选 Agent 却把预算上限设成了 300 美元。接下来,比较参数、生成报告、给出推荐,每一步都可能有条不紊。可再漂亮的报告,也掩盖不了整条工作流已经偏离了用户要求。

后面的 Agent 未必做错了自己的子任务。它们只是把 前面那一步的错误 ,当成了继续工作的前提。

等推荐生成后,再追问「哪个 Agent、哪一步出了错」,当然有助于复盘。但能不能在预算刚被改错时就提醒系统,而不是让后面的 Agent 继续沿用这个错误前提?

这正是 AgentForesight 的出发点:在局部错误已经出现、却尚未一路传成任务失败时,尽早发出预警。

为此,它把 事后归因前移为在线审计 :每完成一步,外部审计员就读取截至此刻的执行记录,决定继续还是报警,为后续干预争取时间。

论文标题:AgentForesight: Online Auditing for Early Failure Prediction in Multi-Agent Systems

作者:Boxuan Zhang、Jianing Zhu、Zeru Shi、Dongfang Liu、Ruixiang Tang。其中 Boxuan Zhang 与 Jianing Zhu 为共同第一作者,Ruixiang Tang 为通讯作者。

机构:Rutgers University、The University of Texas at Austin、Purdue University。

论文链接:https://arxiv.org/abs/2605.08715

项目主页:https://zbox1005.github.io/agent-foresight/

代码仓库:https://github.com/ZBox1005/AgentForesight

数据集:https://huggingface.co/datasets/ZBox008003/AFTraj

还没看到结局,凭什么叫停?

过去,许多多智能体失败分析工作采用事后归因:先读完一条已知失败的轨迹,再判断责任 Agent 和关键错误步骤。后续错误如何扩散、最终答案为什么不对,都能成为定位线索。

在线审计没有这些「后见之明」。AgentForesight 只能看到当前轨迹前缀,也就是截至此刻已经发生的记录;未来的动作、尚未返回的工具结果和最终成败,都不在它的视野里。

图 1|从事后归因到在线审计。上图事后审计在任务失败后回溯错误;下图在线审计在关键错误出现时报警,为后续处理留下机会。 图 1|从事后归因到在线审计。上图事后审计在任务失败后回溯错误;下图在线审计在关键错误出现时报警,为后续处理留下机会。 难点因此不只是「找出一个错误」,而是区分: 系统尚在合理探索,还是已经出现影响任务成败的决定性错误? 前者不应被无端打断,后者则应在被下游 Agent 继续沿用前尽早识别。

报警也不能只说一句「有问题」。审计员还要指出错误发生在哪一步、由哪个 Agent 引入,并给出简短理由,让后续处理有明确的着力点。

不只收集失败,还要知道什么时候该放行

把事后归因搬到线上,训练数据也得改变。 只有失败轨迹,模型学不到何时应该继续任务;只有整条任务的成败标签 ,又无法告诉它究竟从哪一步开始出了问题。

为此,团队构建了 AFTraj-2K,覆盖代码生成、数学推理,以及涉及工具与检索的 Agentic 任务。数据集包含 2,272 条标注轨迹:1,158 条经过验证的成功轨迹,1,114 条失败轨迹。

但 「最终答对」,并不等于「过程每一步都可靠」 。中途出错后被其他 Agent 纠正的轨迹,不能不加区分地当作可用成功样本。团队因此同时检查最终结果、工具调用的完整有效性,以及每一步与当前子目标的一致性,筛出可用于前缀监督的成功轨迹。

图 2|决定性错误的位置分布。横轴为错误位置占轨迹长度的比例,三个任务域呈现不同分布;总体覆盖 1,114 条失败轨迹。关键错误并不固定出现在开头或结尾。

失败数据则来自两条路径:一条在验证过的成功轨迹上注入错误,检查修改是否生效、任务是否确实失败;另一条从自然失败中提出候选位置,再经多次独立验证,检查错误是否真实存在、是否实质影响任务、是否具有决定性,以及是否为最早的决定性错误。

这里要找的不是最显眼的异常,而是能改变任务结局的关键一步:修正它之后,是否存在让任务从失败转向成功的后续路径?这让标签从「整条任务失败了」,细化为「哪一步、哪个 Agent 引入了决定性错误」。

先学会识别失败边界,再把错误找准

有了步骤标签,为什么还要分阶段训练?因为通用模型面临两道相互关联的门槛: 先分清当前记录是否已经越过失败边界 ,再在出错的记录里 定位具体步骤和责任 Agent。

直接要求它一次学会全部能力,精确归因的 奖励信号又过于稀疏 ,训练就可能退化成一律回答「安全」。AgentForesight 因此采用由粗到细的两阶段训练: 先建立对失败边界的敏感性,再将这份风险判断细化为准确归因。

图 3|AgentForesight 方法总览。左:筛选成功轨迹,通过受控错误注入与自然失败验证构建步骤标注。右:先以 BPPO 学习失败边界,再以三轴奖励细化审计结论。

第一阶段:敏锐捕捉从「继续」到「报警」的关键转折

第一阶段的重点,是让在线审计模型对「还能继续」到「应该报警」的临界变化敏感起来。团队从同一条失败轨迹中取出两个相邻前缀:一个停在决定性错误前,应当继续;另一个只多出刚刚出错的那一步,应当报警。

这样, 任务背景和此前的执行历史保持不变,判断却必须随着关键一步翻转。 训练信号因此聚焦于导致风险变化的内容,而不是等失败后果充分暴露,才认出「这条任务已经失败」。

这就是 边界对偏好优化 (Boundary-Pair Preference Optimization,BPPO):在每个前缀下提高正确回答相对于错误回答的偏好,并联合学习边界两侧的样本。模型由此获得对失败临界点的 风险预判先验 ,为下一阶段的精确定位提供起点。

第二阶段:从「有问题」,到「哪一步、哪个 Agent」

建立风险预判之后,还要让报警足够具体。第二阶段以第一阶段模型为起点,围绕审计结论的三个维度给出奖励。

步骤奖励不是只有「全对/全错」:预测位置越接近标注,奖励越高,为逐步找准错误提供平滑信号。误报与漏报都会受到惩罚,避免模型靠一律报警或一律放行取巧。

训练还将 第一阶段模型作为 KL 约束的参照 ,限制第二阶段偏离已经学到的风险判断。两个阶段并非简单串联:后者要在保留失败边界敏感性的同时,把「这里不对劲」细化为「这一步、这个 Agent 出了问题」。

同样只看当前记录,7B 审计员表现如何?

团队在 AFTraj-2K 的 332 条留出测试轨迹上评估审计能力。AgentForesight 与表中通用模型都逐步读取前缀,并以首次报警中的判断计分。Exact-F1 同时考察关键错误的检出与精确定位,ASS 则衡量报告的错误位置平均偏离标注多少步。

表 1|AFTraj-2K 留出测试集主结果节选。↑越高越好,↓越低越好。

AgentForesight-7B 的 Exact-F1 达到  66.44 ,比该指标上最强的通用基线 DeepSeek-V4-Pro  高 19.88 分 ;相比其基础模型 Qwen2.5-7B-Instruct 的 21.05,提升也十分明显。

ASS 则从 DeepSeek-V4-Pro 的 1.77 降至 0.59,约为三分之一。这里衡量的是已检出失败轨迹上的归因位置偏差,而不是从出错到报警的等待时长。

分域来看,数学、代码与 Agentic 任务的 Exact-F1 分别为 77.36、78.87 和 48.70;Exact-F1 和 ASS 在三个域上都领先主表中的对照方法。

优势也不只出现在自建测试集。在未参与训练的 外部 Who&When 基准上 ,AgentForesight-7B 的关键步骤与责任 Agent 识别准确率分别为 57.69% 和 73.08%,ASS 为 1.62,均为论文所列对比模型中的 最佳结果 。

两个阶段,究竟各自补上了什么?

消融实验给出了直接对照:基础模型的总体 Exact-F1 为 21.05,只用第一阶段 BPPO 训练为 35.63,只用第二阶段训练为 50.42,完整方案训练则达到 66.44。

图 4|两阶段训练的消融结果。完整方案在三个任务域及总体 Exact-F1 上均优于单独使用任一阶段;柱顶数字为四舍五入后的结果。

更能说明问题的是 Agentic 任务:只用第二阶段,Exact-F1 为  19.05 ,低于只用第一阶段的  31.58 ;两个阶段结合后,才提升到  48.70 。

这与两阶段的分工相呼应。数学和代码中的关键错误相对容易定位,定位奖励已能带来较好表现;而在检索、工具调用与多角色交互中,「是否已经构成决定性错误」更难判断,先建立失败边界的辨认能力就尤其重要。

对失败边界的判断,为更精确的错误归因提供起点。

这也解释了为什么不能只盯着 ASS:模型只在少数有把握的案例中报警,也可能得到很小的位置偏差。定位准不准,还要和漏掉了多少错误一起看。

抓得准之外,别把正常任务也叫停

在线审计的另一半考验,藏在成功轨迹里:它不是等任务结束后判断一次「成功」,而是要在每一个尚未完成的时刻,都不误把合理过程叫停。

图 5|成功轨迹误报率与失败轨迹步骤准确率的权衡,越靠左上越好。浅绿色区域为论文选定的分析参考范围:FAR 不超过 20%,Step Accuracy 不低于 50%。

AgentForesight-7B 的成功轨迹误报率 FAR 为 2.37%,失败轨迹上的 Step Accuracy 为 59.51%;DeepSeek-V4-Pro 对应为 43.20% 和 53.99%。

2.37% 是 按整条轨迹计算 的:169 条测试集成功轨迹中, 只有 4 条 在逐步审计时触发过误报。一条轨迹只要在任意前缀上报警一次,就计为误报,而不是用大量正常步骤把错误「平均掉」。

因此,这组结果不只是「更少报警」,而是低误报与较好的关键错误识别同时出现。审计员既要对风险保持敏感,也要给正常探索留下空间。

一个错误答案,如何变成多个 Agent 的「共识」?

论文中的一条地点问答轨迹,展示了这种风险。系统需要寻找 Rivington Hall Barn 附近的一座旧工业城镇;案例标注答案为 Bolton,搜索 Agent 却返回 Horwich,Manager 随后沿用这一结果,最终提交错误答案。

图 6|同一条问答轨迹中的不同判断。AgentForesight 将错误归因于 search_agent 返回错误地点的步骤;Gemini-3-Flash 指向较早的规划步骤,DeepSeek-V4-Pro 则给出 Safe。

两种基线失误恰好相反:Gemini-3-Flash 把仍在规划中的步骤判为决定性错误;DeepSeek-V4-Pro 则接受了这串前后自洽、却建立在错误事实上的执行过程。AgentForesight 指向搜索 Agent 返回错误地点的那一步,而非更早的正常规划。

后续 Agent 重复一个答案,并不会让它变成更可靠的证据。 在线审计要区分的,正是「信息仍待补充」和「关键错误已经被当成依据」这两种看起来都能继续往下执行的状态。

Agent 的下一位队友,可能是独立审计员

AgentForesight 探索的是一种独立分工:执行 Agent 负责推进任务,外部审计员专门判断过程是否已经出现关键偏差。它不要求重新训练底层执行系统,执行能力与审计能力可以分别优化。

这样的审计结论,可以成为暂停、重新规划、切换执行路径或转交人工检查的依据。多 Agent 系统不必等任务结束,才第一次获得关于执行过程的反馈。

本项工作的实验重点仍是在线识别与归因。报警后采取什么动作、能挽救多少失败,以及是否提高最终任务成功率,需要与具体干预机制结合验证。

审计员本身也会出错:论文观察到,本可由验证 Agent 自行纠正的过程仍可能触发误报,已检出的错误也可能存在定位偏差。逐步审计会增加调用开销,在更长的工作流、具身和开放式科研任务中的表现,也有待进一步评估。

这项工作的启示是,提升多智能体的可靠性,不一定只靠更强的执行模型,也可以让一个专门训练的模型,在运行过程中识别并指出关键错误。

多 Agent 协作,不只需要会执行的队友,也需要知道何时该提醒「这一步不对」的审计员。

作者信息

张博轩,罗格斯大学(Rutgers University)计算机科学博士生,师从唐瑞祥教授。研究方向包括可信智能体、大语言模型后训练与生成内容检测,相关成果发表于 NeurIPS、ACL、IJCV 等国际会议与期刊。目前重点关注智能体的在线审计、失败预警与可靠性评估,致力于提升大语言模型智能体在复杂任务中的安全性与可靠性。

个人主页:https://zbox1005.github.io/

实验室主页:https://www.ruixiangtang.net/

主题:任务|错误|在线审计