从智能体经验中进行样本高效学习
现实世界中的智能体学习通常受到昂贵环境交互的限制,例如运行耗时的实验或获取人类反馈。 上下文学习 (In-context learning) 为智能体从自身交互历史中学习提供了一种高度样本高效的方式,但其收益在经验从上下文中移除后即消失。另一方面,上下文蒸馏 (Context distillation) 提供了一种将上下文信息内化到模型权重中的机制。然而,将其应用于智能体的交互历史而不牺牲环境样本效率的研究仍不充分。我们将此问题定义为 经验蒸馏 (Experience Distillation),并开发了一种无需在已收集经验之外进行环境交互的实现。 在 749 个精心策划的软件工程任务和六个文本冒险游戏上的实验表明,该方法在两个领域至少保留了上下文学习收益的 64.8%,而直接在收集的经验上进行 直接监督微调 (direct supervised fine-tuning) 仅恢复了 3.8%。与经典的 强化学习基线 (reinforcement-learning baselines) 相比,从试错经验中进行上下文学习后接经验蒸馏,以至少 9.6 倍更少的环境样本达到了与其相当的性能。
论文精读
TL;DR 提出 Experience Distillation,无需额外环境交互即可将智能体的上下文学习经验蒸馏至模型权重,保留至少 64.8% 增益,样本效率比经典 RL 基线高 9.6 倍以上。
问题
问题背景
大语言模型(LLM)驱动的 agent 在软件工程、游戏等交互式任务中展现出强大能力,但学习过程高度依赖试错或人类反馈,与环境交互的成本往往十分昂贵。如何让 agent 从有限经验中高效学习,并将习得的能力持久化,是当前研究的核心关切。
现有方法局限
- In-context learning:agent 将交互历史作为上下文直接注入,样本效率极高,但经验一旦移出上下文窗口便完全丢失,无法转化为模型本身的稳定能力。
- Context distillation:可将上下文信息内化至模型权重,但若直接用于 agent 交互历史,常需重新与环境交互或精心构造训练过程,这破坏了原本的样本效率优势。
- 直接监督微调(SFT):用收集的交互数据对模型进行标准 SFT,实验表明仅能恢复 3.8% 的 in-context learning 增益,说明从混合成功/失败的经验中学习存在严重欠拟合,无法有效内化策略知识。
为什么这个问题难/重要
- 技术挑战:在完全不访问环境的前提下,从有限且可能包含次优轨迹的交互历史中蒸馏出可泛化的策略,同时避免灾难性遗忘,这对训练框架和表示学习提出了极高要求。
- 业界关注度:实际应用中(如自动化编程、对话助手、机器人操作),每次环境交互都可能耗费大量计算、时间或人工标注,样本效率直接决定经济可行性。持久化学习也是 agent 持续进化的基石,因此,一种既能保持 in-context learning 的高样本效率,又能将经验永久内化至模型权重的方案,填补了从“一次性利用”到“持续积累”的关键空白。
这一问题的本质,类似于仅凭一次路测日志就永久提升自动驾驶决策模型,而无需反复路测——将样本高效探索与能力固化无缝衔接。
核心洞察
- 上下文学习的高收益无需永驻于上下文窗口——经验蒸馏(Experience Distillation)可将交互历史内化至模型权重,且无需额外环境交互。这直接解决了成本困扰:以往要么牺牲样本效率永久保存长上下文,要么移除上下文后收益消失;而本文在保持超低样本量(比 RL 基线少 ≥9.6 倍交互)的同时,把至少 64.8% 的上下文学习增益固化到参数中,远超直接 SFT 仅恢复的 3.8%。
- 直接对收集到的经验做监督微调几乎无效(3.8%),说明智能体交互历史并非通常的输入输出对,其价值高度依赖序列结构与试错逻辑。经验蒸馏通过模拟上下文学习行为进行蒸馏,保留了上下文中的隐式推理痕迹,这为“从少样本经验中学习”提供了新的工程范式:不是让模型模仿行为,而是模仿其上下文内利用经验的方式。
方法
核心问题与输入
方法解决 Experience Distillation:将智能体与环境交互的历史经验高效内化到模型权重中,而不再需要额外的环境交互。输入是智能体收集到的交互轨迹 (state, action, reward, next state, ...),这些轨迹被组织为上下文提示,供模型进行上下文学习(in-context learning)。
关键模块与流程
上下文教师模型(In-Context Teacher)
- 将完整的交互历史作为提示(prompt)输入基础模型,使模型能够利用历史中的试错信息(成功/失败的尝试)推断出更优的行为。
- 该模型输出概率分布
p_teacher(a|s, history),代表了融合经验后的策略。
蒸馏目标构建
- 对每条轨迹中的每个状态,用教师模型生成软标签(soft targets)——即动作概率分布或直接输出的 token 序列。
- 软标签蕴含了教师如何利用上下文“推理”出更好动作的结构信息,比原始轨迹中的硬动作更富含知识。
学生模型训练(Experience Distillation)
- 学生模型与基础模型同架构,但不接收任何历史上下文,仅以当前状态作为输入。
- 优化目标:最小化学生模型输出与教师软标签之间的 KL 散度(或交叉熵),使得学生模型仅从权重中学会做出和“看到历史”时相似的决策。
- 关键实现:整个过程完全离线,仅重用已收集的轨迹,不执行任何新的环境步进,因此环境样本效率极高。
输出
得到一个无需上下文提示即可表现出与上下文学习相近性能的模型,其权重已吸收了经验中的策略提升。
与同类方法的差异
- 对比直接微调(SFT):SFT 直接学习轨迹中的动作,无法捕捉上下文推理带来的决策改善,导致性能大幅退化(仅恢复 3.8% 的 in-context 增益)。Experience Distillation 通过教师模型的软标签,显式地将“如何利用历史”的能力蒸馏到权值中,保留至少 64.8% 的增益。
- 对比经典上下文蒸馏:已有上下文蒸馏方法通常针对单一上下文批次进行,而本方法首次将其拓展到智能体交互序列这一动态、多步的上下文形式,并保证无需额外环境交互,样本效率远优于经典 RL(至少 9.6× 更少的环境样本数)。
实验
实验在两个领域进行:软件工程任务 (749 个经过筛选的编程问题)和 文本冒险游戏 (6 款游戏)。基线包括 上下文学习 (In-Context Learning, ICL)、直接监督微调 (Supervised Fine-Tuning, SFT) 以及经典 强化学习 (RL) 方法。实验首先让 agent 通过 trial-and-error 与环境交互收集经验轨迹,然后在 ICL 阶段利用这些轨迹作为上下文提示,使 agent 即时提升表现。随后,通过 Experience Distillation 将上下文中的经验知识内化到模型参数中,此过程无需额外环境交互。评估指标主要关注增益保留率(相对于 ICL 的性能提升)和样本效率(与环境交互次数)。
关键发现显示,Experience Distillation 平均保留了 ICL 增益的 64.8%,而直接使用相同经验数据进行 SFT 仅恢复了 3.8% 的增益。这表明蒸馏能更有效地固化上下文学习成果。此外,在达到与经典 RL 基线相当的性能时,ICL 加 Experience Distillation 的组合所需环境样本数量至少减少 9.6 倍,大幅提升了样本效率。
与基线对比的深度解读:SFT 直接拟合经验数据,但可能因为经验分布的高方性或噪声导致过拟合,未能泛化到同分布的新任务;而 Experience Distillation 通过模仿 ICL 的隐式推理过程,保留了更多元认知层面的知识。相对于 RL,该 pipeline 利用上下文学习在极少量样本下快速适应,蒸馏则固化策略,避免了 RL 在线试错的高昂成本。这为资源受限的 agent 学习场景提供了一种实用范式:用少数交互获取经验,通过 ICL 即时提升,再蒸馏为永久技能。
行业影响
落地场景
该方法能显著降低环境交互成本,适用于任何需要代理通过试错进行学习的 AI 产品:
- 软件工程代理:代码生成、调试、测试自动化等任务中,代理通常需要运行代码或获取人类反馈,每次交互成本高。通过少量交互积累上下文经验,再用 Experience Distillation 蒸馏到模型,可大幅减少后续类似任务的交互次数。
- 对话式 AI:客服机器人、虚拟助手等通过少量真实对话学习应对策略,蒸馏后无需重复昂贵的人工标注或模拟交互,即可适应新领域。
- 游戏与仿真 AI:在游戏测试或机器人仿真中,环境交互(如物理引擎模拟)耗时,用该方法可将试错经验内化,加速策略迁移。
商业价值
- 降本增效:直接监督微调仅能恢复 3.8% 的上下文学习增益,而 Experience Distillation 保留至少 64.8%,同时所需环境样本比经典强化学习少 9.6 倍以上。这能将昂贵的实验迭代成本降低一个数量级,加速模型上线周期。
- 体验提升:模型能快速从用户反馈中学习并永久固化,避免每次请求都依赖长上下文(可能超时、成本高),从而提供更稳定、低延迟的服务。
- 增量学习:支持从流式交互中持续蒸馏,无需全量重训,适合持续演进的业务场景。
与现有工作流集成
- 集成方式:可在现有 代理循环 之后附加一个离线蒸馏步骤:代理在运行中收集经验(对话、操作轨迹、环境反馈),定期触发蒸馏流程,将上下文中的经验压缩进基础模型权重。无需额外环境调用,仅使用已收集的数据。
- 技术栈兼容:基于 上下文蒸馏 扩展,与现有微调框架(如 PyTorch、Hugging Face Trainer)兼容。蒸馏后的模型可直接替换原有模型,与推理服务无缝衔接。
- 实际用例:
- 自动化代码评审:代理在早期项目中通过少量交互学会特定编码规范,蒸馏后永久保留,避免每次评审都追加完整示例上下文。
- 在线教育辅导:AI 教师通过少数辅导对话学习到针对特定知识点的解释策略,蒸馏后形成专用模型,降低对实时对话反馈的依赖,提升响应速度。
局限
- 1. 论文主要评估了两个狭窄的任务领域:软件工程任务和文本冒险游戏。这些环境相对结构化且偏向文本交互,对于连续控制、物理机器人或开放域对话等复杂环境,**Experience Distillation** 的有效性尚未验证。实验设置中使用的 749 个软件工程任务和 6 个游戏可能不足以代表多样化的智能体学习场景,方法的泛化能力存疑。
- 2. 该方法声称“不需要进一步环境交互”,但**蒸馏过程本身仍依赖收集到的有限经验**,可能导致模型对特定经验轨迹过拟合,牺牲了对新环境的适应能力。论文与直接监督微调对比显示了巨大提升,但未深入分析蒸馏后的策略在分布外(OOD)场景下的性能下降幅度。此外,蒸馏涉及的计算成本(如额外的前向/反向传播)是否抵消了环境交互节省的样本效率未作讨论。
- 3. 摘要中仅对比了经典强化学习基线,但未与最新的**样本高效RL方法**(如model-based RL、meta-RL或offline RL)进行横向比较。在样本受限的设置下,这些方法同样旨在减少环境交互,因此 Experience Distillation 相对于它们的优势不明确。另外,上下文学习本身可能引入幻觉或不稳定,蒸馏过程能否消除这些缺陷也缺乏消融研究。