跳转到主要内容

行动前验证:自主智能体的顺序控制

只有当执行验证位于计划与副作用之间,作为工具调用的同步依赖而非异步审计流时,它才真正有价值。

电路板的微距照片,显示走线、焊点和一排表面贴装元件,景深较浅。

顺序问题

自主智能体以一种特定的方式失败:它们在任何人检查行动是否合理之前就采取了行动。计划看起来合理,工具调用格式正确,副作用已经落地。直到后来,在日志或对账任务中,不匹配才浮出水面。到那时,支付已经清算,删除已经传播,或者外发消息已经被读取。

本文主张一个立场:只有当执行验证位于计划与副作用之间时,它才真正有价值。这意味着验证层必须是工具调用的同步依赖,而非异步审计流。事后验证在损害发生后才产生证据,无法改变运行。路径内验证会为每次工具调用增加延迟,因此必须仅限定于不可逆操作。

顺序就是控制。其他一切都是仪表化。

两个验证位置

验证步骤只能存在于两个位置,它们具有相反的特性。

事后验证在工具调用返回后运行。它成本低、易于添加,并产生有用的产物:审计追踪、漂移报告、告警。它无法改变运行。如果检查触发,副作用已经是真实的。事后检查是团队发现智能体已经写了一周畸形记录的方式。那是有价值的发现,却是糟糕的控制。

路径内验证在计划与工具调用之间运行。在检查返回裁决之前,工具调用不会执行。这是唯一能阻止不良副作用的顺序,也是唯一会在每个受控调用上产生延迟成本的顺序。在模型驱动的循环上设置同步门控并非没有代价:它增加一次往返,可能超时,自身也可能失败。工程问题不是是否支付这个成本,而是在哪里支付。

按可逆性对操作分类

限定范围的规则是可逆性。如果撤销一个操作需要智能体不具备的配合,或者撤销本身就是一个副作用,那么该操作就是不可逆的。

可容忍采样和异步审查:

Aerial view of a busy freight train yard with multiple tracks and train cars in a rural setting

  • 读取。返回过时或错误数据的读取可以通过重新读取来恢复。仅对授权和出口进行门控,而非内容。
  • 草稿。从未发送的草稿是惰性的。审查可以异步进行。
  • 暂存写入。写入暂存命名空间或仅追加缓冲区可容忍延迟审查,前提是提升到生产环境本身也受到门控。

需要同步检查:

  • 支付和转账。资金流动是典型的不可逆操作。撤销是退款,而退款依赖于交易对手。
  • 删除。硬删除以及任何级联删除都需要同步门控。软删除是另一类。
  • 外发消息。电子邮件、聊天、webhook 和公开发布无法被取消读取。召回不是回滚。
  • 外部写入。对信任边界之外任何系统的写入,包括第三方 API 和共享数据库,都会改变智能体并不拥有的状态。

分类应按工具声明,而非按调用推断。一个有时是读取、有时是写入的工具是两个工具。可逆性类别中的模糊本身就是缺陷。

检查实际能断言什么

同步门控的好坏取决于它评估的谓词。有四个值得构建,它们可以组合。

参数形状与声明模式的一致性。 工具的输入契约是一个模式,检查在调用前验证提议的参数是否符合它。这能捕获类型漂移、缺失必填字段,以及模型输出一个看似合理但结构错误的对象这类失败。模式验证成本低,应属于每个不可逆工具的路径内检查。

目标与出口契约的一致性。 每个工具声明它被允许将数据发送到哪里:哪个主机、哪个账户、哪个渠道。检查将解析后的目标与该契约进行比较。这是阻止智能体被说服将载荷发送到检索内容中出现的地址的控制。出口契约是静态允许列表;检查是运行时比较。

剩余预算与运行支出上限的一致性。 运行携带预算。在不可逆操作之前,检查读取剩余预算和提议成本,如果操作将超过上限则拒绝。这不是每次调用的限制;这是每次运行的限制,因此一系列单独很小的操作无法聚合成一个大操作。其机制是一个计数器,门控与操作原子性地递减它,因此并发分支无法在同一剩余预算上同时通过。

被写入值的来源。 这是最不常见也是最重要的。每个将被持久化的值都携带来源标签:源自工具结果、源自用户输入、源自模型补全。检查拒绝将来源为模型生Welder working in a dimly lit workshop with sparks flying around产生它的上下文活得更久。

Network cables macro

来源追踪需要上游的纪律:工具结果必须在边界处打标签,规划器必须在转换过程中保留标签。这是真正的工作,也是检查形状的门控与检查含义的门控之间的区别。

成本与失败行为

门控现在位于关键路径上,因此它的失败模式就是运行的失败模式。

在验证超时时故障关闭,并将其设为默认而非配置标志。 一个超时后允许操作的门控不是门控。如果检查无法在其截止时间内返回裁决,操作就不执行,运行将超时作为一等错误暴露出来。将其设为标志会诱使在事故期间将标志设为宽松,然后留在那里。安全行为应该是唯一的行为,或者不安全的行为应该需要显式的、可审计的覆盖,而覆盖本身也被记录。

测量验证层自身的假阳性率。 阻止合法操作的门控会被禁用。假阳性率是门控拒绝的正确操作的比例。它应该按谓词追踪,因为模式检查和来源检查的失败方式不同。一个嘈杂的来源谓词将是操作员首先关闭的东西,而一旦关闭,洗白路径就再次打开。诚实的权衡是,收紧谓词会减少假阴性并提高假阳性,而门控的生存取决于将第二个数字保持在足够低的水平,以至于没有人想移除它。

还有二阶成本。每个同步检查都是一个依赖,而依赖会失败。门控必须比它所守护的工具更可用,否则它就成为故障源。这通常意味着谓词是针对缓存的契约和计数器在本地评估的,而不是在每次操作时调用远程策略服务。

这对循环意味着什么

从顺序论证中得出的架构很小。工具声明可逆性类别。不可逆工具声明模式、出口契约、预算交互和来源要求。智能体循环调用门控,门控调用工具。事后验证仍然存在,但它的工作是发现应该添加的谓词,而不是捕获已经发生的操作。

令人不安的部分是,这将验证推入系统的热路径,其延迟和假阳性被每次运行所感受到。这正是重点。一个不被运行感受到的控制不是在控制运行。替代方案,即异步审计流,是智能体所做事情的记录,而记录不是决策。

延伸阅读

封面照片:Jakub Pabis / Pexels。

分享XLinkedIn永久链接6 分钟阅读

相关阅读

这能回答的问题

Why is post-hoc verification insufficient for autonomous agents?

Post-hoc verification runs after the tool call returns, so it produces evidence after the side effect is already real. It cannot change the run. It is useful for audit trails and for discovering which predicates should be added, but it is not a control.

Which agent actions need synchronous verification?

Actions that are irreversible: payments and transfers, hard deletions, outbound messages, and writes to external systems. Reads, drafts, and staging writes tolerate sampling and asynchronous review, provided promotion to production is itself gated.

What can a synchronous check actually assert?

Four predicates compose: argument shape against a declared schema, destination against the egress contract, budget remaining against the run's spend ceiling, and provenance of the values being written so a model-generated completion cannot be laundered into a record.

How should a verification gate behave on timeout?

It should fail closed by default, not behind a configuration flag. A gate that times out and allows the action is not a gate. If no verdict arrives within the deadline, the action does not execute.

Why measure the verification layer's false-positive rate?

A gate that blocks legitimate actions gets disabled, and a disabled gate reopens the path it was meant to close. Tracking false positives per predicate keeps the gate tight enough to be trusted and noisy enough to survive.