微软ECHO:让CLI Agent学会预判终端输出,提升强化学习效率
命令行智能体的训练方式正在迎来一次重要升级。微软研究团队发布ECHO框架,核心创新在于让CLI Agent在强化学习过程中同时学习"下一步该敲什么命令"以及"这条命令敲完后终端会返回什么"。
传统训练的盲点
过去训练CLI Agent时,终端返回的报错、日志、文件内容、测试结果通常只作为上下文信息,帮助模型决定下一步动作。然而训练损失(loss)主要计算在Agent生成的命令上,终端返回内容本身并不直接参与训练——这意味着大量有价值的信息被白白浪费。
ECHO的核心思路
ECHO改进了这一流程:在同一训练过程中,它额外要求模型预测终端输出。举例来说,当Agent运行测试失败时,传统训练只知道这条轨迹最后没通过;而ECHO还会让模型学习这次失败具体返回了什么错误、文件里暴露了什么线索、以及命令造成了什么后果。
这相当于把失败轨迹也榨出训练价值。
性能提升显著
论文实验数据显示,在TerminalBench-2.0基准测试上:
- Qwen3-8B:pass@1从2.70%提升到5.17%,接近翻倍
- Qwen3-14B:pass@1从5.17%提升到10.79%,同样近乎翻倍
对比仅使用GRPO训练的基线方法,ECHO展现出明显优势。
效率与数据优势
在训练效率方面,ECHO在部分8B模型实验中达到同等性能时,最多减少约2.3倍的训练步数。它还降低了对专家演示数据的依赖:基于Qwen3-8B的ECHO智能体,在内部评测中追平了使用约1.5万条专家轨迹微调后的OpenThoughts-Agent。
局限性
值得注意的是,ECHO并非万能替代奖励信号。无验证器的自我改进方法在反馈清晰的任务上效果明显,例如PyTerm提升10.0个百分点、ITD提升5.2个百分点;但在更复杂的TBLite上反而下降3.9个百分点。
意义
ECHO真正证明的是:终端里的报错、日志和测试输出不仅仅是上下文信息,它们可以直接转化为Agent的训练数据。这一思路为低成本、高效率的CLI Agent训练开辟了新路径。