如何把 Skills 变成 Agent 的训练场?小红书 AllSpark 提出 Skill2Env
当 Agent 从回答问题走向执行真实工作,训练也需要进入可交互的环境:模型需要探索环境、规划行动、调用工具、处理错误,并根据执行反馈持续调整策略。然而,如何规模化构建既能真实执行、又具有足够挑战性的训练环境,仍是 Agent 后训练面临的重要问题。现有的大量 Skills 中已经沉淀了丰富的领域知识、操作流程和工具使用经验,为训练环境的构建提供了可复用的素材。但要将它们转化为有效的训练环境,仍需要明确我们希望锻炼 Agent 的哪些能力?如何将这些能力需求转化为具体的任务挑战,并落实到具体的环境中?当模型已经能够轻松完成当前任务时,环境如何持续演进?
导读
小红书 AllSpark 团队提出Skill2Env,一套以 Agent 能力需求为导向的自动化环境合成框架。 Skill2Env 从已有 Skills 出发,将能力需求转化为可复用的难度模式,指导任务与执行环境的协同构建,并通过迭代强化机制,让训练任务随 Agent 的表现持续演进。Skill2Env 构建了2,963 个可执行任务,使用其中生成的1.5K 条高分轨迹对 Qwen3.6-35B-A3B 进行监督微调,在广泛的 Agent 评测基准上均获提升。
01
从一份 Skill 到一个训练环境,中间还缺什么?
一份文档处理 Skill 可以说明如何转换 PDF、提取表格或者执行 OCR。但要让 Agent 完成一次具体的供应商对账任务,还需要准备合同、发票、收据与付款记录,明确交付物,并建立能够判断执行结果是否正确的评估机制。
这些部分相互照应,彼此关联。合同中的规则要能在材料中找到依据,任务要求必须在工具和工作空间条件下可完成,评估器也要与实际验收标准一致。逐个手工构建和维护这样的环境,难以满足 Agent 后训练所需的规模与多样性。
Skill2Env 从公开 Skill 资源出发,将已有的领域知识与操作经验转化为可执行训练环境的构建基础。
团队从 ClawHub 下载了超过 47K 个 Skill 文件夹,按真实场景适用性、沙箱兼容性和依赖配置可行性筛选,保留其中约 3K 个用于后续任务合成。不同领域的知识、工具与材料,为构造多样化任务提供了基础。
02
先确定要训练的能力,再把挑战写进环境
Skill2Env 将复杂任务执行中的能力需求归纳为五个维度。
环境理解: 从环境信息中识别相关事实,理解任务目标与约束。
规划: 根据任务目标与环境约束制定多步执行计划,并在执行过程中动态调整。
技能使用: 根据任务需求,正确理解和应用 Skill 提供的工具说明与执行流程。
长程一致性:在长程任务中持续追踪状态与上下文,保持执行过程的一致性。
错误恢复: 根据执行反馈定位问题、调整操作并继续执行任务。
为了将这些能力落实到具体的任务中,团队设计了一个可复用难度模式池。例如,“分散证据”把关键事实放在不同来源中,要求 Agent 综合判断;“状态依赖”让后续操作依赖前一步的结果,要求 Agent 安排好执行顺序。
任务合成 Agent 会根据 Skill 支持的工作流,选择能够自然组合进同一目标的难度模式,并形成一份任务蓝图。蓝图统一说明任务目标、预期挑战、环境事实、验收标准,以及信息边界。
其中,信息边界明确了哪些内容需要直接写在任务说明中,哪些需要到工作区查找,哪些需要由已有证据推断。解题所需的事实与证据保持可访问,参考结果及推导则保留在任务构建侧。
图1 |从 Skill 与能力需求出发,经由难度模式和任务蓝图构建环境,再用执行反馈推动迭代。
围绕同一份蓝图,系统共同构建任务指令、运行依赖、初始工作区,以及基于评分细则的评估器。能通过程序检验的要求使用确定性检查,其余要求则使用 LLM Judge;各项分数按权重汇总,并记录支持评分的证据。
这样,任务要求、可用材料和评估标准就有了共同依据。一次执行之后,系统还会核对环境与评估器的一致性,修正构建问题,避免把材料缺失或评分错误当作 Agent 的能力不足。
03
Agent 已经会做的任务,如何继续提供训练价值?
初次合成时设计了挑战,并不意味着这些挑战对当前 Agent 足够困难。有些任务可能被轻松完成,也有些预设难点可能被捷径绕过。
迭代任务强化通过检查执行轨迹和评分结果识别这些问题。在论文设置中,奖励高于阈值的任务进入下一轮强化,其余任务保留。诊断 Agent 对照任务蓝图,分析哪些挑战已被解决、哪些要求被绕过,以及执行过程中仍存在哪些问题。
随后,系统针对性地强化已有难度模式,或引入与当前任务兼容的新模式。调整首先体现在任务蓝图中,再同步更新任务指令、工作空间、执行环境和评估器。如果发现现有模式池尚未覆盖的通用挑战,还可以将其抽象为新的难度模式。
通过这一过程,任务难度的提升不再依赖预先设定的复杂度,而是由 Agent 的实际执行表现驱动。随着 Agent 逐渐掌握已有挑战,系统可以有针对性地提高任务要求,持续生成更具挑战性的训练环境。
04
一个文档处理 Skill,怎样变成多轮加难的对账任务?
论文中的 Docling 案例展示了完整过程。Docling Skill 用于指导 Agent 使用 Docling 工具进行文档解析、格式转换、表格提取和 OCR 识别。最初构建的任务要求 Agent 对一家供应商的季度账单进行核对,读取 10 个文件、6 种格式的材料,包括 DOCX 合同、HTML 费率附件、PDF 发票、扫描收据、XLSX 付款台账和 Markdown 说明,最终输出 CSV 明细、JSON 汇总和审计说明。
这项任务同时要求 Agent 判断费率通知是否已经生效、核对差旅凭证、排除不属于本次项目的历史材料,并使三份交付物中的数字相互一致。原始任务设计了 3 项对账异常项,Agent 在首次执行中获得满分。
第一轮加难据此扩展工作流:把关键费率放入已签署的补充协议,加入跨月重复报销和另一个项目的干扰材料,并引入发票算术错误及部分付款。Agent 需要进一步区分原始开票金额、应纠正金额与实际已付款项。
在 Agent 第二次执行轨迹中,系统观察到 OCR 转换因命令参数问题多次中止,Agent 最终通过直接读取图片拿到了收据金额。基于此,第二轮修改将必要证据放入没有文本层的扫描 PDF,要求 Agent 必须可靠完成转换与提取。此外,第二轮修改还进一步增加了与日期相关的费率、缺少凭证的申报和跨费率档位的天数上限扣减。
两轮之后,工作区文件数从10 增至 21,设计的对账异常项从3 增至 12。更重要的是,这些对账异常项开始相互影响:提取、范围判断、费率计算与结算核对需要连成一套完整流程,才能得到一致的交付结果。
05
1.5K 条轨迹,能带来怎样的能力提升?
Skill2Env 构建了 2,963 个可执行任务,覆盖 25 个领域,其初始工作空间包含 46,295 个文件,涵盖代码、文档、结构化数据、图像等多种资源,为 Agent 提供了丰富多样的训练场景。
在此基础上,团队使用 DeepSeek-V4-Flash 在合成环境中生成执行轨迹,筛选出1.5K 条高分轨迹,对 Qwen3.6-35B-A3B 进行监督微调。
值得注意的是,Skill2Env 并未针对任何下游基准专门设计训练环境,却在七项基准上均取得了性能提升。这些基准覆盖终端操作、代码修复、技能使用、自主任务执行、银行业务支持、跨应用工作流及交互式服务任务等多种场景,体现了训练收益在不同任务类型间的泛化能力。
注:分数与提升值均保留一位小数;提升值由舍入前的原始分数计算,因此可能与表中显示值之差存在 0.1 分的差异。
换一种 Agent 执行框架,提升仍然存在
在 Terminal-Bench 2.1 上,团队进一步更换承载工具调用和交互流程的执行框架(Harness)。在 pi、Terminus-2、OpenCode 和 Claude Code 四种框架下,微调后的模型分别提升 11.2、13.5、16.9 和 12.3 个百分点,说明性能增益并不依赖特定的 Agent 执行框架,具有良好的跨框架泛化能力。
能力提升实现多领域泛化
在 SkillsBench 的八个领域中,微调后的模型在启用技能自动加载(Skills on)时,有七个领域取得提升,金融与经济领域持平。其中,媒体与内容、数学与运筹学、软件工程分别提升 46.7、26.9 和 23.4 个百分点,显示出训练收益在多个领域的迁移。
为考察不同技能加载设置下的训练收益,我们还比较了关闭技能自动加载的设置(Skills off,环境中的技能文件仍可访问)。在这一设置下,八个领域均取得提升。图中两组柱形分别表示各自设置下,微调模型相对基础模型的增益。
06
总结和展望
Skill2Env 提出了一套以能力需求为导向的 Agent 训练环境合成框架,从已有 Skills 出发,通过可复用的难度模式和任务蓝图,将能力需求转化为具体、可执行、可评估的任务挑战,并利用执行反馈持续强化任务难度。实验结果表明,基于这些环境生成的训练数据能够有效提升 Agent 在多类基准上的表现。随着 Agent 能力不断增强,训练环境需要提供更具针对性和挑战性的任务。未来,如何准确识别模型的能力短板,并据此动态调整任务设计,让训练环境随 Agent 能力共同演进,将是值得进一步探索的方向。
论文题目:
Skill2Env: Capability-Oriented Environment Synthesis from Skills for General Agents
研究团队:
小红书 AllSpark Team
项目地址:
https://github.com/AllSpark-Research/AgentEnv/tree/main
论文地址:
https://arxiv.org/pdf/2609.33772
///
作者简介
徐惟奕,AllSpark Pevek 组算法实习生,复旦大学统计学专业在读硕士生
杨骁文,AllSpark Pevek 组算法实习生,南京大学人工智能学院在读博士生
沐川,AllSpark Pevek 组负责人
欢迎投递:
【基础模型算法实习生】小红书招聘