全面超越人类,别再手写Skill了!微软、上海交大等用神经网络训练Skill

全面超越人类,别再手写Skill了!微软、上海交大等用神经网络训练Skill Agent 的 Skill能不能像训练神经网络一样训练微软联合上海交大、同济、复旦用 SkillOpt 给出了答案可以。SkillOpt 把 Agent Skill 文档当成可训练的外部状态用 epoch、batch size、学习率、验证门控这些深度学习的老工具在文本空间里做优化全程不碰模型权重。结果是52 个评测单元全赢或并列第一GPT-5.5 平均提升 23.5 分。该研究回答了为什么需要训练 Skill、SkillOpt 怎么训练、训练出来的 Skill 长什么样、能搬到哪里用等一系列问题。Skill 训练缺的正是优化器Agent 越来越能干但能干不等于会干。一个模型拿到搜索任务可能搜对了方向却答错了格式拿到表格任务可能改了数据却丢了公式拿到数学题可能推理正确却选了较弱的结论。这些不是模型能力不够是执行策略不够精准。现在主流的 Skill 获取方式有三种。人工编写human skill专家手写一份操作指南质量取决于人的经验写了就固定了跑了发现问题也没法自动修。大模型一次性生成LLM skill让大模型根据任务描述写一份 Skill 文档写完就再也不更新出了错也没机会回头。自我演化如 EvoSkill、Trace2Skill从执行轨迹里提炼经验、修正 Skill方向对但缺乏控制力改着改着可能越改越差。这三种方式的共同问题没有一个像样的优化器。深度学习之所以能稳定地越训越好靠的不是某个单步更新有多聪明而是一整套训练纪律batch size 控制噪声、学习率控制步长、验证集挡住过拟合、动量项保留长期方向。Skill 训练缺的就是这套纪律。SkillOpt 把 Skill 文档当成冻结 Agent 的外部可训练状态用一个独立的优化器模型来编辑 Skill用训练控制来保证稳定性用验证门控来保证每一步都比上一步好。文本空间里做优化SkillOpt 的训练流程和深度学习的训练循环几乎一一对应。前向传播目标模型带着当前 Skill 文档在训练集上跑一批任务收集执行轨迹和分数。这一步就像前向算 loss只不过 loss 不是一个标量而是一堆有得分、有过程、有成败的轨迹。反向传播优化器模型拿到轨迹把成功和失败分开分小批次做反思。失败轨迹暴露可复用的程序性错误。Agent 总是搜错来源、总是写错格式、总是忘记验证工具结果。成功轨迹则保住已经管用的行为。每个反思小批次产出一组结构化的增删改编辑add/delete/replace然后分层合并。失败驱动的编辑和成功驱动的编辑分别整合再合并时优先采纳纠错性编辑。有界文本更新合并后的编辑池按预期效用排序只保留排名前 Lt 的编辑。这个 Lt 就是文本学习率是 SkillOpt 区别于随意改写的核心。无界改写可能删掉有用的规则、引入矛盾的指令、对局部失败过拟合有界更新保证每次只做有限修改Skill 版本之间保持连续性。支持常数、线性、余弦、自适应四种调度方案默认余弦调度起步改大步、后期改小步。验证门控每个候选 Skill 在独立的选择集selection split上评测。分数严格超过当前最优才接受并列也算拒绝。这让 Skill 训练变成了提出-测试优化而不是无条件自我修改。一个看似合理的文本诊断可能实际上损害目标模型的表现验证门控挡住的正是这类编辑。拒绝编辑缓冲被拒绝的编辑不会浪费。优化器维护一个 epoch 内的缓冲区记录失败模式和被拒编辑及其导致的分数下降。同一 epoch 后续的反思调用能看到这个缓冲区避免重复犯同样的错把失败编辑变成负反馈训练时有收益部署时零成本。Epoch 级慢/元更新快速更新从当前批次学习慢更新从跨 epoch 的长期趋势学习。每个 epoch 结束SkillOpt 用前一个 epoch 的 Skill 和当前 Skill 跑同一批训练样本把结果分成改进、退步、持续失败、稳定成功四类。优化器模型写一段精简的纵向指导存入 Skill 文档的保护区域步级编辑不能覆盖这个区域。元 Skill 只存在于优化器端总结哪些编辑模式有效、哪些被拒、哪些失败跨 epoch 持续存在为后续反思提供参考但不随 Skill 部署。52 个单元全部胜出实验覆盖 6 个基准、7 个目标模型、3 种执行模式直接对话、Codex harness、Claude Code harness总共 52 个评测单元。以 GPT-5.5 直接对话为例六个基准的平均分从无 Skill 的 58.8 涨到 SkillOpt 的 82.3提升 23.5 分。即便和每个单元最强基线比SkillOpt 还领先 5.4 分。SpreadsheetBench 从 41.8 到 80.738.9OfficeQA 从 33.1 到 72.139.0LiveMath 从 37.6 到 66.929.3提升幅度惊人。小模型受益更大。GPT-5.4-nano 在 DocVQA 上从 30.8 涨到 80.249.4接近翻倍ALFWorld 从 34.3 涨到 69.435.1直接翻倍。Qwen3.5-4B 在 ALFWorld 上从 30.6 涨到 81.350.7提升超过 60 分。小模型自身权重里缺乏的程序性知识一份紧凑的 Skill 文档就能补上。Codex 和 Claude Code 两种工具执行模式下SkillOpt 同样全面领先。Codex 模式平均提升 24.8 分比最强竞品 EvoSkill 高 14.0 分Claude Code 模式平均提升 19.1 分比 EvoSkill 高 3.2 分。一个 SpreadsheetBench 案例EvoSkill 已经把 Codex 模式从 27.5 拉到 67.5SkillOpt 又加了 17.5 分到 85.0。搬得走的 Skill 才值钱Skill 优化出来能不能换个地方用SkillOpt 测了三种迁移场景。跨模型迁移。在 GPT-5.4 上优化的 SpreadsheetBench Skill部署到 GPT-5.4-mini 上提升 9.4到 GPT-5.4-nano 上提升 3.0。LiveMath Skill 迁到 GPT-5.4-mini 提升 4.5迁到 GPT-5.4-nano 甚至达到了 5.6超过了在目标模型上原地优化的结果27.2 vs 28.8。四组跨模型迁移全部为正向没有一个低于目标模型的无 Skill 基线。跨执行环境迁移。这个方向的结果最有说服力。Codex 里训练的 SpreadsheetBench Skill直接搬到 Claude Code 里从基线 22.1 涨到 81.859.7甚至略超 Claude Code 原地优化的 80.4。反过来Claude Code Skill 搬到 Codex 也提升了 43.6。两个环境暴露的工具接口、文件 API、命令面完全不同迁移仍然有效说明学到的不是环境专属的命令食谱而是工作簿级别的通用程序——先看结构、再验公式、最后写静态值。最严格的跨基准迁移。OlympiadBench 上优化的数学 Skill拿到 Omni-MATH 上用三个模型上分别提升 3.7、1.8、1.3。数字不大但全部正向而且源基准和目标基准之间只有数学这个大类别是共享的题目实例和答题格式约定都变了。这佐证了优化 Skill 编码的是可复用的数学程序而非记忆的特定格式。优化器强度的影响也值得注意。SkillOpt 的优化器只在离线训练时运行部署时完全不需要。更强的优化器GPT-5.5比目标匹配的优化器在每个单元上都赢得更多但目标匹配的优化器也能恢复 56%~74% 的增益。学出来的 Skill 长什么样紧凑、可审、可读。Table 6 记录了六个基准的 Skill 优化成本和编辑经济性。最终 Skill 文档长度 379 到 1,995 个 token中位数约 920 个 token远远不到现代模型的系统提示预算上限。被接受的编辑次数只有 1 到 4 次中位数 2.5 次。LiveMath 的 29.3 分提升来自一条被接受的编辑OfficeQA 的 39.0 分也是一条。说明验证门控在认真干活。优化器每个 epoch 提出的编辑远不止这些但绝大多数被挡在了门外只有极少数通过 held-out 检验存活下来。训练成本方面SpreadsheetBench 每提升 1 分只需 0.6M tokenOfficeQA 需 1.1MLiveMath 需 3.6M。SearchQA 和 DocVQA 成本较高37.9M 和 46.4M因为轨迹长、多模态上下文丰富。但关键在于这笔费用在训练时一次性支付部署后只多一份静态文本不增加任何推理调用。SkillOpt 的结果说明Agent 的 Skill 层就像神经网络的权重层一样值得用完整的优化工具箱来对待。52 个评测单元全胜优化的 Skill 文档能跨模型、跨环境、跨基准迁移部署时零额外推理成本。还有什么比这更值当的训练投资参考资料https://github.com/microsoft/SkillOpthttps://arxiv.org/pdf/2605.23904https://microsoft.github.io/SkillOpt/