30 分钟给你的 AI Agent 加上验证闭环
来源:dev.to — 2026-09-14
📋 概述
AI Agent 循环常犯的毛病是:产出结果、跑几个检查、然后继续往下走,却从未确认结果是否真的满足任务。当生成结果、检查结果、判定完成这三件事都由同一个生成器负责时,问题会更严重——你让 Agent 改一个 API 并加测试,它写实现、写测试、跑出绿色、宣布完成;如果测试漏掉了部分需求,循环根本没有理由停下来质疑。文章的做法是把验证器做成一个 Bit 组件,给它一个四值完成条件和 TypeScript Agent 循环接线,再导出到 Bit scope 以便跨项目复用。四值来自 Addy Osmani 关于「掌控外层循环」的工作:NO 表示不通过并以验证者给出的原因作为上下文重试,YES 表示通过继续下一步,MAYBE 表示无法判断、暂停并交由人工复核,IFF 表示只有在某个具名依赖满足时才算正确、需先检查该依赖。关键在职责分离:验证器拿到生成器的输出和需要评估的条件,但拿不到生成器自己的推理过程。
🔑 核心要点
- 结构性缺陷在于完成条件通常是二值的:完成或未完成,生成器自己挑一个状态,循环就继续。
- 生成器同时写实现和测试,等于自己批改自己的作业,测试通过不能证明需求被满足。
- 验证器返回四个而非两个取值:NO(重试并带上原因)、YES(继续)、MAYBE(暂停交人工)、IFF(依赖满足才算正确)。
- 四值模型来自 Addy Osmani 关于掌控外层循环的论述,因为并非所有输出都能干净地归入通过或失败。
- 职责分离是关键:验证器只拿到生成器的输出与事先定义的条件,不拿到生成器的推理过程,避免被同一条思路带偏。
- 实现上用 Bit 组件承载验证器并导出到 Bit scope,使其可以跨项目复用。
💡 金句
让生成器自己评估自己的产出,就是让考生自己批改自己的卷子——那不是验证。
👍 0
👎 0
← 返回 dev.to 首页