大模型推理能力越来越强,但有一个问题始终没有解决,模型每次面对新问题,都像是第一次见到它。做对了不会记住,做错了不会反思,下次遇到同类问题照样从零开始。
这个问题在智能体(Agent)场景里尤其突出。当一个Agent需要连续完成数百个任务时,它能不能从早期的经验里提炼出可复用的技能,并在后续任务中真正用上这些技能?

来自谷歌云人工智能研究院等机构的研究者提出了一个新框架——SkillOS,核心思路是用强化学习训练一个技能策展器(Skill Curator),让Agent在持续学习过程中主动管理自己的技能库。
PART 01
现有技能库方案的根本性缺陷
在SkillOS之前,已经有不少工作尝试给Agent加上记忆或技能库。常见的做法是:Agent完成一个任务后,把经验写进一个外部存储,下次检索出来用。
但这类方法有一个核心问题没有被触碰:技能的写入和更新依赖固定规则或另一个LLM,而这个策展过程本身从未被优化过。什么样的技能值得保留、什么样的技能应该被更抽象的版本替代、什么时候应该合并两条相似技能——这些判断全靠启发式规则或提示词,没有任何学习信号在驱动它变得更好。结果就是技能库越积越乱,要么冗余严重,要么过于具体,泛化性很差。
SkillOS的做法是把策展本身变成一个可学习的过程。核心组件是一个经过专门训练的技能策展器,它的输入是当前任务轨迹和现有技能库的状态,输出是一个具体的技能操作:写入一条新技能(insert)、更新已有技能(update)、或者合并删除重叠的技能(delete)。
这个策展器用GRPO(Group Relative Policy Optimization)来训练——也就是DeepSeek-R1使用过的那个强化学习算法。训练信号来自两个地方:任务执行结果($r{task}$,做对了还是做错了),以及技能内容质量评分($r{cnt}$,用外部LLM-as-judge打分)。质量评估从四个维度进行:
- 抽象性:技能有没有把具体任务里的特定ID、数字、对象名替换成变量或通用概念,而不是原封不动抄下来
- 可复用性:技能描述的是一个独立的、原子化的能力,还是把不相关的步骤打包在一起
- 可操作性:技能内容提供了足够具体的工作流程和条件判断,而不是笼统的建议
- 忠实性:技能里的所有声明都能在原始轨迹中找到依据,没有编造工具或环境行为
还有一个压缩奖励 $r_{comp}$,用来约束技能库的体量——技能库越精简,下游检索和使用的效率就越高。这三个信号共同构成策展器的训练目标。
PART 02
课程式分组训练怎么让策展器真正学会迁移
光有策展器还不够,SkillOS还设计了一套专门的训练数据组织方式——课程式分组(Curriculum Grouping)。

基本思想是:把训练任务按照前置知识和推理方式的重叠程度进行配对,形成一条由易到难的学习路径。策展器在训练时见到的不是孤立的单个任务,而是一组有内在关联的任务序列,能够学会跨任务地积累和迁移技能。
这个分组过程分两个阶段。第一阶段,用LLM给每个训练任务标注一组结构化属性,形成一个五元组:$Zi=(Ti,Si,Ci,Ri,Pi)$,分别对应高层主题(T)、所需技能(S)、底层数学概念(C)、启发式推理策略(R)、以及常见陷阱(P)。标注器被要求只输出标准化术语,不允许自由发挥,同时通过结构化解码固定JSON格式,使用Gemini-2.5-Pro完成标注。
第二阶段,用这些标注把任务配对成(源任务,目标任务)的组合,通过一个依赖门控(Dependency Gate)来过滤。要通过这道门,需要同时满足六个条件:两个任务必须共享足够多的基础概念和技能(保证知识复用);必须共享至少一个推理步骤或启发式策略(保证推理机制的迁移);目标任务相对源任务不能太相似也不能太不相关(限定在相关但不冗余的区间内);目标任务必须引入至少一个源任务没有的新概念或技能(保证确实有东西可学);以及目标任务的难度必须高于源任务(强制执行课程方向)。
相似度的计算用了软Jaccard(Soft Jaccard),因为技能标注本身来自一个开放词汇表,鸽巢原理和计数论证这样语义相近但表述不同的短语,用精确字符串匹配会错误判定为无关。软Jaccard把精确匹配和基于句子嵌入的贪婪配对结合起来,嵌入模型用的是all-MiniLM-L6-v2,余弦相似度阈值设为0.60。在数学推理任务上,论文从约33,000道有标注的题目里,最终筛选出20,000组分组训练实例。
PART 03
推理阶段的运作逻辑
推理阶段,SkillOS的工作流程如下:
Agent遇到新任务 → 从技能库中检索相关技能(BM25稀疏检索 + 向量稠密检索的混合方式,top-k召回)→ 把检索到的技能拼进Prompt → Agent用ReAct框架生成推理过程和答案 → 任务完成后,策展器决定如何更新技能库。
技能库的存储格式是结构化的Markdown文档,包含技能名称、适用场景、具体步骤、以及不适用情况说明。策展器在决定写入一条新技能时,需要生成这整份文档,而不只是简单记下这道题我做对了。
论文里有一张图直接展示了策展器在训练过程中的行为变化:训练初期,insert操作压倒性地占主导,策展器的主要动作就是不断往库里加新技能;随着训练推进,update的比例持续上升,insert稳步下降——说明策展器逐渐从盲目扩张转向精炼和整合已有技能。delete操作全程维持在较小比例,但有轻微增长趋势,说明压缩奖励确实在起作用,但技能库的主要适应方式是修订而非删除。
PART 04
在三类任务上取得了怎样的成绩?
论文在三类差异很大的任务上做了评测:
ALFWorld(具身任务):文本模拟的家庭环境,包含Pick、Look、Clean、Heat、Cool、Pick2六种子任务,共140个测试场景。以Qwen3-8B作为执行器时,SkillOS的平均成功率达到61.2%,显著高于无记忆基线(47.9%)和ReasoningBank(55.7%)。切换到更强的Qwen3-32B执行器,SkillOS达到68.6%,用Gemini-2.5-Pro执行时进一步提升至80.2%。步数指标上,SkillOS在Gemini-2.5-Pro执行器下平均只需14.8步,低于所有对比方法。

WebShop(网页交互):Agent需要根据用户需求在模拟电商网站上搜索、筛选、购买商品,评分维度包括商品类型匹配、属性覆盖、价格约束和购买完成四项,成功定义为综合得分≥0.5。

数学推理:测试集用AIME 2024/2025(各30道题)和GPQA-Diamond(研究生级别生物、物理、化学选择题,198道),训练数据来自DeepMath-103K,使用DeepSeek-R1生成的思维链作为参考解答,评估用精确匹配准确率。

消融实验的结果也清楚地说明了各模块的作用:去掉内容质量奖励,ALFWorld成功率从61.2%跌到58.6%;去掉压缩奖励,跌到60.0%;把分组训练换成随机任务序列,跌幅最大,只剩57.3%。课程式分组的贡献最为突出,因为策展器学的正是技能如何跨任务传递,没有这个结构,训练信号就失去了关键的跨任务传导链路。
PART 05
还有什么问题没有解决?
论文在局限性部分提到了两个值得关注的开放问题。
一个是多智能体共享技能库时的信用分配。比如协作机器人场景,Agent A用某个技能成功了,Agent B用同一个技能失败了,策展器应该怎么更新这个技能?功劳和责任怎么分配?如何在允许共享迁移的同时,又保留每个Agent的专业化能力?论文认为GRPO训练的策展器是一个自然的起点,但把它扩展到多智能体信用分配场景,需要全新的算法设计。
另一个是标注质量的传导问题。整套课程分组流程的质量高度依赖第一阶段LLM标注的准确性。如果标注器把语义不同的技能归为同一类,后续分组逻辑就会出错,策展器可能学到的是噪声。论文的处理方式是要求标注结果只使用标准化术语,并用结构化解码约束输出格式,但LLM标注本身仍然是系统中最难被精确控制的环节。
论文地址:https://arxiv.org/abs/2605.06614