后果模型:让 AI 预判行动结果的缺失一环
Consequence models: AI that knows what happens next
文章提出"后果模型"(consequence model):输入世界状态与智能体即将执行的动作,输出该动作成功的校准概率和简短失败标签,只读不写、单次调用足够廉价。作者认为语言模型学的是文本描述而非行动结果,受因果层级定理限制,难以可靠回答"这么做会怎样"。每一步 95% 成功率的 20 步任务整体成功率约 36%,提升到 99% 则约 82%,因此长任务主要是可靠性问题。
编码智能体可以编写拉取请求、运行测试并修复出错的地方。然而仍然有人在盯着它们。原因不是它们写的代码糟糕,而是它们在行动之前无法判断行动会带来什么后果。
这篇文章讨论的是一种我们认为几乎每个智能体技术栈中都缺失的模型:后果模型。它接收世界的状态以及智能体即将采取的行动,并返回一件事:该行动成功的概率,以及如果失败,它可能如何失败。
每一步都是一次下注
智能体在一个循环中工作:读取上下文、做出决定、采取行动、观察发生了什么、检查、重复。每一步都可能出错,而且错误会累积。如果每一步有 95% 的概率成功,那么一个 20 步的任务大约有 36% 的概率成功。
现在加入一个检查机制,在大多数错误步骤落地之前将其捕获,让智能体可以重试。将每一步提升到 99%,同样的 20 步任务大约有 82% 的概率成功。智能体并没有变得更聪明,它只是不再走向悬崖。
这就是为什么长时智能体任务主要是一个可靠性问题。在错误发生之前捕获它们,比生成稍微更好的答案更能推动进展。
为什么更大的语言模型解决不了这个问题
语言模型从文本中学习:人们关于世界所写的内容。那是人们说会发生什么的记录,而不是当你行动时实际会发生什么的记录。
这个想法有一个精确的版本。Judea Pearl 的因果阶梯将看见(被观察到的东西)与行动(如果我进行干预会发生什么)区分开来。因果层级定理表明,关于看见的数据几乎总是无法确定关于行动的问题。文本给模型提供的是对干预的二手描述,所以这是一个结构性限制,而非绝对限制。但这正是为什么问语言模型“这能行吗?”大多只能告诉你这个行动听起来有多合理。
置信度是第二个问题。模型所声称的置信度很难被信任,OpenAI 的 GPT-4 技术报告显示,预训练模型的概率校准得很好,而训练后模型的校准则差得多。智能体无法对一个它无法信任的数字设定阈值。
什么是后果模型
想象一个朋友,他观察过成千上万的人触摸热炉子,并在你伸手之前告诉你,你被烫伤的可能性有多大,以及会怎么被烫伤。
输入
智能体即将做什么,以及在哪里做。例如:git push --force 在这个仓库的主分支上。
输出
它成功的可能性有多大,以及它会如何失败:7%,会覆盖队友的提交。
三个特性使它有用:
- 它只读不写。它返回一个概率和一个简短标签,而不是生成一篇文章,因此一次调用足够便宜和快速,可以在每一步都进行。
- 它是校准过的。当它说 80% 时,该行动大约有 80% 的概率成功,因此程序可以设定阈值:高于 0.9 就运行,在 0.5 到 0.9 之间就询问人类,低于就阻止。
- 它是在结果上训练的,而不是在描述上。这是通用语言模型无法复制的那部分。
这种形态并不新鲜:一些决策模型已经会在一组固定选项上返回概率,而不是返回文本。后果模型把同样的思路指向了一个不同的问题:不是“这是其中哪一个?”,而是“如果我这样做会发生什么?”
训练数据自己给自己打标签
当一种新的训练信号变得廉价时,新型模型往往就会出现。图像模型紧随数百万张带标签的照片而来。语言模型紧随网络而来。聊天模型紧随人类偏好评分而来。推理模型紧随可自动校验的答案而来,比如数学和代码。
如今,智能体又产生了另一种信号。每一次测试运行、CI 任务、shell 命令、API 调用和重新打开的支持工单,都是一个带有记录结果的动作。不需要任何人去打标签:结果本身就是标签。重跑一个不稳定的测试,你就知道它是不稳定的。合并一个补丁,你就知道 CI 是否通过。
01
提议
智能体选择它的下一个动作。
02
预测
后果模型返回 P(成功) 以及可能的失败原因。
03
门控
高于 0.9 就执行。0.5 到 0.9 之间询问人类。低于 0.5 就阻止。
04
学习
实际发生的情况成为下一个训练样本。
它使什么成为可能
可以放手不管的智能体
如果智能体只在少数它不确定的步骤上暂停,那么一个人就不再是监督一个智能体,而是早上集中处理许多智能体的异常。通宵运行变得可行,因为有风险的步骤会等待人类,其余步骤则不会。
按结果收费,而不是按 token 收费
Intercom 将其 Fin 支持智能体定价为每个结果 0.99 美元(其定价页面,2026 年 10 月 11 日查阅)。供应商只有能够预测自己会完成哪些任务,才能承担这种风险。后果模型让其他类型的工作也能做出这种预测:为每个合并的拉取请求报价,并接受你预期能完成的任务。
先搜索再行动
MuZero 是一个玩游戏系统,它通过在自己学到的游戏模型内部向前搜索许多步来规划。有了后果模型,智能体可以对部署、迁移和重构做同样的事:权衡许多方案,然后运行最可能成功的那个。
更接近生产环境的智能体
退款、配置变更、部署和数据库变更,是智能体最有用、也最不被信任的地方。对每个动作给出经过校准的可行或不可行判断,意味着人们只需批准有风险的长尾,而不是每一步。
它最先在哪里划算
在这一切之前,还有一些本身就值得做的狭窄用途:
- “这个 CI 失败是我的问题吗?” 一个编码智能体的推送失败了。是这次改动的问题,还是测试不稳定?如今智能体要么重跑一条耗时许多分钟的流水线,要么开始修复一个它从未碰过的测试。每一次重跑都会给答案打上标签。
- 补丁分诊。 一个智能体写出五个候选补丁。只对最可能通过的那个运行完整测试套件,并优先运行它可能失败的测试。
- 支持回复自动发送。 预测客户在 AI 起草的回复后是否会重新打开工单或升级。发送有把握的,其余留给人类处理。
- 按实测成功率路由。 选择每个预期成功成本最低的模型,而不是猜测一个请求看起来有多难。
今天已有什么
其中一些已存在于研究和开源中:
- Qwen-AgentWorld 是一个语言世界模型,它模拟工具调用、终端、网页和操作系统,其中一个规模已开放权重。
- WebDreamer 让模型在智能体执行每个网页操作之前,先想象该操作的结果。
- R2E-Gym 训练验证器,让它们在运行测试和不运行测试两种情况下评判编码智能体的补丁,并发现两者结合效果最佳。
- SWE-RM 研究在不运行补丁的情况下为其打分的验证器,并主张校准与准确率同样重要。
我们尚未找到的是中间那一环:一个小巧、经过校准、基于真实结果训练的模型,调用成本足够低,可以在每一步都调用,并以 API 形式提供。
可能出什么问题
- 结果可能因系统而异。 在别人的代码仓库上训练的模型可能并不了解你的仓库。以环境为条件并针对每个团队进行适配,本身就是一个研究课题。
- 校准必须在真实工作中成立,而不仅仅是在基准测试上。一个自信却出错的模型比没有模型更糟,因为人们会不再去核查。
- 决策模型可能会抓住错误的线索。 近期研究发现,一个受限的决策头会跟随选项的名称,而不是附在其上的评分标准。后果模型也需要同样的审视。
我们为什么写这篇文章
ScaledThought 为智能体运行推理。我们认为,未来许多有用的模型不会是更大的语言模型,而是各司其职的小模型:做决策、指向来源、估算数字、预测后果。我们认为后果模型最为重要,因为它能把智能体从有人操作的工具变成你可以交付出去的工作。
关于数据的一点说明:我们不存储提示词或补全内容,因此本文没有任何内容涉及在客户流量上进行训练。这样的模型会从运行智能体的人选择分享的结果中学习。
如果你正在朝这个方向构建,或者如果存在后果模型你会使用它,我们期待你的来信:hello@scaledthought.com。
Intercom 和 Fin 是 Intercom 的商标。ScaledThought 与 Intercom 无关联。
来源:Hacker News · scaledthought.com