从 ReAct 到 Ralph Loop:摘录与我的三点思考

围绕 ReAct、Plan-and-Execute 与 Ralph Loop 的核心差异,整理关键摘录并给出实践思考。

这篇笔记来自《从 ReAct 到 Ralph Loop:AI Agent 的持续迭代范式》。 我把其中最有价值的部分做了摘录,再补三点我自己的思考。

我认为最关键的摘录

摘录 1:问题不在“不会做”,而在“过早停”

原文强调一个高频痛点:模型常在“主观觉得差不多”时结束,而不是在“客观完成标准”达成后结束。

这句话我很认同。很多时候不是能力上限,而是终止条件定义不清

摘录 2:Ralph Loop 的核心是“外部验证”

Ralph Loop 的关键并不是让模型自我反思得更聪明,而是:

  • 用明确完成条件约束任务
  • 用 Stop Hook 阻止提前退出
  • 用最大迭代次数作为安全阀

也就是把“是否完成”的判断权,从模型主观判断,交给外部可验证标准。

摘录 3:状态要落到文件系统,不要全押在上下文窗口

文中提到把进度、任务清单、提交历史沉淀到 progress.txt / prd.json / git log 等可持久化介质。

这点非常实战:会话会丢、上下文会腐烂,但文件和提交记录不会。


我的三点思考

1)ReAct 更像“聪明现场应变”,Ralph 更像“持续施工”

ReAct 的优点是灵活,适合动态探索; Ralph 的优点是稳,适合目标清晰、可验收的工程任务。

如果让我做选择:

  • 需求探索、调研类:先 ReAct
  • 已有验收标准的交付类:优先 Ralph 风格循环

2)完成标准要写成“机器可判定”

比起“把这个功能做好”,更好的表达是:

  • 单测通过率 ≥ 80%
  • E2E 关键路径全部通过
  • 输出固定完成标识

只要验收标准能自动判定,循环就有意义; 否则很容易变成“重复忙碌”。

3)循环不等于无限,必须有刹车

Ralph Loop 很强,但也容易烧时间。必须有:

  • max-iterations
  • 失败分级(可重试 / 需人工介入)
  • 中间产物可回滚

一句话:持续迭代不是盲目重试,而是带约束的前进。


我会怎么落地这套方法

给自己的实践模板如下:

  1. 先写“可执行验收标准”(而不是抽象目标)
  2. 每轮循环强制跑测试与静态检查
  3. 每次通过一个里程碑就提交一次
  4. 超过阈值仍失败,自动切人工审阅

这样做的好处是:即使任务没完全结束,也会留下清晰可接手的中间状态。

结语

这篇文章最打动我的,不是某个新名词,而是一个很朴素的工程思想:

把“是否完成”从主观感受,改成客观验证; 把“记忆”从对话窗口,迁移到可持久化状态。

对做实际交付的人来说,这个转变非常值钱。