SSCBench: 评 测 面向 工具 使用 型 LLM 智能 体 的 故障 注入 测试 的 证据 效力
故障注入评测里,采纳不能直接解释成尽管已有及时反证仍依赖注入断言。SSCBench 在 τ-bench 上记录反证何时可见,以及这次执行是否在首次使用前看到它。

本文目录
Xincheng He$^{1,2}$,Wanli Dong$^{1}$,Zhaoqiang Guo$^{3}$,Yan Liu$^{4,1}$,Lei Xu$^{2}$
$^{1}$江南大学人工智能与计算机学院,中国;$^{2}$南京大学计算机软件新技术国家重点实验室,中国;$^{3}$浙江大学计算机科学与技术学院,中国;$^{4}$无锡职业技术大学物联网工程学院,中国
SSCBench:评测面向工具使用型 LLM 智能体的故障注入测试的证据效力
摘要
故障注入正越来越多地被用来评测工具使用型 LLM 智能体的可靠性。然而,当智能体自己决定执行过程中哪些权威观察会变得可见时,故障采纳结果应当如何解释,这方面的研究仍然有限。本文对智能体故障注入评测中的这一证据效力问题做系统研究。我们提出一套测量协议:它规定哪些观察能够反驳一条被注入的断言,判定这些观察能否在受影响事实被首次使用之前变得可见,并记录受评执行是否真的实现了这一条件。我们把 SSCBench 构造为该协议的一个实例,并在两个 $\tau$-bench 环境中,对四个故障算子和五种智能体配置上的 1,191 次故障执行进行评测。实验表明,同一个已被纳入的故障案例和智能体配置,可以在不同执行中实现实质不同的证据条件;即便支持“及时反证”这一主张的总体很稀疏、甚至不存在,汇总层面的采纳仍然可以是定义良好的。例如,在反证最终变得可见的 44 次采纳运行中,只有 17 次在首次使用之前收到反证,27 次是在之后才收到。我们还发现,首次出错的时机与后来的立场修正不必重合;自动轨迹分析可以找回采纳,却不能可靠地找回时间诊断所需的首次错误依赖事件。我们认为,一次执行所实现的证据条件,以及支持某种特定主张之解释的总体,本身就是故障注入评测的一部分,应当在把采纳解释为“在使用前反证之下的失败”之前先予以报告。
索引词:
LLM 智能体、故障注入、评测效力、反证。
I 引言
故障注入 [1] 正越来越多地被用来评测工具使用型 LLM 智能体的可靠性。这些智能体通过读取并修改持久状态的 API 与软件系统交互 [2, 3, 4, 5],因此在工具交互处施加受控故障,是研究错误信息如何在一次执行中传播的自然方式。已有评测报告任务退化、恢复,以及错误信息向后续动作或回复传播等结果 [6, 7, 8, 9, 10, 11]。
尽管在构造故障并研究其下游效应上已经投入了大量工作,在解释由此得到的采纳结果时,一个基本问题仍然存在。主张智能体在存在矛盾证据的情况下仍然依赖被注入的故障,所需要的不止是故障传播:有效的反证必须在智能体首次使用受影响事实之前就已经变得可见。对工具使用型智能体而言,评估这一条件提出两个特别的挑战。第一,评测者必须确定,究竟哪一种观察真正反驳了被指定的注入断言。第二,因为后续的工具交互由智能体选择,评测者必须把“接口上是否提供了这种反驳”与“在已实现的执行中,它是否在使用之前变得可见”区分开。
第一个问题关乎反证的规定。检索到与受影响事实相关的信息,并不必然构成对注入断言的反驳。例如,在我们的 ItemOption 算子中,一条权威的商品记录列出有效的商品变体,但它只有在可见执行已经确定哪一个商品变体对应于该订单项之后,才能反驳某一订单项被篡改的选项。因此,把每一次相关读取都当成反证,可能赋予这次执行一个它尚未建立的证据条件。
第二个问题来自执行期间所走的观察路径。评测接口可以提供一次正常交互,用来核验被注入的断言,但是否发生、何时发生,由智能体决定。考虑一次预订更新被抑制,而工具仍然返回 status: success。对未改变预订的一次权威回读可以反驳这一确认。一次执行可能在依赖所报告的成功之前就做这次回读,另一次可能只在之后才做,还有一次可能永远不做。因此,反驳故障的机会,和一次执行所实现的证据条件,是不同的性质。
另一个问题关乎采纳结果如何被解释 [12, 13, 14]。汇总层面的采纳确立的是:一条被注入的断言传播成了错误依赖,但它本身并不确立这件事发生在及时反证之后。同样,最终反证把证据在使用之前到达的执行,和只在之后才到达的执行混在一起。因此,关于“尽管有及时反证仍然依赖”的主张,所要求的被观察总体,不同于只关于故障传播的主张。我们把这一要求称为故障注入主张的证据效力。
最后,这些执行层面的条件必须能够从智能体轨迹中被可靠地恢复。通用的失败定位或异常检测,也许能识别出某处出了问题,却不能确定智能体是否依赖了被指定的注入断言,也不能确定这种依赖首次发生在何时。因此,一种自动分析可能找回下游的故障信号,却与解释故障注入结果所需要的语义事件和时间事件不一致。
本文系统研究工具使用型智能体的故障注入评测中的这些问题。我们提出一套测量协议:它为每条被注入的断言规定反证,确定从固定的故障上下文出发的一条合法延续能否在受影响事实被首次使用之前暴露该反证,并重建受评执行是否真的实现了这一条件。我们构造 SSCBench,在 $\tau$-bench [15] 的零售和航空环境上实例化该协议。SSCBench 包含四个故障算子,覆盖三种反证获取结构。实验覆盖五种智能体配置和 1,191 次故障执行。我们研究已实现的证据条件如何在执行之间变化,它如何改变采纳结果背后的经验支持,首次错误依赖与主要使用锚点如何相关,以及自动轨迹分析能以多高的准确度恢复所需的测量事件。
我们的贡献概括如下:
- 我们识别并形式化了工具使用型智能体故障注入评测中的一个证据效力条件。把采纳解释为在及时反证之下的错误依赖,既需要针对注入断言的一次有效反驳观察,也需要证据表明这一观察在受影响事实被首次使用之前已经变得可见。
- 我们提出一套测量协议,并构造 SSCBench 来把这一条件操作化。该协议把故障特定的反证、案例层面的使用前可揭示性,以及执行层面对反证到达和依赖使用的重建结合在一起,覆盖四个故障算子和三种获取结构。
- 我们用经验表明,这些测量区分在五种智能体配置和 1,191 次故障执行上实质地影响故障注入评测。被纳入的案例并不固定一次执行所实现的证据条件,汇总结果可以不同于支持某种特定主张之解释的总体,而通用的轨迹诊断可能与测量所需的语义事件和时间事件不匹配。我们由此得出报告和解释故障注入结果的实用准则。
II 工具使用型智能体的故障注入评测
II-A 评测设定
故障注入评测的是,当受控错误在智能体与环境交互期间被引入时,智能体如何行为 [6, 7, 8, 16, 17]。典型评测选择一个任务和一种智能体配置 [18, 19, 20, 21, 22],在一次合格的工具交互处施加干预 [23],记录由此产生的轨迹 [24],并导出下游结果,例如任务成功、恢复,或错误信息向后来的动作或回复传播 [10, 11]。
对工具使用型智能体而言,轨迹也决定干预之后哪些信息变得可用。后续工具调用可能暴露与注入错误相矛盾的权威状态,可能只在错误已经影响执行之后才暴露它,也可能根本不暴露。因此,两次执行可以包含同一个被注入的故障和同一个下游结果,而在产生该结果时可用的信息却不同。
图 1:一个动机示例,结果相同,证据不同。
II-B 动机示例
考虑图 1 中的航空任务,改编自 $\tau$-bench [15]。用户要求智能体更改一份已有预订。我们注入一个 WriteEffect 故障,它抑制所请求的更新,同时保留工具的成功确认。工具返回 status: success,尽管存储的预订并未改变。随后一次 get_reservation_details 调用可以暴露这份未改变的预订,并与所报告的成功相矛盾。图 1b 展示这一同一故障的两次执行。在运行 A 中,智能体告诉用户航班已经更改,只在之后才读取未改变的预订。在运行 B 中,未改变的预订在同一主张被提出之前就已经变得可见。两次执行产生同一个错误的下游主张,但它们处于不同的证据条件之下。图中,$T_{E}$ 标出矛盾观察的到达,$T_{S}$ 标出受影响信息的首次使用。
这个例子暴露出对故障注入评测很重要的两个区分。第一,与故障相关的信息并不必然足以反驳它。例如,在一个订单项选项错误中,商品记录只有在执行已经确定该记录对应于受影响的订单项之后,才成为反驳证据。第二,接口上存在反驳观察,并不决定某一次特定执行是否在错误信息被使用之前获得它。智能体随后的交互决定这一实现。这些区分影响下游采纳结果可以如何被解释。观察到一个被注入的错误传播进了智能体的动作或回复,确立的是故障传播。把同一结果解释为尽管有及时反证仍然依赖,还额外要求证据表明:相关反驳在使用之前已经变得可见。
III 故障注入评测的证据条件
III-A 测量对象
定义 3.1(注入故障)。
注入故障是在一次工具交互处的干预,它使这次交互传达关于受影响事实 $f$ 的一条错误断言 $v^{\prime}$,而权威的环境状态支持一条不同的断言 $v$。携带 $v^{\prime}$ 的观察是承载故障的观察。受影响事实被限定到一个目标实体、一个属性和相关状态。对于改变状态的操作,它也可以关乎一次被指定的逻辑请求所声称的效应。当干预生效、并且承载故障的观察被送达智能体时,一次运行被触发。
定义 3.2(依赖使用)。
对 $f$ 的依赖使用,是一条智能体消息、一次工具调用或一次交接,其可观察内容或参数依赖于关于 $f$ 的某个值或命题,包括导出值。正确的、带限定的和错误的使用都算。一次调用若只是检索关于 $f$ 的信息,则不是依赖使用,除非其参数本身依赖于 $f$。
定义 3.3(错误依赖与采纳)。
错误依赖是一次依赖使用,它把 $v^{\prime}$ 或由它导出的值当作起作用的任务事实。若一次运行至少包含一次错误依赖,则称它采纳了该故障,记为 $A=1$。只为核验一个有争议的值而使用该值,不构成错误依赖。
定义 3.4(有效反证)。
一次观察,或一组观察,是对 $v^{\prime}$ 的有效反证,当且仅当下列条件全部成立。
- 权威性:对于 $f$,其来源至少与承载故障的观察一样权威。
- 实体:它关乎同一个目标实体。
- 范围:它关乎错误断言所点名的状态或逻辑请求。
- 独立性:它建立在干预并未改写成与 $v^{\prime}$ 一致的信息之上。
- 充分性:连同智能体已经可用的任务语义和工具语义,它足以矛盾 $v^{\prime}$。
只有评测者知道的知识不贡献于充分性。独立性关乎信息来源,而不是消息边界;因此有效反证可以与承载故障的观察一起被送达。智能体生成的断言并不制造反证;反证必须建立在通过评测接口送达的、对任务具有权威性的信息之上。
模型可见的历史包含智能体上下文中可用的用户消息和智能体消息、工具调用和工具观察。只有评测者可见的环境状态和干预日志被排除在外。
令 $T_{F}$ 表示承载故障的观察被送达的时刻,令 $T_{E}$ 表示有效反证已经完全进入模型可见历史的最早步骤。若若干观察被联合要求,$T_{E}$ 是最后一条所需观察到达的步骤。在故障送达之前就已经可见的证据可以产生 $T_{E}<T_{F}$。若在被观察的执行中没有出现有效反证,则 $T_{E}=\infty$;若到达无法确定,则 $T_{E}$ 不可判定。
故障之后的首次依赖使用和首次错误依赖是
| $\displaystyle T_{S}$ | $\displaystyle=\min\{t>T_{F}:\operatorname{Use}_{f}(e_{t})\},$ | (1) | ||
|---|---|---|---|---|
| $\displaystyle T_{U}$ | $\displaystyle=\min\{t>T_{F}:\operatorname{FaultyReliance}_{f}(e_{t})\}.$ |
$T_{S}$ 的定义独立于采纳,并充当主要的时间锚点。$T_{U}$ 是用于定位首次错误依赖的次级诊断锚点。只要二者都可判定,就有 $T_{F}<T_{S}\leq T_{U}$。即便 $T_{U}$ 无法被定位,采纳仍可能是可判定的。一次没有故障后依赖使用的运行,不同于一次 $T_{S}$ 不可判定的运行。
III-B 使用前可揭示性
一个有效故障传达一条与任务相关的错误断言,同时保留该干预所要求的非目标语义。
定义 3.5(使用前可揭示性)。
对于一个有效的候选故障 $c$,令 $h_{c}$ 表示其固定的注入上下文,令 $\rho$ 表示在同一故障环境、接口和权限下的一条合法延续。该候选是使用前可揭示的,如果
| $\exists\rho\quad\text{such that}\quad T_{E}(h_{c}\/\rho)<T_{S}(h_{c}\/\rho)<\infty.$ | (2) |
|---|
注入上下文固定目标实体、注入点、模型可见历史、故障参数、干预的持续性、接口和权限。$\rho$ 中的每一次交互都必须使用可从模型可见历史和任务接口得到的参数,而不使用只有评测者知道的信息。
当一个故障既有效又使用前可揭示时,它被纳入。可揭示性是故障上下文和评测接口的性质:它确立,有效反证可以通过正常交互在首次使用之前变得对模型可见。这一机会是否被实现,则是单次执行的性质。
III-C 已实现的证据条件
对于一次已被纳入并被触发、且首次依赖使用可判定的运行,证据条件由 $T_{E}$ 与 $T_{S}$ 的次序定义:
| $Z_{S}=\begin{cases}\mathrm{pre},&T_{E}<T_{S},\\ \mathrm{late},&T_{S}<T_{E}<\infty,\\ \mathrm{absent},&T_{E}=\infty.\end{cases}$ | (3) |
|---|
一次到达在前的运行,在首次使用之前就有可见的有效反证。一次到达在后的运行,只在首次使用之后才获得它。一次到达缺失的运行,在被观察的模型可见历史中不包含有效反证。不可判定的到达不被归为缺失;没有依赖使用的运行不接受相对于使用的到达分类。
可揭示性与到达描述的是不同性质。可揭示性为该案例确立一次使用前的反驳机会;$Z_{S}$ 记录某一次特定执行所实现的条件。因此,同一个已被纳入的故障可以产生不同的 $Z_{S}$ 值。
下游结果与反证的时机支持不同的主张:
| $\displaystyle A=1$ | $\displaystyle\qquad\text{fault adoption},$ | (4) | ||
|---|---|---|---|---|
| $\displaystyle A=1\land T_{E}<\infty$ | $\displaystyle\qquad\text{adoption with eventual counterevidence},$ | (5) | ||
| $\displaystyle A=1\land T_{E}<T_{S}$ | $\displaystyle\qquad\text{adoption with pre-use counterevidence}.$ | (6) |
式 (4) 是故障采纳,式 (5) 是带有最终反证的采纳,式 (6) 是带有使用前反证的采纳。
对于被采纳的运行,$T_{E}<T_{U}$ 支持一条互补的、针对依赖的主张:反证在首次错误依赖之前已经可见。我们用 $T_{S}$ 作为共同的分层锚点,因为它的定义独立于采纳,因而对采纳和未采纳的运行都统一适用。$T_{U}$ 则在被采纳的运行内部定位首次错误。到达记录有效反证何时进入模型可见历史。因此,$T_{E}<T_{S}$ 与 $T_{E}<T_{U}$ 刻画的是不同的时间关系。一次满足 $T_{S}<T_{E}<T_{U}$ 的运行,相对于首次依赖使用是到达在后,相对于首次错误依赖则是依赖之前。
IV SSCBench:把感知到达的故障注入操作化
SSCBench 是一个故障注入基准,其中每一个被纳入的案例都带有一条显式关系,把一条错误断言、能够反驳它的观察,以及决定这些观察何时变得对模型可见的执行事件联系在一起。图 2 概括它的三种机制。一份故障契约把一次干预绑定到受影响事实及其有效反证。可揭示性纳入确立一条合法延续,使该反证可以在首次依赖使用之前到达。评测期间,执行重建从轨迹中恢复已实现的故障、证据和使用事件。这些机制使反证到达既是基准构造的一种受控性质,也是执行的一种可观察性质。
图 2:SSCBench 概览。
我们在 $\tau$-bench 的零售和航空环境中实例化 SSCBench。源环境提供限定受影响事实的任务义务、划定合法干预与观察的工具接口,以及可以充当权威证据的持久记录。SSCBench 在这一基底上增加一种有范围的故障关系、一种显式的反证关系,以及保留执行层面测量所需时间事件的轨迹记录。
IV-A 故障契约的实例化
SSCBench 中构造案例的单位是一份故障契约。故障契约通过把关于受影响事实的一条错误断言,与能够反驳它的独立观察关联起来,赋予一次被注入的变异以测量语义。具体而言,契约固定目标实体和状态范围、被注入的断言、反证的权威依据,以及使矛盾变得充分的语义关系。它也决定这种反证如何通过任务接口被获取。
我们从任务义务和工具契约导出算子模板,并在具体的环境记录上实例化它们。三个读值算子修改返回观察中的一个指定字段,同时保持对应的权威记录不变。WriteEffect 则干预一次状态转移:它抑制一次匹配的更新,同时保留工具返回的成功确认。每一次实例化都把干预绑定到一个目标实体、一个具体的受影响事实,以及能够矛盾由此产生的错误断言的权威观察。
四个算子在被注入的故障、使反证变得充分的关系,以及反证能够变得对模型可见的路径上各不相同。ReturnDate 把预订的返程日期提前,PaySource 翻转支付类别,ItemOption 用另一个选项替换已订购商品的选项。
这些算子实例化三种反证获取结构。对 ReturnDate 和 PaySource 而言,反驳所需的观察与承载故障的观察一起被送达。它们的充分性仍然依赖于把被保留字段连接到受影响事实的、对智能体可见的语义。对 ReturnDate,被保留的去程航段通过往返行程的次序约束成为反证。对 PaySource,被保留的支付标识只有在它对智能体建立起与支付类别的关系时才变得充分;存储数据中的经验命名模式本身并不提供这一语义。
ItemOption 则使用跨记录的反驳关系。权威商品记录标识有效变体,但它只有在商品变体被绑定到该订单项之后,才成为某一被篡改订单项的反证。所需的商品记录可能已经出现在可见前缀中,也可能通过后来的查找进入执行。因此,对同一个被实例化的故障,反证的可用性与反证的到达可以在不同执行之间不同。
WriteEffect 把反驳关系移到一次状态转移的两侧。它的错误断言由一次成功确认承载,而该工具契约声明所请求的更新已经被提交。变异抑制被指定的状态改变,同时保留该确认以及接口的正常校验。反证随后由这次尝试之后对持久预订状态的一次权威读取提供。这次读取只有在仍然可以归因于同一次逻辑请求时,才反驳该确认。
为保持这一归因,WriteEffect 按预订、航班变更、舱位和支付方式匹配目标请求。重复尝试只有在其间没有写入改变受影响字段时,才属于同一次逻辑请求。因此,后来的预订读取只有在其状态范围仍然指向被抑制的那次尝试时,才提供反证。
这些获取结构约束有效反证可以如何进入一次执行,却不固定它实际上是否进入、何时进入。由此得到的故障契约定义测量所要求的语义关系。
IV-B 使用前可揭示性的纳入
故障契约决定什么构成有效反证。纳入还额外要求正常的交互表面允许该证据在依赖使用之前变得对模型可见。因此,SSCBench 只有在一个具体注入上下文拥有使用前可揭示性见证时,才纳入它。
对于候选 $c$,注入上下文 $h_{c}$ 把模型可见前缀固定到承载故障的观察为止,并连同目标、故障参数、干预持续性、接口和权限一起固定。见证是同一故障环境下的一条合法延续 $\rho$,其工具参数可从该执行得到,且其被送达的观察在首次依赖使用之前满足契约的反证关系。纳入条件是 $T_{E}(h_{c}\|\rho)<T_{S}(h_{c}\|\rho)<\infty$。见证不必完成任务,但它必须在原有权限下通过正常任务接口产生。一次干净执行不能充当见证,因为它并不为被注入的故障建立反证关系。
一个可接受的见证以一份有效的故障契约为前提。被指定的干预必须保留算子的非目标语义,包括模式和标识约束,同时受影响事实对任务仍然相关。证据的权威性和充分性建立在对智能体可用的领域语义和接口语义之上,而不是建立在评测者观察到的经验相关之上。例如,订单价格与当前目录价格相等,并不确立二者必须一致这一语义要求。
见证轨迹必须确立纳入条件所表示的完整关系。轨迹记录干预和故障送达、查找参数的来源、构成反证的观察,以及所提议的首次依赖使用。证据必须满足权威性、实体、范围、独立性和对智能体可见的充分性,并且可见前缀中没有更早的依赖使用。我们把轨迹与前缀标识、哈希以及见证延续一起保留,因此纳入关系仍然绑在具体的注入上下文上,而不是仅从算子推断出来。
可揭示性是上下文特定的。一个见证只有在它所依赖的标识、权限和反驳关系仍然有效时,才能转移到另一个可见前缀;否则新上下文需要自己的见证。反过来,缺少合格见证使候选悬而未决,而不是确立不可揭示。只有当故障契约和适用于该注入上下文的见证都满足这些条件时,候选才被纳入。因此,研究的纳入在案例层面运作:只有具有有效故障契约和适用的使用前见证的候选,才向主分析贡献执行。
IV-C 执行层面的事件重建
纳入确立的是,对一个案例而言及时反证是可能的。受评轨迹决定该证据是否真的到达,以及它的到达落在下游使用的什么相对位置。因此,SSCBench 从模型可见的执行重建测量事件,而不是从算子或其纳入见证指派一个到达条件。
执行记录是覆盖完整模型可见消息序列的一份有序账本。每一次工具观察都与产生它的调用配对,而调用参数、返回内容和智能体消息保持原来的送达次序。只有当被指定的干预和承载故障的观察之送达都已确立时,$T_{F}$ 才被定位。用来核验干预的环境状态与模型可见的证据流保持分离:隐藏状态可以确立变异确已发生,但只有被送达的观察才能确立反证到达。
SSCBench 通过把案例契约应用到已送达的历史上来恢复 $T_{E}$。单凭工具名、数据库值或只有评测者可见的差异并不足够。对 ItemOption,受影响的订单项必须先被绑定到对应的商品变体,商品记录才能反驳其选项。当商品记录出现在该绑定之前时,后来的绑定完成反证关系。对 WriteEffect,权威的预订读取必须发生在被抑制的尝试之后,并且尽管其间有写入,仍然限定在那次尝试上。一般而言,$T_{E}$ 是最早的那个送达步骤,到这一步时,所需观察与对智能体可见的语义依据共同足以矛盾错误断言。因此,可见前缀中已经存在的证据可以产生 $T_{E}<T_{F}$。智能体生成的陈述不构成反证。
为恢复智能体一侧的使用事件,SSCBench 把候选抽取与语义分类分开。一次抽取遍历代识别故障之后对受影响实体和值的指称,包括导出值,而不提供该变异的正确性标签。每个候选事件随后在故障契约下被解释,以确定语义依赖和错误依赖。例如,由错误值导出的搜索参数是一次依赖使用,但只有当周围的可见上下文把该值当作起作用的任务事实,而不是当作正在被核验或被枚举的值时,它才成为错误依赖。第一个确定的依赖使用定义 $T_{S}$;在一次采纳运行中,第一个确定的错误依赖定义 $T_{U}$。文本上的限定并不能取消一个在操作上承诺错误断言的动作。
SSCBench 把可判定性当作测量记录的一部分。一条没有依赖使用的完整轨迹被标为无使用;一次可能更早但尚未解决的使用则使 $T_{S}$ 不可判定。同样,一次确定的错误依赖即可确立采纳,即便更早的含糊事件使 $T_{U}$ 未知;而在一次潜在使用仍未解决时,缺少确定的错误依赖并不确立非采纳。对于被采纳的运行,SSCBench 记录对错误断言的最后一次确定的、未被替换的显式立场;没有被传达立场的错误动作使它不可判定。由此得到的记录同时存储 $T_{E}$、$T_{S}$、$T_{U}$、采纳、到达层和终端立场的值及其可判定性。
V 实证研究设计
V-A 研究问题
RQ1(到达)。
反证在受影响事实被首次依赖使用之前到达的频率有多高?
RQ2(结果)。
故障采纳如何随反证到达条件变化?
RQ3(诊断)。
在被采纳的运行中,反证相对于首次错误依赖何时到达?
RQ4(测量可恢复性)。
自动轨迹预言能够以多高的准确度恢复故障采纳,并定位首次错误依赖?
V-B 实验设置
研究对象与抽样。 我们使用 $\tau$-bench 的零售和航空环境。ItemOption 针对零售订单项,ReturnDate、PaySource 和 WriteEffect 针对航空预订。候选框架在受评智能体运行之前,由任务规格和环境记录构造。它们包含 105 个 ReturnDate、203 个 ItemOption、120 个 PaySource 和 174 个 WriteEffect 候选。对每个算子,我们用稳定标识固定候选次序,并筛选候选,直到 30 个案例满足故障有效性和使用前可揭示性。抽样在目标实体簇之间循环,不使用受评智能体的结果。实体簇对 ReturnDate 和 WriteEffect 是预订,对 ItemOption 是订单项,对 PaySource 是用户。最终研究包含 120 个被纳入的种子,每个算子 30 个。具体而言,ItemOption 样本包含来自 15 份订单和 14 个任务的 30 个订单项。16 个最初选中的候选在最终语义复审之后,按同一冻结的候选次序被替换,到排名 84 时补齐 30 个种子的样本。十个被纳入的案例是目标值对照。它们保留在到达分析中,并从采纳与诊断的主分析中排除。
智能体配置与执行。 我们评测来自三家提供方的五种模型配置。表 I 报告模型、解码设置、计划中的重复次数,以及实现的执行规模。F、V 和 L 使用三次预先编号的重复(r0–r2),T 和 S 使用一次(r0)。所有配置共享同一任务支架、系统提示、工具模式、环境和原生 $\tau$-bench 用户模拟器。模拟器使用 deepseek-v4-pro,温度为 $T{=}0$,思考关闭。SSCBench 运行在 $\tau$-bench 提交 59a200c 上。每次执行从同一重置状态开始。步数上限对 ReturnDate 和 WriteEffect 为 60,对 PaySource 为 40,对 ItemOption 为 30。一个种子只有在该配置先解决了对应的干净任务时,才在故障注入下为该配置执行。一次被排定但未被观察到的故障运行视为缺失,不做填补。由此得到的执行矩阵包含 1,191 次故障运行。
表 I:智能体配置与执行规模。
| ID | 模型 | 解码 | 重复次数 | RD | IO | PS | WE | 合计 |
|---|---|---|---|---|---|---|---|---|
| F | deepseek-flash | $T{=}0$,关闭 | 3 | 29/88 | 18/54 | 30/90 | 30/90 | 322 |
| V | deepseek-v4-pro | $T{=}0$,关闭 | 3 | 30/90 | 19/57 | 30/90 | 30/90 | 327 |
| L | gpt-5.6-luna | default | 3 | 30/90 | 22/66 | 30/90 | 29/87 | 333 |
| T | gpt-5.6-terra | default | 1 | 30/30 | 18/18 | 30/30 | 26/25 | 103 |
| S | claude-sonnet-5 | default | 1 | 30/30 | 19/19 | 30/30 | 27/27 | 106 |
表 II:轨迹预言设置。
| 设定 | 方法 | 输入 | 输出 |
|---|---|---|---|
| B1 | 模式校验器 | 工具返回、干净模式 | 异常、步骤 |
| B2-L0 | LLM 轨迹评判 | L0 | 判决、步骤 |
| B2-L1 | LLM 轨迹评判 | L1 | 判决、步骤 |
| B3-native | AgentRx [25] | 原生接口、用户指令 | 判决、步骤 |
| B3-SAA | AgentRx | 最小的 L1 适配 | 判决、步骤 |
| B4 | 步骤归因 [26] | L0 | 仅步骤 |
| B5 | 挖掘得到的状态不变量 [27] | L-DB | 违反、步骤 |
分析。 主分析对每一个干净任务合格的配置–种子配对使用 r0。分析总体 $\mathcal{P}$ 包含已被纳入、已被触发、且故障后依赖使用可判定的运行;无使用和不可判定的运行另行报告。我们在 $Z_{S}$ 可判定的运行上报告到达在前、到达在后和到达缺失的份额。采纳在被触发的运行中报告($A_{T}$),在 $\mathcal{P}$ 内报告($A_{\mathcal{P}}$),并在每一种到达条件内报告($a_{s}$)。在 $T_{E}$ 与 $T_{U}$ 都可判定的被采纳运行中,我们报告 $q_{U}=P(T_{E}<T_{U}\mid A=1,\ r\in\mathcal{P})$,以及满足 $T_{S}<T_{E}<T_{U}$ 的运行数。$Y_{\mathrm{end}}$ 记录被采纳运行对错误断言的最终可判定立场。
我们在每个贡献实体簇只提供一次可评运行时使用 Wilson 区间,否则使用聚类自助区间($B=2{,}000$),报告 95% 区间。敏感性分析使用共同的干净任务已解决种子、全部可用重复、更严格的 ItemOption 纳入规则,以及纳入目标值对照。对有重复的配置,我们还记录一个种子–配置配对是否在重复之间改变到达条件。我们另外把同一批 WriteEffect 的 r0 运行重新表述为采纳、带有最终反证的采纳,以及带有使用前反证的采纳。两项成对检查修改的或者是矛盾关系(ItemOption 与 WriteEffect,F/V),或者是预订回读提示(WriteEffect,F/V/L/S)。按到达分层的比较是描述性的,而不是因果的。
人工测量验证。 审阅者 A、B 和 C 独立进行人工审阅,审阅者 D 裁决分歧。在案例层面,审阅者评估任务相关性、证据权威性、对智能体可见的充分性,以及实体或请求范围,并且看不到受评智能体的结果。对于执行层面的验证,A、B 和 C 先完成五条校准轨迹,然后独立审阅 120 条故障轨迹,这些轨迹跨算子、配置和自动到达条件抽样。他们根据故障契约和带编号的模型可见轨迹,标注 $T_{E}$、$T_{S}$、$T_{U}$、$A$,以及量特定的可判定性。配置身份、实验条件、自动标签和自动事件位置被掩盖。$Z_{S}$ 由被审阅的 $T_{E}$ 和 $T_{S}$ 导出。一个标签只有在 A、B 和 C 一致时才被直接接受。任何分歧都由 D 裁决;2–1 的多数并不自动被接受。我们对分类量报告裁决前的 Fleiss $\kappa$,并在三位审阅者都定位到该事件时报告精确步骤一致。自动测量在事件状态、双方都定位到事件时的精确事件位置、$Z_{S}$ 和 $A$ 上,与裁决后的参照相比较。
自动预言评测。 预言参照集包含 120 条经过裁决的故障轨迹,以及 40 条干净轨迹,每个算子十条,作为阴性对照。采纳评测使用人工 $A$ 可判定的故障轨迹;定位使用人工 $T_{U}$ 可判定的被采纳故障轨迹。我们报告采纳的精确率、召回率和 F1,以及在干净运行和未采纳故障运行上的假阳性率。覆盖率另行报告。采纳召回使用全部适用的参照集,因此弃权计为漏掉的阳性。定位在全部适用的被采纳集合上,以精确和 $\pm 1$ 步的准确率衡量,弃权计为不匹配。结果还按算子和人工到达条件分层。表 II 概括所评测的设定。L0 包含带编号的轨迹、工具模式和领域策略;L1 额外提供故障特定的关系契约;L-DB 包含从干净数据库状态挖掘出的不变量。基于 LLM 的设定对每条轨迹和每种设定使用一次调用。B3-native 在 40 条 ItemOption 故障轨迹上评测,原生 AgentRx 设定以一次示例运行;B3-SAA 使用完整的故障参照集。对 B1 和 B5,发出的异常或不变量违反被当作阳性判决。B4 只产生一个步骤,因而被排除在采纳指标之外。
VI 结果
VI-A 纳入与测量验证
在 1,191 次故障执行中,1,189 次触发了干预。全部 120 个被纳入的案例都通过了最终语义检查,并有记录在案的使用前见证。
表 III 报告主分析 r0 的执行漏斗,以及对照 120 条经过裁决的故障轨迹所做的测量验证。在面板 (a) 中,$n_{Z}/u_{Z}$ 给出有首次依赖使用的运行里可判定与不可判定的到达。面板 (b) 把冻结的自动测量与裁决后的参照相比较;精确步骤一致适用于双方都定位到该事件的情形。
裁决之前,A/B/C 的一致为:对 $A$ 有 $\kappa=.972$,对 $Z_{S}$ 有 $\kappa=.985$,对 $T_{U}$ 状态有 $\kappa=.972$,对 $T_{S}$ 状态有 $\kappa=.812$。被定位的 $T_{U}$ 事件中精确步骤一致为 84/86,被定位的 $T_{S}$ 事件中为 114/115。冻结的自动测量在 70 个适用的 $Z_{S}$ 标签中匹配 66 个,在 120 个 $A$ 标签中匹配 111 个。我们进一步审阅了全部 96 条主分析 r0 的 ItemOption 轨迹。其中 21 条已经在验证样本中;其余 75 条没有引入与冻结自动测量的额外分歧。因此主分析保留冻结的自动标签。
表 III:纳入与测量验证。
(a)执行漏斗
| 算子 | 已触发 | 无使用/$u_{S}$ | $n_{Z}/u_{Z}$ |
|---|---|---|---|
| ReturnDate | 149 | 0/0 | 149/0 |
| ItemOption | 96 | 5/0 | 91/0 |
| PaySource | 150 | 0/0 | 150/0 |
| WriteEffect | 141 | 0/0 | 141/0 |
| 全部 | 536 | 5/0 | 531/0 |
(b)标签验证,120 次运行
| 量 | 自动/参照状态 | 精确步骤 |
|---|---|---|
| $T_{E}$ | 70/70 | 57/57 |
| $T_{S}$ | 117/120 | 111/115 |
| $T_{U}$ | 111/120 | 75/79 |
| $Z_{S}$ | 66/70 | – |
| $A$ | 111/120 | – |
VI-B RQ1:反证到达
一起送达的算子一律是到达在前:全部 149 次可评的 ReturnDate 运行和全部 150 次可评的 PaySource 运行,都在首次使用之前收到有效反证。表 IV 报告两个依赖获取的算子,其中 $n/k$ 给出 $Z_{S}$ 可判定的运行数/实体数;$\mathcal{P}$ 内不可判定的到达为 0。ItemOption 在 91 次可评执行中产生 40 次到达在前、49 次到达在后和 2 次到达缺失。WriteEffect 的变异更宽:L 在 29/29 次运行中为到达在前,V 在 30/30 次中为到达缺失,T 在 25 次中有 20 次为到达在后。共同种子和全部重复的分析保持了这些差异。到达在同时固定案例和配置之后仍然变化。在 F、V 和 L 中,89 个具有重复可评执行的种子–配置组里有 11 个跨越了到达条件。在匹配的 WriteEffect 回读提示检查中,去掉提示使回读从 61/115 降到 18/115,使用前到达从 54/115 降到 0/115。
表 IV:依赖获取的算子的反证到达。
| ID | $ | \mathcal{P} | $ | $n/k$ | 到达在前 [95% CI] | 到达在后 [95% CI] | 到达缺失 [95% CI] |
|---|---|---|---|---|---|---|---|
| ItemOption | |||||||
| F | 18 | 18/10 | 28% [0%,57%] | 67% [38%,100%] | 6% [0%,21%] | ||
| V | 19 | 19/10 | 26% [0%,54%] | 74% [46%,100%] | 0% [0%,0%] | ||
| L | 18 | 18/11 | 78% [57%,95%] | 22% [5%,43%] | 0% [0%,0%] | ||
| T | 17 | 17/10 | 35% [13%,57%] | 65% [43%,88%] | 0% [0%,0%] | ||
| S | 19 | 19/11 | 53% [20%,75%] | 42% [20%,72%] | 5% [0%,19%] | ||
| WriteEffect | |||||||
| F | 30 | 30/30 | 83% [66%,93%] | 3% [1%,17%] | 13% [5%,30%] | ||
| V | 30 | 30/30 | 0% [0%,11%] | 0% [0%,11%] | 100% [89%,100%] | ||
| L | 29 | 29/29 | 100% [88%,100%] | 0% [0%,12%] | 0% [0%,12%] | ||
| T | 25 | 25/25 | 8% [2%,25%] | 80% [61%,91%] | 12% [4%,30%] | ||
| S | 27 | 27/27 | 4% [1%,18%] | 22% [11%,41%] | 74% [55%,87%] |
发现 1。 一个被纳入的故障案例并不决定它被行使时所处的证据条件。即便在固定故障契约和智能体配置之后,反证暴露仍随已实现的观察路径而变化,并且对那些改变权威状态是否在使用之前被重新查看的接口提示敏感。
VI-C RQ2:不同到达条件下的结果
图 3 报告汇总的和按到达条件的采纳。最上一行是 ItemOption:面板 (a) 比较 $A_{T}$(空心菱形)和 $A_{\mathcal{P}}$(实心菱形),面板 (b) 显示到达在前、到达在后和到达缺失各层中的采纳。面板 (c) 和 (d) 给出 WriteEffect 的同样视图。各行使用表 I 中的配置 ID;点给出采纳率,水平须线给出所报告的 95% 区间。在面板 (a) 和 (c) 中,右侧的值给出百分比率,以及采纳数/可评运行数/簇数。在面板 (b) 和 (d) 中,它们给出比率,以及可评数/该层总数的运行数/簇数;这两个运行计数之差是不可判定的采纳。空层没有点,并标为 $0/0/0$。目标值 ItemOption 对照被排除在主分析之外。落在全零或全一边界上的聚类自助区间只描述被观察到的簇,并不意味着总体确定性。
图 3:按到达条件的采纳。
对一起送达的算子,每一次可评运行都是到达在前:ReturnDate 的采纳为 100%(149/149),PaySource 为 59%(89/150)。对 ItemOption,58 次可评的非对照运行中有 47 次采纳了故障,其中包括 25 次到达在前中的 15 次,以及 33 次到达在后中的 32 次。在更严格的字面纳入规则下,到达在前的采纳变为 6/13,到达在后的采纳为 16/16;其他敏感性分析并没有消除这两个总体之间的分离。汇总采纳与主张特定支持之间的差别,在 WriteEffect 上最明显。V 和 T 在每一次可评运行中都采纳,然而 V 没有任何到达在前的执行,T 只有 2/25。在同一批 141 次可评的 r0 执行中,101 次采纳了故障。其中 44 次最终收到反证,但只有 17 次在首次使用之前收到;27 次在之后收到,57 次在被观察的执行中没有收到。成对检查使采纳沿预期方向变化。去掉回读提示使 WriteEffect 的采纳从 76/115 增至 115/115。使权威来源与被注入的断言一致,使 ItemOption 配对的采纳从 22/25 变为 25/25,使 WriteEffect 配对从 47/56 变为 56/56。
发现 2。 一个定义良好的汇总采纳结果,可以与对及时反证主张很少甚至没有经验支持同时存在。汇总把证据前提不同的执行池在一起,因此支持故障传播的分母,并不是支持使用前反证之后的采纳的分母。
VI-D RQ3:相对于错误依赖的到达
图 4 把反证的时机,与它先于首次错误依赖的比率分开。各行是 ItemOption 和 WriteEffect。面板 (a) 和 (c) 显示被采纳运行中的有符号差距 $T_{U}-T_{E}$:正值意味着证据在依赖之前到达,负值意味着它在之后到达,$\infty$ 标记证据在被观察的执行中缺失。柱上标签给出运行计数;柱高给出该算子全部被采纳运行中的份额。面板 (b) 和 (d) 按智能体配置显示 $q_{U}$,带有 95% 区间和一个汇总菱形。颜色在堆叠柱和区间估计中标识同一批配置。右侧标签给出比率以及之前数/$n_{q}$/$k_{q}$/$u_{q}$,其中 $k_{q}$ 计数实体,$u_{q}$ 计数次序不可判定的被采纳运行。
图 4:反证到达相对于错误依赖。
对一起送达的算子,反证在全部 149 次被采纳的 ReturnDate 运行中,以及全部 89 次时序可判定的被采纳 PaySource 运行中,都先于首次错误依赖。在图 4(a) 中,ItemOption 有 15 个正差距和 32 个负差距;面板 (b) 显示对应的汇总 $q_{U}$ 为 15/47,配置估计从 13% 到 71%。45/47 中 $T_{S}=T_{U}$;其余两次有 $T_{S}<T_{U}$,但反证在 $T_{S}$ 之前已经可见。加入目标值对照使 $q_{U}$ 至多改变三个百分点。
对 WriteEffect,在全部 101 次可评的被采纳 r0 运行中 $T_{S}=T_{U}$。图 4(c) 显示 17 个正差距、27 个负差距和 57 次观察缺失;面板 (d) 给出汇总 $q_{U}=17/101$。配置估计跨度为 0% 到 100%,但 100% 这一估计只建立在一次被采纳的 L 运行上。在两个算子上,没有任何主分析的非对照运行让反证落在两个使用锚点之间($T_{S}<T_{E}<T_{U}$)。因此,所研究的算子在使用前条件与依赖前条件之间提供的经验分离很少;我们并不从这些数据推断,两个锚点在其他执行结构中可以互换。
首次出错的时机与最终立场并不坍缩为同一个结果。在被采纳的 ItemOption 到达在后运行中,32 次里仍有 20 次在观察结束时认可该故障。对 WriteEffect,17 次在首次错误之前就有反证的运行中,有 14 次仍然以认可该故障结束,而 27 次到达在后的运行中有 26 次不再认可它。终端立场并不确立对更早外部效应的修复。
发现 3。 首次出错状态与终端立场不是可互换的恢复度量。在所研究的算子中,首次依赖使用与首次错误依赖通常重合,然而后来的认可可以与首次出错状态显著分叉,从而把错误预防、随后的立场修正,以及对先前效应的修复分开。
VI-E RQ4:测量可恢复性
表 V 对照经过人工裁决的参照,评测七种预言设定。采纳指标使用适用的故障运行;干净运行只贡献于假阳性评测。步骤准确率使用人工 $T_{U}$ 可判定的全部被采纳运行,弃权计为不匹配。面板 (a) 报告采纳识别,面板 (b) 报告首次错误依赖的定位,面板 (c) 按算子报告采纳 F1 与精确步骤准确率。
表 V:测量目标的自动恢复。
(a)采纳识别
| 设定 | $N_{F}$ | 覆盖率 | 精确率 | 召回率 | F1 | 故障运行假阳性 | 干净运行假阳性 |
|---|---|---|---|---|---|---|---|
| B1 | 120 | 100% | – | 0% | .00 | 0/32 | 0/40 |
| B2-L0 | 120 | 87% | 75% | 56% | .64 | 15/22 | 3/39 |
| B2-L1 | 120 | 87% | 81% | 83% | .82 | 16/20 | 5/32 |
| B3-native | 40 | 98% | 76% | 100% | .87 | 9/10 | 9/10 |
| B3-SAA | 120 | 98% | 82% | 82% | .82 | 16/30 | 8/39 |
| B5 | 120 | 100% | 72% | 84% | .77 | 29/32 | 0/40 |
(b)首次错误依赖
| 设定 | $N_{\rm step}$ | 覆盖率 | 精确步骤 | $\pm 1$ 步 |
|---|---|---|---|---|
| B1 | 88 | 0% | 0% | 0% |
| B2-L0 | 88 | 52% | 34% | 34% |
| B2-L1 | 88 | 80% | 49% | 49% |
| B3-native | 30 | 97% | 43% | 43% |
| B3-SAA | 88 | 81% | 51% | 51% |
| B4 | 88 | 100% | 47% | 47% |
| B5 | 88 | 84% | 0% | 51% |
(c)按算子,采纳 F1 / 精确步骤
| 设定 | RD | IO | PS | WE |
|---|---|---|---|---|
| B1 | .00/0% | .00/0% | .00/0% | .00/0% |
| B2-L0 | .33/0% | .79/40% | .62/60% | .67/33% |
| B2-L1 | .95/30% | .82/43% | .80/90% | .69/33% |
| B3-native | –/– | .87/43% | –/– | –/– |
| B3-SAA | .88/10% | .81/47% | .82/90% | .76/61% |
| B4 | –/20% | –/23% | –/80% | –/78% |
| B5 | 1.00/0% | .79/0% | .80/0% | .50/0% |
把故障特定关系加入 B2,使采纳 F1 从 .64 增至 .82,精确 $T_{U}$ 定位从 34% 增至 49%。B3-SAA 同样达到 .82 的采纳 F1,但在 88 次适用的被采纳运行中只精确定位了 45 次 $T_{U}$(51%)。因此,采纳识别的改进并没有消除判决与定位之间的差距。未采纳的故障运行暴露出一种不同的构念错误。B2-L1 把 20 个中的 16 个、B3-SAA 把 30 个中的 16 个、B5 把 32 个中的 29 个被覆盖的未采纳故障运行标为阳性,而在干净对照上的假阳性分别为 32 个中的 5 个、39 个中的 8 个和 40 个中的 0 个。因此,检测到故障或异常状态,本身并不恢复错误依赖。错误也强烈依赖于分层。B3-SAA 的采纳召回在人工的到达在前、到达在后和到达缺失运行中分别为 93%、90% 和 9%;精确 $T_{U}$ 定位为 61%、48% 和 9%。B5 说明这一时间区分:它在 88 次适用的被采纳运行中的 74 次返回了一个步骤,但没有一次精确匹配 $T_{U}$,尽管 $\pm 1$ 准确率为 51%。它的不变量警报常常接近语义上的首次依赖事件,但并不等同于它。
发现 4。 汇总的预言准确率掩盖了构念特定的测量错误。通用轨迹诊断可以识别故障或类似采纳的信号,却不能恢复语义上的首次依赖事件,而且这些错误在不同证据条件之间并不均匀。
VII 讨论
按执行测量证据条件。 案例纳入确立的是,在固定的故障上下文下及时反驳是可能的;它并不把一个证据条件指派给后续执行。该条件取决于受影响事实被使用之前所实现的观察路径。因此,可揭示性应当保持为案例层面的资格,而到达应当从每一条受评轨迹重建。这一分离也澄清了到达缺失。对一个被纳入的案例,缺失意味着有效反证在被观察的执行中没有变得对模型可见;它并不意味着接口缺少一条合法的使用前反驳路径。把案例层面的见证指派给每一次运行,因此会抹掉作为评测一部分的、依赖执行的变异。
建议 1。 用使用前可揭示性做案例纳入,但从每一次受评执行重建反证到达。
把主张绑定到它们的证据分母。 故障传播、带有最终反证的采纳,以及在及时反证之下的采纳,要求不同的被观察条件。因此,一个汇总采纳率支持的是在它自己的可评总体上的传播主张;它并不继承对一条更强主张的支持,如果该主张所要求的证据条件在这些执行中并不存在。评测报告应当把这一主张与总体的关系写明确。当一条主张指的是及时反证时,其可评的到达在前总体就是结果的一部分。一个空层使该主张未被观察到,而一个小层限制它能够被刻画的精度,无论汇总采纳率被确定得多好。
建议 2。 把每一条故障采纳主张,与它所要求的证据条件以及对应的可评分母一起报告。
把预防、修正和修复分开。 一个单一的恢复标签可能把一次执行的不同阶段混在一起。反证是否先于首次错误依赖,关乎预防;智能体后来是否停止认可错误断言,关乎修正;更早的外部动作或状态改变是否已被撤销,关乎修复。这些性质要求不同的观察。两个时间锚点在这一分离中扮演互补角色。$T_{S}$ 为证据条件提供一个独立于采纳的锚点,而 $T_{U}$ 在被采纳的运行中定位首次错误依赖。$Y_{\mathrm{end}}$ 描述后来的立场,但不提供更早外部效应已被修复的证据。因此,研究恢复的评测应当说明,它们的结果代表这些阶段中的哪一个。
建议 3。 把错误预防和后来的立场修正分开报告;把修复当作一条不同的主张,它要求关于外部状态的证据。
对照目标构念验证自动测量。 一种轨迹分析方法并不因为它检测到故障、异常或关键步骤,就自动成为有效的测量预言。评测所使用的预言必须恢复测量构念所点名的语义事件,并且在需要时间解释时,恢复它在轨迹中的位置。因此,验证所覆盖的应当多于汇总判决准确率。它应当评估语义分类、时间定位、覆盖或弃权,以及错误在下游分析所使用的证据条件之间的变异。否则,预言错误不仅会改变个别标签,也会改变用来支持评测主张的那些总体的被测构成。
建议 4。 在分析所使用的语义判决和事件位置上分别验证自动预言;当这些条件进入下游主张时,报告覆盖率和条件特定的错误。
VIII 对效度的威胁
测量效度。 案例纳入和事件重建涉及关于任务相关性、有效反证、依赖使用和错误依赖的语义判断。我们用冻结的决策规则、独立审阅与裁决,以及把自动测量对照经过人工裁决的轨迹做验证,来缓解这一威胁。更严格的 ItemOption 纳入分析进一步表明,在对任务相关性做更窄解释时结果如何变化。因此,我们的结论适用于本文所陈述的构念和纳入规则。到达和采纳从同一批已实现的轨迹测量。按到达条件的比较因而是描述性的,而不是因果的。同样,终端立场度量的是后来对错误断言的认可,而不是对更早外部效应的修复。成对扰动支持所报告的行为对比,但并不把反证到达分离为因果中介。
外部效度。 我们的实验覆盖两个 $\tau$-bench 领域、四个故障算子和五种智能体配置。这些算子实例化三种反证获取结构,但每个算子实现的是特定的任务和接口语义;其他工具契约或交互模式可能产生不同的到达分布和使用动态。因此,经验比率应当针对所研究的设定来解释,而不是当作对一般工具使用型智能体的总体估计。测量协议本身适用于这样的故障注入设定:受影响事实、一种对任务具有权威性的反驳,以及它们与下游使用的关系,都可以从执行接口加以规定。没有这种反驳关系的设定,落在这里所研究的主张的范围之外。
IX 相关工作
故障注入已被越来越多地用来在不可靠的软件环境中评测工具使用型智能体。AgentChaos 在 LLM 与 API 响应的边界注入故障,并研究它们在智能体执行中的传播 [6]。ToolBench-X 评测从工具规格、调用、执行、输出到跨来源冲突的危害中的恢复 [7]。ToolMaze 和 AgentNoiseBench 同样在不可靠的工具交互下考验智能体 [8, 9]。AgentProp-Bench 追踪参数错误及其通过后来的动作和回复向下游的传播 [11]。这些研究合在一起,刻画受控扰动如何影响任务结果、智能体动作、恢复,以及被损坏信息的传播。
另一支相关工作考察智能体如何获取并使用不可靠或相互冲突的信息。Yang 等人 [10] 研究被损坏的工具输出的送达与采纳,而关于不一致工具响应和交互式知识冲突的工作,则考察当相互竞争的信息变得可用时智能体如何行为 [28, 29]。Roh 等人 [30] 把证据检查之前发生的失败,与一次相关读取之后仍然存在的失败区分开,ToolFailBench 则把跳过工具使用,与未能使用返回的信息分开 [31]。ContainmentBench 进一步分析提示注入之后、在不同执行阶段的传播与恢复 [32]。这些研究表明,故障传播、证据获取、证据使用和下游失败不必在一次执行内部重合。
基于故障的可测试性研究一个故障能否传播到一次观察,该观察把错误行为与正确行为区分开 [33, 34, 35, 36, 37]。PIE 这类经典工作刻画一个故障变得可观察所要求的条件,随后的测试研究进一步考察可观察性和测试预言的有效性 [38]。这些研究确立了区分性观察在故障揭示中的作用。对工具使用型智能体,我们研究一个相关的评测问题:区分性观察是对一条被注入断言的反证,而它的到达取决于智能体随后的工具交互。我们的测量把故障是否传播,与采纳是否发生在这种反证于使用之前变得可见之后,分开。
轨迹诊断方法提供另一条相关的工作线。AgentRx 和 Who&When 从智能体执行轨迹识别失败原因或关键步骤 [25, 26],而基于不变量的技术可以暴露异常的执行状态或工具结果。这类技术为重建执行层面的事件提供候选机制。因此我们评测,有代表性的诊断输出能否恢复故障采纳,以及所提出的测量所要求的首次错误依赖事件。
X 结论
本文研究的是,工具使用型智能体的故障注入结果在哪些证据条件下可以被解释。一个故障案例可以提供一次有效的使用前反驳机会,却不固定某一次特定执行所实现的证据条件;因此,一个汇总采纳结果所支持的主张,可以不同于在及时反证之下观察到的采纳。我们引入 SSCBench,通过故障契约、使用前可揭示性纳入和执行层面重建,使这些条件变得显式。实验表明,在故障案例和智能体配置被固定之后,已实现的反证暴露仍然可以变化;即便汇总采纳定义良好,主张特定的证据总体仍然可以很稀疏;首次出错的时机和后来的恢复描述的是不同的执行阶段;通用轨迹诊断并不必然恢复测量所要求的语义事件和时间事件。这些发现为故障注入评测促成四项做法:按执行测量证据条件,把主张绑定到它们的可评证据总体,区分预防、修正和修复,并对照评测所使用的构念验证自动预言。本研究覆盖四个故障算子、五种智能体配置和 1,191 次故障执行。我们希望这些结果支持对工具使用型智能体的故障注入评测做出更精确、更可复现的解释。
参考文献
- [1] M. Hsueh, T. K. Tsai, and R. K. Iyer (1997). 故障注入技术与工具。Computer 30 (4), pp. 75–82. https://dx.doi.org/10.1109/2.585157
- [2] S. Yao, J. Zhao, D. Yu, N. Du, I. Shafran, K. Narasimhan, and Y. Cao (2023). ReAct:在语言模型中协同推理与行动。载于 International Conference on Learning Representations (ICLR)。
- [3] T. Schick, J. Dwivedi-Yu, R. Dessì, R. Raileanu, M. Lomeli, E. Hambro, L. Zettlemoyer, N. Cancedda, and T. Scialom (2023). Toolformer:语言模型可以自学使用工具。载于 Proceedings of the 37th International Conference on Neural Information Processing Systems, NIPS。
- [4] M. Li, Y. Zhao, B. Yu, F. Song, H. Li, H. Yu, Z. Li, F. Huang, and Y. Li (2023). API-bank:面向工具增强型大语言模型的综合基准。载于 Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing (EMNLP), Singapore, pp. 3102–3116. https://dx.doi.org/10.18653/v1/2023.emnlp-main.187
- [5] Y. Qin, S. Liang, Y. Ye, K. Zhu, L. Yan, Y. Lu, Y. Lin, X. Cong, X. Tang, B. Qian, S. Zhao, L. Hong, R. Tian, R. Xie, J. Zhou, M. Gerstein, D. Li, Z. Liu, and M. Sun (2024). ToolLLM:帮助大语言模型掌握 16000 多个真实世界 API。载于 International Conference on Learning Representations (ICLR)。https://proceedings.iclr.cc/paper_files/paper/2024/hash/28e50ee5b72e90b50e7196fde8ea260e-Abstract-Conference.html
- [6] G. Tan, Z. Sun, J. Shi, T. Zhang, Z. He, Q. Wu, S. Liang, W. Sun, J. He, P. Chen, C. Zhang, L. K. Shar, and D. Lo (2026). AgentChaos:通过程序化故障注入对智能体系统做混沌工程。载于 Proceedings of the 41st IEEE/ACM International Conference on Automated Software Engineering (ASE)。
- [7] Y. Tian, Z. Shi, Y. Zhou, and B. Zhao (2026). 函数调用之外:在工具环境不可靠的条件下给工具使用型智能体做基准测试。arXiv:2606.25819。
- [8] D. Zhu, X. Ma, Y. Shen, X. Li, Y. Zhao, S. Wang, L. Yan, and D. Yin (2026). 当工具失败时:给 LLM 智能体的动态重规划与异常恢复做基准测试。arXiv:2606.05806。
- [9] R. Wang, Y. Chen, Y. Wang, C. Wu, J. Fang, X. Cai, Q. Gu, H. Su, A. Zhang, X. Wang, X. Cai, and T. Chua (2026). AgentNoiseBench:在噪声条件下给工具使用型 LLM 智能体的稳健性做基准测试。载于 Proceedings of the 43rd International Conference on Machine Learning (ICML), Proceedings of Machine Learning Research, Vol. 306, pp. 125471–125493. https://proceedings.mlr.press/v306/wang26ab.html
- [10] H. Yang, W. Song, T. Kim, J. Song, S. Park, and Y. Jo (2026). 智能体对不可靠工具的过度依赖。arXiv:2609.05587。
- [11] B. Gurram (2026). 审计工具使用型语言智能体中的自动评测、错误传播与运行时缓解。arXiv:2604.16706。
- [12] G. Klees, A. Ruef, B. Cooper, S. Wei, and M. Hicks (2018). 评测模糊测试。载于 Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security (CCS), New York, NY, USA, pp. 2123–2138. https://dx.doi.org/10.1145/3243734.3243804
- [13] M. Böhme, L. Szekeres, and J. Metzman (2022). 论基于覆盖率的模糊器基准测试的可靠性。载于 Proceedings of the 44th International Conference on Software Engineering (ICSE), New York, NY, USA, pp. 1621–1633. https://dx.doi.org/10.1145/3510003.3510230
- [14] T. E. Kim, J. Choi, S. Im, K. Heo, and S. K. Cha (2024). 评测定向模糊器:我们走对方向了吗?Proceedings of the ACM on Software Engineering 1 (FSE), pp. 316–337. https://dx.doi.org/10.1145/3643741
- [15] S. Yao, N. Shinn, P. Razavi, and K. Narasimhan (2025). $\tau$-Bench:真实世界领域中工具–智能体–用户交互的基准。载于 International Conference on Learning Representations (ICLR)。https://proceedings.iclr.cc/paper_files/paper/2025/hash/1b126cc38b8638e07bef37e7b2bb72bf-Abstract-Conference.html
- [16] Y. Ruan, H. Dong, A. Wang, S. Pitis, Y. Zhou, J. Ba, Y. Dubois, C. J. Maddison, and T. Hashimoto (2024). 用语言模型模拟的沙箱识别语言模型智能体的风险。载于 International Conference on Learning Representations (ICLR)。https://proceedings.iclr.cc/paper_files/paper/2024/hash/7274ed909a312d4d869cc328ad1c5f04-Abstract-Conference.html
- [17] E. Debenedetti, J. Zhang, M. Balunovic, L. Beurer-Kellner, M. Fischer, and F. Tramèr (2024). AgentDojo:评测 LLM 智能体提示注入攻击与防御的动态环境。载于 Advances in Neural Information Processing Systems (NeurIPS), Vol. 37. https://dx.doi.org/10.52202/079017-2636
- [18] R. Just, D. Jalali, and M. D. Ernst (2014). Defects4J:为 Java 程序的受控测试研究而建的既有故障数据库。载于 Proceedings of the 23rd International Symposium on Software Testing and Analysis (ISSTA), New York, NY, USA, pp. 437–440. https://dx.doi.org/10.1145/2610384.2628055
- [19] J. Metzman, L. Szekeres, L. M. R. Simon, R. T. Sprabery, and A. Arya (2021). FuzzBench:开放的模糊器基准测试平台与服务。载于 Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE), New York, NY, USA, pp. 1393–1403. https://dx.doi.org/10.1145/3468264.3473932
- [20] X. Liu, H. Yu, H. Zhang, Y. Xu, X. Lei, H. Lai, Y. Gu, H. Ding, K. Men, K. Yang, S. Zhang, X. Deng, A. Zeng, Z. Du, C. Zhang, S. Shen, T. Zhang, Y. Su, H. Sun, M. Huang, Y. Dong, and J. Tang (2024). AgentBench:把大语言模型当作智能体来评测。载于 International Conference on Learning Representations (ICLR)。https://proceedings.iclr.cc/paper_files/paper/2024/hash/e9df36b21ff4ee211a8b71ee8b7e9f57-Abstract-Conference.html
- [21] S. Zhou, F. F. Xu, H. Zhu, X. Zhou, R. Lo, A. Sridhar, X. Cheng, T. Ou, Y. Bisk, D. Fried, U. Alon, and G. Neubig (2024). WebArena:为构建自主智能体而设的真实网页环境。载于 International Conference on Learning Representations (ICLR)。https://proceedings.iclr.cc/paper_files/paper/2024/hash/4410c0711e9154a7a2d26f9b3816d1ef-Abstract-Conference.html
- [22] T. Xie, D. Zhang, J. Chen, X. Li, S. Zhao, R. Cao, T. J. Hua, Z. Cheng, D. Shin, F. Lei, Y. Liu, Y. Xu, S. Zhou, S. Savarese, C. Xiong, V. Zhong, and T. Yu (2024). OSWorld:为真实计算机环境中的开放式任务给多模态智能体做基准测试。载于 Advances in Neural Information Processing Systems (NeurIPS), Vol. 37. https://proceedings.neurips.cc/paper_files/paper/2024/hash/5d413e48f84dc61244b6be550f1cd8f5-Abstract-Datasets_and_Benchmarks_Track.html
- [23] Z. Zhang, Z. Patterson, M. Hicks, and S. Wei (2022). FIXREVERTER:面向模糊测试基准的现实缺陷注入方法。载于 31st USENIX Security Symposium (USENIX Security), pp. 3699–3715. https://www.usenix.org/conference/usenixsecurity22/presentation/zhang-zenong
- [24] C. Ma, J. Zhang, Z. Zhu, C. Yang, Y. Yang, Y. Jin, Z. Lan, L. Kong, and J. He (2024). AgentBoard:面向多轮 LLM 智能体的分析性评测板。载于 Proceedings of the 38th International Conference on Neural Information Processing Systems, NIPS ’24, Red Hook, NY, USA。
- [25] S. Barke, A. Goyal, A. Khare, A. Singh, S. Nath, and C. Bansal (2026). AgentRx:从执行轨迹诊断 AI 智能体失败。Findings of EMNLP 2026 (to appear). arXiv:2602.02475。
- [26] S. Zhang, M. Yin, J. Zhang, J. Liu, Z. Han, J. Zhang, B. Li, C. Wang, H. Wang, Y. Chen, and Q. Wu (2025). 哪个智能体导致任务失败、又是在何时?论 LLM 多智能体系统的自动失败归因。载于 Proceedings of the 42nd International Conference on Machine Learning (ICML), Proceedings of Machine Learning Research, Vol. 267, pp. 76583–76599. https://proceedings.mlr.press/v267/zhang25cq.html
- [27] M. D. Ernst, J. Cockrell, W. G. Griswold, and D. Notkin (2001). 动态发现可能的程序不变量以支持程序演化。IEEE Transactions on Software Engineering 27 (2), pp. 99–123。
- [28] J. Xu, T. B. Pedersen, Z. Yao, X. Zhang, and Y. Li (2026). 智能体式 AI 对不一致且不完整的工具响应的稳健性分析。arXiv:2608.22676。
- [29] Y. Lyu, S. Zhou, B. Toh, P. Zhu, and L. Li (2026). KC-Bench:评测 LLM 智能体中知识冲突的动态交互基准。arXiv:2609.03588。
- [30] D. Roh and D. Han (2026). 推理尚未失败之前:智能体式 RAG 中证据出现前的程序性失败。arXiv:2608.02011。
- [31] H. Soni (2026). ToolFailBench:诊断 LLM 智能体中的工具使用失败。arXiv:2607.04686。
- [32] W. Lan, S. Li, M. Wu, X. Lai, J. Yang, and H. Shen (2026). ContainmentBench:基于轨迹评测工具使用型 LLM 智能体在暴露之后的遏制。arXiv:2607.23999。
- [33] J. M. Voas (1992). PIE:一种基于失败的动态技术。IEEE Transactions on Software Engineering 18 (8), pp. 717–727. https://dx.doi.org/10.1109/32.153381
- [34] P. Ammann and J. Offutt (2016). 软件测试导论。第 2 版,Cambridge University Press。
- [35] N. Li and J. Offutt (2017). 面向基于模型的测试的测试预言策略。IEEE Transactions on Software Engineering 43 (4), pp. 372–395. https://dx.doi.org/10.1109/TSE.2016.2597136
- [36] P. Görz, B. Mathis, K. Hassler, E. Güler, T. Holz, A. Zeller, and R. Gopinath (2023). 用变异分析系统评估模糊器。载于 32nd USENIX Security Symposium (USENIX Security), pp. 4535–4552. https://www.usenix.org/conference/usenixsecurity23/presentation/gorz
- [37] R. Just, D. Jalali, L. Inozemtseva, M. D. Ernst, R. Holmes, and G. Fraser (2014). 在软件测试中,变异体是真实故障的有效替代吗?载于 Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE), New York, NY, USA, pp. 654–665. https://dx.doi.org/10.1145/2635868.2635929
- [38] E. T. Barr, M. Harman, P. McMinn, M. Shahbaz, and S. Yoo (2015). 软件测试中的预言问题:综述。IEEE Transactions on Software Engineering 41 (5), pp. 507–525. https://dx.doi.org/10.1109/TSE.2014.2372785
觉得有用,转给同事
微信扫码
用微信扫一扫,在手机上打开后即可转发。