发现树回放
Dream-RSI 如何避免重跑历史?
- 问题: 优化探索策略若每次都要重跑底层 Agent 与评估器,成本高于完成任务;
- 机制一: 把已经完成的发现过程保存为发现树;
- 机制二: 再把这棵树当作经验性的回放模拟器(replay simulator);
- 效果: 回放器只揭示相应节点中已经记录的结果,不必再次运行底层 Agent 和评估器;
发现树的节点保存什么?
| 节点 | 内容 |
|---|---|
| 根节点 | 初始工作区 |
| 子节点 | 从某个历史状态继续尝试后得到的工作区快照、候选产物、评估诊断和分数 |
- 接口: 候选策略通过与在线探索相同的接口,逐步选择要展开的叶节点,或从根节点打开新分支;
回放为什么不会泄露未来信息?
- 前提: 在线与离线阶段使用相同的决策接口;
- 揭示方式: 只向策略逐步揭示当前已经展开的子树;
- 在线阶段: 被选中的节点会真正调用底层 Agent 和评估器;
- 离线阶段: 相同的选择只返回历史中已经记录的后继;
- 结果: 候选策略可以比较不同的分支、顺序、并行批次和停止时机,又不能偷看在线决策时尚不可见的未来结果;
三阶段的递归闭环是什么?
- 在线探索:使用当前策略生成新的发现树;
- 构造回放世界:把发现树加入历史模拟器池;
- 离线做梦:让策略开发 Agent 修改探索策略代码,并按候选质量、执行成本和并行效率比较版本;
- 循环: 入选策略重新上线后产生新的树,也扩大下一轮可以回放的经验范围;
- 保证的性质: 候选集合保留当前策略,因此新版本至少不会在已有历史的平均回放分数上更差;
- 保证的边界: 这只是历史内的保证;
它与另两种历史复用方式有什么区别?
| 复用方式 | 改变的是什么 | 作用于 |
|---|---|---|
| 轨迹总结 | Agent 知道什么 | 知识或 Prompt |
| 工作流回放 | Agent 怎样重复执行 | 已验证路径 |
| 发现树回放 | Agent 怎样组织探索 | 探索策略 |
- 区别要点: 前两者是更新载体,后者是产生并验证更新提案的机制;
发现树回放的局限是什么?
- 不是世界模型: 它不能预测任意动作的后果;
- 只能重组已走过的分支: 只能重组历史中实际走过的分支;
- 迁移风险: 不能保证在旧树上得分更高的策略能迁移到新任务;
- 偏差来源: 支持域偏差、随机性与评价过拟合都可能让高分策略在下一轮在线探索中退化;
它属于哪种更新载体?
- 结论: 不是知识、Prompt、程序和参数之外的第五种更新载体;
- 而是: 一种产生并验证更新提案的新机制;
- 归属: 最终修改的是探索策略代码,因此产物仍属于程序/Harness;
- 新意: 把过去作为上下文或训练数据的历史,变成可反复交互的离线评估环境,把自我进化推进到“如何分配探索计算”的元策略层;