@omarsar0: 新论文来自微软及其同事。大规模调试智能体轨迹具有挑战性。这是一个巧妙的方…

X AI KOLs Following 论文

摘要

本文介绍了OAT,一种用于基于LLM的智能体系统的轻量级故障归因工具。它仅使用成功轨迹进行训练,并利用神经控制微分方程检测错误步骤,在速度和精度上以数量级优势超越昂贵基线。

来自微软及其同事的新论文。 大规模调试智能体轨迹具有挑战性。 这是一种在生产中监控和改进智能体的巧妙方法。 问题: 确定失败智能体运行中的哪一步导致了失败,通常意味着两种昂贵的选择之一:对整个轨迹运行昂贵的提示流水线,或者对具有难以收集且难以扩展的步骤级错误标签的失败数据进行后训练。 解决方案: 他们提出了OAT,一种轻量级的归因工具,不需要上述任何一种。它仅使用成功轨迹进行训练,通过神经控制微分方程对其动态进行建模,然后标记出失败轨迹偏离该学习到的成功流程的步骤。故障归因变成了对成功外观的单类学习,因此你完全不需要带标签的错误步骤或失败数据。 论文:https://arxiv.org/abs/2607.12747 在我们的学院中学习构建有效的AI智能体:https://academy.dair.ai
查看原文
查看缓存全文

缓存时间: 2026/07/16 22:18

来自微软及其合作者的新论文。大规模调试代理轨迹具有挑战性。这是一种巧妙的方法,用于在生产环境中监控和改进代理。问题在于:在失败的代理运行中找出导致失败的步骤,通常意味着两种代价高昂的选择:对整个轨迹运行昂贵的提示管道,或者在带有步骤级错误标签的失败数据上进行后训练,这些标签难以收集且难以扩展。解决方案:他们提出了OAT,一种轻量级的归因器,它不需要上述任何一种方法。它仅对成功轨迹进行训练,用神经受控微分方程对其动态进行建模,然后标记出失败轨迹偏离该成功流的学习路径的步骤。故障归因变成了对成功轨迹形态的单类学习,因此你永远不需要标记的错误步骤或失败数据。论文:https://arxiv.org/abs/2607.12747 在我们的学院学习构建有效的AI代理:https://academy.dair.ai — # 从成功之流追溯代理故障 来源:https://arxiv.org/html/2607.12747 \DefTblrTemplate firsthead,middlehead,lastheaddefault\DefTblrTemplatefirstfootdefault\UseTblrTemplatecontfootdefault\UseTblrTemplatecaptiondefault\DefTblrTemplatemiddlefootdefault\UseTblrTemplatecontfootdefault\UseTblrTemplatecapcontdefault\DefTblrTemplatelastfootdefault\UseTblrTemplatenotedefault\UseTblrTemplateremarkdefault\UseTblrTemplatecapcontdefault\caption@setkeys[floatrow]floatrowheightadjust=object\undefine@keynewfloatplacement\undefine@keynewfloatname\undefine@keynewfloatfileext\undefine@keynewfloatwithin Samuel Yeh1Yiwen Zhu2Shaleen Deep2Sharon Li1 1威斯康星大学麦迪逊分校计算机科学系 2微软研究院 {samuelyeh, sharonli}@cs.wisc.edu ###### 摘要 基于LLM的代理系统的故障归因,即识别失败轨迹中导致任务失败的步骤,对于调试和改进这些系统至关重要。现有方法要么依赖基于提示的管道(计算成本高昂),要么需要在带有步骤级错误注释的失败轨迹上进行后训练(收集成本高昂且难以扩展)。我们认为,一个实用的故障归因模型应该是轻量级的,并且无需对失败数据进行步骤级监督即可训练。为此,我们研究了无监督故障归因,即仅对成功轨迹进行训练,并在推理时给定失败轨迹识别错误步骤。我们提出了Oat,它将这个问题转化为具有神经受控微分方程的单类学习,对成功轨迹在潜在空间中的动态模式进行建模。在推理时,失败轨迹中的每个步骤根据其与从成功轨迹学习到的动态的偏差被分配一个异常分数,然后用于形成一组错误步骤。仅使用100条成功轨迹进行训练,实验表明Oat比基于提示的基线快200–5000倍,同时在域内和域外数据集上持续优于它们,F1分数分别高出+20%和+7%,这表明Oat是诊断代理系统故障的一个有前景且高效的途径。代码和数据集:https://anonymous.4open.science/r/OAT-183C ### 1 引言 当一个基于LLM的代理系统在一个复杂、长期任务上失败时,其几十或几百个步骤中哪一步出了错?回答这个问题极具挑战性:这些系统通过协调多个专门代理来解决任务,这些代理与工具和外部环境进行交互[yao2023react,Wang_2024,10.24963/ijcai.2024/890],并且轨迹可能跨越代理间的数百个动作。此外,失败的根本原因可能被后续步骤的部分补偿而掩盖。在没有自动化工具的情况下,诊断单个失败轨迹可能需要人类专家花费数小时手动追溯整个轨迹,这不仅在大规模场景下不可行,而且认知要求高且容易不一致。随着代理系统被部署在越来越高风险的环境中,如编程[jimenez2024swebench,wang2025openhands,liu2025largelanguagemodelbasedagents]和科学研究[lu2026towards,schmidgall-etal-2025-agent,ren2026scientificintelligencesurveyllmbased],这种诊断瓶颈成为代理系统可靠部署、调试和审计的关键障碍。为了解决这一挑战,zhang2025which引入了故障归因问题,即给定失败轨迹识别导致失败的步骤,并证明即使是最先进的推理模型在此任务上的准确率也低于15%。后续工作开发了日益复杂的方法,这些方法侧重于开发复杂的提示管道[banerjee2025didwronghierarchicallook,wang2026flatlogscausalgraphs,in2026rethinkingfailureattributionmultiagent],或在带有步骤级错误注释的失败轨迹上使用强化学习对LLM进行后训练[zhang2026agentracer,zhang2025graphtracergraphguidedfailuretracing]。虽然这些方法在基准测试上显示出了潜力,但它们存在两个根本性的局限。首先,在失败轨迹上标注步骤级错误标签成本高昂且本身具有模糊性,难以在实际使用中扩展。其次,基于提示的方法需要在推理时运行前沿LLM,产生巨大的令牌成本和延迟,阻碍了实际部署。

图1:Oat概览。Oat学习通过神经控制微分方程建模成功轨迹的隐藏路径并重构其隐藏表示。在推理时,Oat预测失败轨迹的预期成功路径,并通过实际表示与预期成功路径之间的距离计算的异常分数来识别导致失败的步骤。

我们认为,一个实用的故障归因模型应该是轻量级的,无需前沿LLM推理即可部署,并且能在没有对失败数据进行步骤级监督的情况下训练。为了实现这一目标,我们解决了一个实际问题,无监督故障归因:仅对成功轨迹进行训练模型,并在推理时给定失败轨迹识别错误步骤。这种公式消除了注释瓶颈,因为成功轨迹作为正常运行的副产品从任何代理系统中都很容易收集,不需要任何步骤级标记工作。为了解决这个问题,我们提出了Oat,将其转化为潜在表示空间中的单类代理追踪问题。我们的核心思想是训练一个模型来刻画成功轨迹中的动态模式,并在推理时根据与学习到的正常流的偏差为失败轨迹中的每个步骤分配异常分数。具体来说,我们将轨迹的每一步表示为从LLM提取的潜在向量,并使用神经控制微分方程(Neural CDEs)[10.5555/3495724.3496286](一种建模不规则结构轨迹的原则性方法)将步骤表示序列建模为连续潜在路径。将Neural CDEs与代理设置联系起来既是新的也是非平凡的。代理轨迹的潜在结构反映了目标导向的行为,而检测失败需要对局部步骤级偏差敏感。我们通过两个关键设计建立了这种联系:一个在LLM提取的步骤表示上的连续潜在路径,捕捉代理行为的时间动态;以及一个新颖的门控控制路径,自适应地抑制分布外控制信号,提高模型在未见领域轨迹上部署时的鲁棒性。我们在MCP-Atlas[bandi2026mcpatlaslargescalebenchmarktooluse]的成功轨迹上训练Oat,并在MCP-Atlas以及Who&When[zhang2025which]的失败轨迹上进行评估。尽管仅使用了100条成功轨迹进行训练,没有失败数据,也没有任何步骤注释,Oat(参数化为一个轻量级3层MLP)始终优于包括GPT-5在内的前沿LLM提示方法。此外,Oat在推理时需要零令牌成本,运行速度比基于提示的方法快200–5000倍,使得实时故障归因首次变得实用。我们的主要贡献如下:

  1. 我们为代理系统制定了无监督故障归因,这是一个新的问题设置,通过仅对成功轨迹训练消除了对失败轨迹进行步骤级注释的需要。
  2. 我们提出了Oat,一种基于神经CDE的连续时间单类学习方法,带有新颖的门控控制路径,在潜在空间中对成功轨迹的动态进行建模,并在推理时检测偏差。
  3. 我们进行了广泛的实验,并证明我们的方法是诊断代理系统故障的一个有效、实用且计算高效的途径。

2 相关工作

LLM代理的故障归因。 诊断基于LLM的多代理系统故障的问题日益受到关注。早期工作侧重于通过构建分类法来刻画故障模式。cemri2025why开发了多代理系统故障分类法,将故障模式分为系统设计、代理间对齐和任务验证三大类共14个类别。deshpande2025trailtracereasoningagentic引入了一个细粒度的错误分类法,涵盖推理、规划和执行故障。除了故障分类,最近的工作转向定位导致错误的步骤和/或动作[zhang2025which,in2026rethinkingfailureattributionmultiagent,qian2026actionunveilinginternaldrivers]。特别是,zhang2025which首次提出在失败轨迹中定位导致错误的步骤。他们引入了Who&When基准测试,并发现即使是最先进的推理模型在定位错误步骤上的准确率也低于15%。在此基础上,许多工作开发了提示管道或学习算法来识别错误步骤[banerjee2025didwronghierarchicallook,wang2026flatlogscausalgraphs,in2026rethinkingfailureattributionmultiagent,zhang2026agentracer,zhang2025graphtracergraphguidedfailuretracing]。例如,zhang2026agentracer使用GRPO[shao2024deepseekmathpushinglimitsmathematical]在合成失败轨迹上对LLM进行后训练。然而,这些方法需要大量的计算资源或大规模步骤级错误注释,限制了它们在实际部署中的实用性。从成功轨迹中学习以识别失败的想法在机器人领域已有探索[xu2025can,romer2026failure,zhou2026rcnfrobotconditionednormalizingflow],其中在正常执行上训练单类模型,并在推理时标记异常轨迹。然而,这些工作侧重于轨迹级检测,即区分整体成功与失败执行,而不是定位导致失败的具体步骤。我们的工作通过将无监督的单类学习范式引入LLM代理设置,并将其扩展到步骤级故障归因,弥补了这一空白,这是一个更困难且信息量更大的任务,在代理AI社区中尚未被尝试。
异常检测。 异常检测是机器学习中一个研究充分的问题,旨在识别偏离学习到的正常行为的观测[10.1016/j.cose.2008.08.003,chalapathy2019deeplearninganomalydetection,10.1145/3691338]。单类学习方法仅在正常数据上训练,并在测试时将异常识别为分布外样本[NIPS1999_8725fb77,10.1023/B:MACH.0000008084.60811.49,Hayashi_2026,pmlr-v80-ruff18a,10.1145/2689746.2689747,xu2022anomaly,park2018multimodal,10.1145/3292500.3330672]。然而,标准异常检测侧重于识别给定样本在样本级别是否异常。在代理设置中,这相当于分类一个轨迹是成功还是失败,这是一个粗略的信号,无法揭示失败发生的位置。在本文中,我们引入了一种新颖的单类学习公式,用于代理轨迹中的步骤级故障归因。我们不是在推理时对轨迹进行分类,而是为失败轨迹中的每个步骤推导异常分数,并用它来定位导致故障的步骤。

3 问题陈述

一个代理系统由多个基于LLM的代理组成,每个代理都具备工具调用和代理间通信能力,共同设计用于解决复杂的长期任务。在每个时间步(t),系统从环境中观察到一个状态(s_t),并选择一个代理执行动作(a_t)。给定一个查询(Q),一个轨迹表示为: [ \tau = (Q, a_1, s_1, a_2, \dots, s_{T_\tau - 1}, a_{T_\tau}), ] 其中(T_\tau)是终止步骤。一个评估函数(Z(\tau) \in {0,1})决定轨迹是否成功完成任务((Z(\tau)=1))或失败((Z(\tau)=0))。给定一个失败轨迹,故障归因是识别哪个(些)步骤导致失败的任务,形式化为预测一个错误步骤集(y(\tau’) \subseteq {1, \dots, T_{\tau’}})对于任何满足(Z(\tau’)=0)的失败轨迹(\tau’)。现有工作[zhang2026agentracer]引入了有监督故障归因,这需要在带步骤注释的失败轨迹集上进行训练。然而,现有的有监督方法有两个局限。首先,收集步骤级注释成本高昂且本身具有模糊性,因为依赖于实际注释中无法访问的预言修正函数[ma2026dover,in2026rethinkingfailureattributionmultiagent]。其次,它们侧重于单步干预,因此无法捕捉复合错误,即多个步骤共同导致失败。这些局限性促使我们引入无监督故障归因,下面我们将定义。

定义3.1 (无监督故障归因) 令(\mathcal{D}{\text{succ}} = {\tau^{(k)}})为一个成功的轨迹数据集,没有步骤级注释,即对于所有(\tau^{(k)} \in \mathcal{D}{\text{succ}})有(Z(\tau^{(k)}) = 1)。目标是学习一个预测器(\psi_\theta),仅用(\mathcal{D}_{\text{succ}})训练,在推理时识别失败轨迹(\tau’)中的一组错误步骤:

[ \psi_\theta(\tau’) \approx y(\tau’). ]

定义3.2 (失败贡献步骤) 给定一个失败轨迹(\tau’),(y(\tau’) \subseteq {1, \dots, T_{\tau’}})表示失败贡献步骤的集合,其中每个步骤(t \in y(\tau’))有意义地使轨迹向失败方向退化,无论仅干预(t)是否足以恢复。

4 方法论

在这项工作中,我们将无监督故障归因框架化为LLM表示空间中的单类学习问题,该表示空间包含

相似文章

从成功流程追溯代理失败

arXiv cs.AI

提出Oat,一种轻量级无监督方法,用于识别基于LLM的代理失败轨迹中的错误步骤。该方法利用仅在成功轨迹上训练的神经控制微分方程,在域内和域外设置下实现200-5000倍于提示基线的加速,并显著提升F1分数。

@omarsar0: 苹果的一篇很棒的论文。大多数对工具调用智能体的评估都发生在轨迹结束之后。但那时错误的调用早已发出。这篇新论文将评估移入执行循环中。一个专门的审稿智能体在执行前检查每个临时工具调用。如果有问题,它注入反馈,主智能体进行修正。为了量化修正与新错误之间的权衡,他们提出了“有益性-有害性”指标。有益性衡量基础错误被修复的百分比;有害性衡量因审稿而降低正确调用质量的比例。在 BFCL 上的结果:无关检测准确率提升 5.5%(从 84.9% 到 90.4%),相关检测提升 1.6%,且无需重新训练基础智能体。在 τ²-Bench 多轮任务上提升 7.1%(从 48.7% 到 55.8%)。推理模型审稿者比 GPT-4o 获得 3:1 的收益风险比,而 GPT-4o 为 2.1:1。加入 GEPA 提示优化可再提升 1.5–2.8%。为什么这很重要?你可以保持基础工具调用智能体不变,仅通过改进审稿者即可实现显著的准确性提升。对审稿者的模型选择和提示优化成为独立的生产杠杆。论文链接:https://arxiv.org/abs/2604.27233 在我们的学院学习如何构建高效的 AI 智能体:https://academy.dair.ai

X AI KOLs Timeline

这篇来自苹果的研究论文介绍了“强化智能体”(Reinforced Agent)方法,通过使用专门的审稿智能体在实时执行过程中修正工具调用错误,将评估纳入执行循环。它在 BFCL 和 τ²-Bench 等基准测试上展示了显著的准确性提升,而无需重新训练基础智能体。

AgentForesight:多智能体系统中用于早期故障预测的在线审计

arXiv cs.CL

本文介绍了 AgentForesight,这是一个用于基于大语言模型(LLM)的多智能体系统的在线审计和早期故障预测框架。文章提出了一个新数据集 AFTraj-22K,以及一个专用模型 AgentForesight-7B,该模型在检测轨迹执行过程中的决定性错误方面优于领先的专有模型。