跳转到内容

Generator-evaluator loop

Generator-evaluator loop 指把“做事”和“评判”拆给不同 agent 的一种 harness 模式:一个 agent 负责生成实现,另一个 agent 负责基于预设标准或实际交互结果做独立评分、批评和验收,再把反馈回流给生成者继续迭代。在当前 wiki 语境里,这个概念来自 Anthropic 在前端设计和长时运行应用开发上的实验。

  • 这个模式要解决的核心问题不是生成能力不足,而是模型对自己产出的自评往往过度宽松,容易把“看起来还行”的结果误判为“已经很好”。
  • 在主观任务上,这一点尤其明显。例如前端设计没有天然的二元正确性,模型若同时负责生成和打分,很容易稳定地产出“功能正确但审美平庸”的安全答案。
  • 把 generator 和 evaluator 分离后,关键就变成让 evaluator 具备清晰、可操作的 grading criteria,并通过 few-shot 或 prompt tuning 形成更怀疑、更一致的判断标准。
  • 这个结构并不只适用于设计。Anthropic 把它迁移到全栈应用开发时,evaluator 用 Playwright 实际点击、操作、验收 UI 和 API,再按产品深度、功能、视觉设计和代码质量等维度进行判定。
  • 从工程角度看,它是一种把“代码 review / QA / product critique”显式 agent 化的方式,因此和 Agent scaffoldAgent teamsAgentic engineering 都直接相关。

ℹ️ Conflict:

  • 让 evaluator 独立存在,并不自动保证严格。它本身仍是 LLM,仍可能过度宽容、测试浅尝辄止或漏掉深层 bug,因此需要持续校准。
  • 这个模式有明显成本:每轮评估都要额外花时间、token 和工具调用成本,所以只有在任务质量要求高、且生成任务接近模型能力边界时,它才通常值得引入。
  • Anthropic, “Harness design for long-running application development”, 原文摘录:[llm-wiki/raw/anthropic/Harness design for long-running application development](/raw/anthropic/Harness design for long-running application development.md)