让 AI 自己验收,等于让学生自己批卷

AI 写代码不能自己审自己。拆成三个角色各干各的------一个写、一个审、一个验收------效果反而更好。


问题出在哪

在驭缰工程的实践中,有一个反复出现的痛点:

AI 不能准确评估自己的工作。

Anthropic 的工程团队在实验中直接验证了这一点。他们让 Claude 独立完成一个前端设计任务,然后自我评估。

结果:无论实际质量如何,智能体都倾向于给自己打高分。

自己批卷,分数当然不会低。

Anthropic 从 GAN(生成对抗网络)找到了灵感:用一个 AI 生成,用另一个 AI 来判别。


三智能体架构

角色 职责 类比
Planner(规划者) 把 1-4 句人类提示词转化为完整产品规格 产品经理
Generator(实现者) 按规格逐特性编码 开发工程师
Evaluator(评估者) 用 Playwright 实际操作应用,逐条验证 QA 工程师

关键设计:三个智能体是独立的,各有自己的上下文和判断标准。Generator 不能评价自己,只有 Evaluator 能。


Sprint 合同:最精妙的机制

三智能体架构里最有价值的发明是 Sprint 合同

问题:人类给的一句"做一个好看的前端"太模糊了,AI 之间对"好看"的理解也不一样。

解决:

两个 AI 自己协商"完成"的标准,不需要人类在中间传话。


四维度评分标准

Evaluator 不是泛泛地说"好"或"不好",而是按四个维度打分:

维度 检查什么 默认表现
Design Quality 是否有连贯的视觉身份 权重高
Originality 是否有原创设计决策(而非 AI 模板感) 权重高
Craft 排版、间距、对比度等技术执行 默认就好
Functionality 可用性(独立于美学) 默认就好

注意:Craft 和 Functionality 默认就好,AI 在这些方面已经足够强。Design Quality 和 Originality 才是 Evaluator 真正要花力气判断的------也是 AI 最难自评的维度。


Harness 不只是约束,也能释放创造力

Anthropic 的三智能体实验中有一个意外的发现。

前 9 轮迭代产生了常规的前端设计------干净的深色主题页面,符合预期。然后第 10 轮,Generator 完全推翻了之前的方案,创造了一个3D 空间体验:CSS 透视渲染的棋盘格地板,画作自由悬挂在墙上,通过门口在展厅间导航。

这是单次生成从未见过的创造性飞跃。人类没有要求 3D,没有暗示空间感------是 Harness 给了 Generator 足够的自由度(在边界内),让它做出了超出预期的创造。

好的 Harness 在保证质量底线的同时,也给 AI 留出了突破的空间。


Harness 会进化:V1 → V2 的瘦身

Anthropic 的实验揭示了一个重要规律:Harness 不是一成不变的,它需要随模型升级而进化。

版本 模型 架构 时长 成本
Solo baseline Opus 4.5 单智能体 20 分钟 $9
V1 Harness Opus 4.5 Planner + Generator(按 sprint)+ Evaluator(每个 sprint) ~6 小时 $200
V2 Harness Opus 4.6 Planner + Generator(无 sprint)+ Evaluator(单次 pass) ~4 小时 $125

从 V1 到 V2 的变化:

  • 去掉了 Sprint 分期 --- 模型更强了,不需要拆那么细
  • Evaluator 从每个 sprint 跑变成跑一次 --- 省钱省时间
  • 成本从 200降到200 降到 200降到125 --- 效率提升 37.5%

每个 Harness 组件都编码了一个假设------"模型不能独立做 X"。模型升级后,这些假设需要重新验证,不再成立的组件就应该被精简。


两个关键发现的深度解读

Context Anxiety(上下文焦虑)

模型接近上下文窗口极限时,会产生一种奇怪的行为:提前收尾

即使任务还没完成,模型也会急急忙忙地"完成"------因为它害怕上下文溢出。Sonnet 4.5 尤为明显。

解决方案:Context Reset --- 在关键节点重置上下文窗口,让模型以全新的窗口继续工作。Ralph 循环里的 "Fresh Context" 也是同样的思路。

Self-Evaluation 的根本缺陷

为什么 AI 不能准确评估自己?

分离 Evaluator 解决了锚定效应,Sprint 合同解决了标准漂移。完整性偏差目前没有完美解法,所以人类的最终确认仍然必要。


这对普通开发者意味着什么

你不需要 Anthropic 的预算和算力。但你可以借鉴核心思路:

个人开发者的"轻量三智能体"

bash 复制代码
你 = Planner(写清楚要做什么)
AI = Generator(编码)
AI + 自动化测试 = Evaluator(验证)

具体做法:

核心就一个道理:"生成"和"评估"得分开。


一个需要常问的问题

模型升级后,某些 Harness 组件不再必要,但总有新的约束需要被发现。

定期审视你的 Harness:这条规则还有必要吗?这个组件还在承重吗?有没有新的能力我没用上?


这是驭缰工程系列的第六篇。上一篇:《Ralph 循环:让 AI 自己干活、自己查、自己改》 下一篇:《熵管理:AI 写代码的最大隐患和解决方案》

觉得有用?转发给正在用 AI 写代码的朋友,或者点个在看让更多人看到。

相关推荐
美团技术团队1 小时前
美团海报生成 AIGC 技术创新与实践
人工智能
yingyima2 小时前
Go 语言正则表达式速查手册:30 分钟掌握核心语法与实战技巧
前端
大蝴蝶博努奇a2 小时前
使用ChatGPT 解决各类代码报错
前端
鱼人2 小时前
响应式三巨头:rem / vw / em 深度对比,移动端到底该选谁?
后端
小强19882 小时前
Grid 网格布局实战:快速实现复杂网页排版
后端
胡志辉2 小时前
深入浅出 call、apply、bind
前端·javascript·后端
长大19882 小时前
Flex 布局完整教程:告别浮动,拥抱万能弹性布局
后端
iccb10132 小时前
5年,一个程序员是如何把私有化在线客服系统做到第一名的
前端·后端·github
冬哥聊AI2 小时前
放弃 Spring AI?这 3 个开源框架,才是让 SpringBoot 玩转 AI Agent 的正解
人工智能