这篇笔记来自《从 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- 失败分级(可重试 / 需人工介入)
- 中间产物可回滚
一句话:持续迭代不是盲目重试,而是带约束的前进。
我会怎么落地这套方法
给自己的实践模板如下:
- 先写“可执行验收标准”(而不是抽象目标)
- 每轮循环强制跑测试与静态检查
- 每次通过一个里程碑就提交一次
- 超过阈值仍失败,自动切人工审阅
这样做的好处是:即使任务没完全结束,也会留下清晰可接手的中间状态。
结语
这篇文章最打动我的,不是某个新名词,而是一个很朴素的工程思想:
把“是否完成”从主观感受,改成客观验证; 把“记忆”从对话窗口,迁移到可持久化状态。
对做实际交付的人来说,这个转变非常值钱。