智能体跑长流程会自己抄近路:把工作流状态搬出上下文,Haiku 4.5 按规程做对139/200个账户
核心概要
语言模型智能体在长时间无人值守运行时,会逐渐偏离开头一次性给出的流程说明;把流程改写成可执行有限状态机、由运行时在工具调用、状态转移和回合结束三处强制执行后,Claude Haiku 4.5 在 SOP-Bench 的200账户批次上平均有139.2个决定既合规又正确,而最强基线 Remind-loop 为48.4。重述指令或自动续跑只是把偏离挪到另一条捷径上,只有三处同时封住才能把规程保持到最后。
深度剖析
智能体在长批次里偏离流程,不是因为它不知道流程,而是因为运行时允许它走捷径;把流程状态放到模型上下文之外、由运行时强制执行,就能让规程贯穿整批任务。 此前把流程说明放进首条消息、系统提示或每个账户的提醒里,或者让智能体停下后自动续跑,都只是把偏离从一个出口挪到另一个出口。 在 SOP-Bench 的200账户批次上,Claude Haiku 4.5 配有限状态机平均有139.2个决定既合规又正确,最强基线 Remind-loop 为48.4,8个种子中7个为正,平均差90.9,95%置信区间[46.2, 130.2];每个50账户窗口都保持在31.9到37.6之间,而基线在第一个50账户之后没有一个窗口超过12。
这套控制把流程写成有限状态机,状态由模型上下文之外的守护进程保存,因此上下文压缩无法抹掉它,新的上下文也能读回。 有限状态机在智能体循环的三个位置拦截动作:工具调用门只放行当前状态允许的工具,转移守卫在状态推进前运行检查,停止门在流程未完成时拒绝结束回合。 主实验的守卫只读取调用了哪些工具、针对哪个账户、以什么顺序,不读取数据值或正确答案;消融显示只有停止门时智能体改为不看数据就决定,只有门控时合规率仍有93.0%但每个会话平均尝试结束回合44.7次,两者同时开启才得到128.0个合规且正确的决定。
启示与展望
已展示的范围是 SOP-Bench 的推荐滥用检测任务、Claude Code 运行时,以及 Haiku 4.5、Sonnet 4.6 和 Qwen3.8-flash 三个模型;扩展分析覆盖 SWE-bench Verified 的调试流程、客服基准和 AutoResearch、月末结账、DuckDB 优化器三类流程。作者提出后续需要在更多流程、运行时和智能体架构上评估,并探索自动生成与校验工作流规格的方法。
预注册的 P3 预测在合规条件上未通过:8个种子中有3个出现智能体先调查多个账户、再从同一状态一起提交决定的情况,这是静态权限无法引用当前账户所留下的出口。Sonnet 4.6 只有3个种子,相对 Remind-loop 的比较触发预设的证伪规则,作者称这些比较为描述性。客服基准中控制器自身发出62%的智能体回合,结果衡量的是整个控制器;零售领域的首次冻结版本因检查过严而落后。强制执行只约束怎么做,不提升模型判断本身的质量。
