Dimitris Papailiopoulos 和 Vaishnavh Nagarajan(微软研究院)发布了 ECHO:一种让 CLI Agent 在强化学习中免费学习终端世界模型的新方法。
核心问题:为什么浪费好 token?
标准 Agent RL(如 GRPO)只训练 action token,把终端输出 token mask 掉——即使这些输出已经在 context 里、已经经过 forward pass、而且是 agent 行为如何影响环境的 ground truth 信号。
ECHO 的改动极其简单:保留标准 GRPO 对 action token 的损失,增加一个对环境 observation token 的 cross-entropy 损失。同样的 rollout、同样的 forward pass,只是对 logits 的 mask 不同。
公式上:
效果:免费且巨大
ECHO 在 Qwen3-8B、OpenThinker-Agent-v1-SFT、Qwen3-14B 上全面超越标准 GRPO:
- TerminalBench-2.0 pass@1 几乎翻倍:8B 从 2.7 → 5.2,14B 从 5.2 → 10.8
- 训练速度提升 2.3 倍:达到同等性能所需步数大幅减少
- 成本基本为零:没有额外 rollout、没有教师模型、没有额外 forward pass
真的在学习世界模型吗?
作者用更强的教师模型(Qwen3-32B)生成验证轨迹,测量各 checkpoint 对 terminal-output token 的 cross-entropy。
结果:GRPO 几乎不改变环境 token 的 cross-entropy,ECHO 则显著降低。ECHO 训练的 policy 在未见过的轨迹上更好地压缩终端动态——这是"学习了世界模型"的可操作版本。
能替代专家 SFT 吗?
标准做法是先 behavior-clone 强模型的专家轨迹,再跑 RL。ECHO 问:能不能跳过这一步?
对比三种设置:
- 基础模型 + GRPO
- 基础模型 + ECHO
- SFT 后模型 + GRPO
ECHO 恢复了专家 SFT 带来的大部分增益:ITD 上 104%、TerminalBench Lite 上 89%、TerminalBench-2.0 上 50%。
关键洞察:专家 SFT 的价值很大程度上来自教会模型"如何与终端交互"(检查文件、运行测试、追踪错误),而非特定状态下的专家策略。ECHO 不模仿专家选择,而是训练模型预测自己行为的终端后果,从而学会哪些命令能暴露有用状态、哪些错误是诊断性的。
更疯狂的想法:去掉 verifier 也能自改进?
如果 ECHO 真的在教 policy 理解终端行为,那也许根本不需要 verifier 信号。
实验:从最强的 ECHO checkpoint 出发,完全移除 GRPO 项,只用环境 cross-entropy 损失继续训练 100 步。
结果:
- val100(分布内):+3.8 pp
- ITD:+5.2 pp
- PyTerm(OOD Python 终端任务):+10.0 pp
没有奖励信号,模型仅通过预测自己行为的后果就实现了自改进。
当然,这取决于 rollout 是否干净、终端反馈是否信息丰富。Python 任务中 code → traceback → fix 的密集反馈链路尤其有效。核心惊喜不是"完美自改进",而是"仅凭行动和预测反馈就能自改进"——哪怕只是一点点。
技术细节
- On-policy 学习:ECHO 不依赖冻结的终端转录,而是学习当前模型在 RL 过程中产生的终端响应。更好的 policy 探索新环境 → 获得新的 action→observation 监督 → 更好的反馈预测 → 更好的 action prior。正循环。
- λ 的平衡:环境损失权重太小则 shaping 不足,太大则 policy 可能优化"可预测输出"而非任务进度。
- 目标 token 的选择:训练在真实终端输出上,而非 harness 警告。警告容易记忆,有用信号来自文件名、stack traces、错误信息。
- 成本几乎为零:backward pass 的昂贵部分是 attention 和 MLP 层的 matmul,这些无论哪些位置贡献损失都要跑。logits 已经计算好了,只是不同的 mask gather 不同子集。
迷宫实验:微缩验证
Dimitris 还跑了一个"silly maze experiment":6×6/7×7/8×8 网格迷宫,10M 参数 transformer,action→环境响应→action→环境响应... 两种条件:只训 action token vs 训 action+环境响应。
结果:ECHO 在所有迷宫尺寸上都优于 action-only 基线。这不是 Nature paper 级别的证明,但提供了足够的确信度去投入集群实验——而集群实验带来了 TerminalBench 翻倍、专家 SFT 替代、无 verifier 自改进等远超预期的结果。
下一步
作者认为 ECHO 的核心思想可以泛化到任何"agent 行动、世界以 token 回应"的场景:
- 浏览器 Agent(页面变化作为反馈)
- 多工具系统(工具输出作为学习信号)
- 长程编程 Agent(编译错误、测试失败作为密集监督)
- 面向用户的助手(用户纠正、偏好作为交互反馈)
关键方向:
- 用更紧凑的 state 表示替代原始终端输出(摘要、任务相关视图)
- 选择哪些 observation 该训练、何时过滤 trajectory
- 环境预测与 policy 优化的权重平衡
- 超越终端场景的应用
预测:到 2026 年底,某种形式的环境 token 预测将成为 Agent RL 训练器的标准配置。
核心 takeaway:Agent rollout 中包含的监督信号远超最终奖励。ECHO 只是停止扔掉已经在转录中的环境 token——几行代码的改动,带来了性能翻倍、训练加速、专家 SFT 替代、verifier-free 自改进。最简单的想法往往最有力。