Command Palette
Search for a command to run...
EmbodiedSkills:一个用于编排、训练和部署 VLA 智能体的统一框架
EmbodiedSkills:一个用于编排、训练和部署 VLA 智能体的统一框架
摘要
视觉-语言-动作(VLA)模型将视觉观察和语言指令直接映射为机器人动作,但长时程任务需要的不仅仅是动作预测。智能体必须在物理状态演变过程中协调感知、规划、执行、进度验证和恢复。动作预测或模型生成的技能决策本身并不能保证所提议的操作在当前状态下有效,也不能保证其结果会得到验证。我们提出 EmbodiedSkills,一个统一框架,将每个技能决策视为一个执行提议:运行时在执行前检查其前提条件,并在执行后验证结果。一个共享的可执行技能接口将高层技能选择、受限的低层 VLA 执行和动作后验证连接在单个智能体循环中。由于该接口保持固定,低层 VLA 策略可以在不改变智能体循环的情况下被替换或调整。该接口还将规划、执行、验证和恢复事件记录为结构化轨迹,为各个组件提供监督,并在交互反馈可用时支持可选的在线适应。我们使用 Qwen3-VL 和 OpenPI/π 在 RoboTwin 2.0 和 LIBERO 上实例化了 EmbodiedSkills。任务自适应的低层 VLA 策略在 50 个 RoboTwin 2.0 任务中平均成功率达到 86.20%,在四个 LIBERO 套件中平均成功率达到 97.40%。这些结果确立了 EmbodiedSkills 中使用的任务自适应低层 VLA 策略的执行性能。在四个依赖记忆的 RMBench 任务上,相同的任务自适应执行方法实现了 12.5% 的平均成功率。该框架提供了一个可训练且可检查的智能体层,用于将这些策略转化为闭环具身系统。
一句话总结
来自浙江大学、南京航空航天大学、康奈尔大学等机构的研究者提出了 EmbodiedSkills,这是一个统一框架,将每个技能决策视为带有前置条件检查和结果验证的执行提案,通过共享的可执行技能接口实现,支持可替换的低层 VLA 策略和结构化轨迹监督;以 Qwen3-VL 和 OpenPI/π 实例化后,在 RoboTwin 2.0 的 50 个任务上取得了 86.20% 的平均成功率,在 4 个 LIBERO 套件上取得了 97.40% 的平均成功率。
核心贡献
- 提出了 EmbodiedSkills 框架,将每个技能决策视为执行提案,运行时在执行前检查前置条件并在执行后验证结果,通过共享的可执行技能接口统一高层规划、有界的低层 VLA 执行和行动后验证于一个 agent 循环中。
- 将规划、执行、验证和恢复事件记录为结构化轨迹,为训练各组件提供监督信号,并支持可选的在线适应,同时允许在不改变 agent 循环的情况下替换或适应低层 VLA 策略。
- 在 RoboTwin 2.0 的 50 个任务上取得了 86.20% 的平均成功率,在四个 LIBERO 套件上取得了 97.40% 的平均成功率,并在四个依赖记忆的 RMBench 任务上使用任务自适应的低层 VLA 策略取得了 12.5% 的成功率,证明了一个通用的子目标条件执行接口能够在不同操作基准上支持强动作策略,同时保留显式的控制结构。
引言
视觉语言动作(VLA)模型将视觉观察和语言指令直接映射为机器人动作,近期的大规模预训练使它们在指令、具身形态和长时程任务上越来越通用。然而,长时程操作需要的不仅仅是下一步动作预测:机器人必须感知场景、选择子目标、检查可执行性、调用低层策略、验证结果并从失败中恢复。端到端 VLA 策略将这些中间决策隐式化,使失败难以诊断,而基于 LLM 的 agent 虽然使决策显式化,但无法保证这些决策在当前物理状态下有效或可执行,尤其是在部分可观测性和接触相关失败的情况下。作者提出了 EmbodiedSkills,这是一个统一框架,围绕可执行的具身技能组织感知、规划、执行、验证和恢复,每个技能由类型化输入、输出和前置条件定义。高层 agent 策略提出结构化的技能调用,运行时在执行前强制执行前置条件和合法的状态转换,低层 VLA 策略生成有界的动作块,执行后的验证信号反馈到后续决策中。这种策略与运行时分离使失败变得显式且可追踪,共享的技能接口允许独立训练和替换规划器、验证器和 VLA 组件。作者使用基于 Qwen3-VL 的组件和 OpenPI/pi_0.5 实例化了 EmbodiedSkills,在 RoboTwin 2.0 的 50 个任务上取得了 86.20% 的平均成功率,在 LIBERO 套件上取得了 97.40% 的平均成功率,展示了在保留显式控制结构的同时实现跨基准的强执行能力。
数据集
作者构建的训练样本镜像了部署系统使用的精确输入格式。每个样本定义为一个元组:任务指令、当前阶段、可见图像、紧凑运行时状态、可执行技能和最近的循环历史。输出标签是该组件在该时间步的决策。
- 组件特定输入: 每个组件(规划器、验证器、调度器)仅接收与其接口相关的字段。例如,规划器获取规划上下文,验证器获取活动子目标和执行后证据,调度器获取可执行选项以及最新的产物和错误。
- 上下文保留: 技能输出、环境反馈、先前决策和运行时错误按其原始时间顺序保留为条件上下文。在数据构建和部署期间应用相同的历史压缩规则,确保没有组件使用测试时不会出现的证据进行训练。
- 损失应用: 对于视觉语言监督,损失仅应用于学习组件生成的 token。提示、图像、工具结果和环境消息被视为上下文而非预测目标,从而保持策略提案与运行时提供的证据之间的区别。
方法
3 方法论
EmbodiedSkills 将具身 VLM–VLA 系统表述为一个在可执行具身技能上的受保护有限阶段控制器。高层 agent 策略读取任务、当前视觉证据、循环状态和阶段可执行技能,然后选择一个结构化操作。低层 VLA 策略将活动子目标、当前观察和机器人状态映射为有界的动作块。运行时检查每个提议的操作,将其结果记录为显式产物,在其上下文变化时使依赖的产物失效,并将更新后的状态暴露给下一个决策。模型、环境和 VLA 策略适配器在不同具体实例化中保持此接口的一致性。
3.1 Agent 状态与技能决策
一个回合从自然语言指令 x 和环境 E 开始。在循环步骤 t,方法级状态为
st=(zt,Mt,Ht),其中 zt 是当前阶段,Mt 是可用任务产物的集合,Ht 是有序的循环轨迹。产物可能包括当前观察、可选的感知和接地结果、世界状态、完整任务计划、活动子目标、预检证据、动作块、执行报告、验证报告和恢复上下文。
策略接收与部署一致的紧凑上下文
Ct=Ψ(x,zt,Mt,Ht),其中 Ψ 保留完整计划、活动子目标、当前产物摘要、最近错误以及最近决策和技能结果的有序有界摘要。较旧的条目在固定的历史预算下被压缩或丢弃,而当前计划和子目标保持显式。原始模拟器内部状态和无界日志不会插入到策略上下文中。
策略从状态相关的动作集中选择结构化决策:
dt∼πθ(⋅∣Ct,zt,At),At=Gstate(Kzt,st),其中 Kzt 是阶段 zt 的已配置技能集,Gstate 仅暴露与当前产物兼容的选项。策略有三种控制类型:
dt∈{RUNSkill(k,q),ADVANCESTAGE,FINISHRUN},其中 k 是可执行技能,q 是其载荷。技能执行、前向推进和终止因此共享一个结构化决策接口,而基于证据的路径重路由仍由运行时控制。
3.2 可执行技能契约
每个具身技能由以下契约表示
k=(Xk,Yk,prek,execk,postk,failk),其中 Xk 和 Yk 是类型化输入和输出模式,prek 定义前置条件,execk 是可执行操作,postk 指定结果状态更新,failk 将失败映射为显式状态和证据。产物携带来源和新鲜度信息,确保观察、计划和动作不会在其依赖变化后被静默重用。该契约同时适用于模型支持的技能和确定性操作,并防止文本提案被误认为物理状态转换。
在调用时,契约定义了技能可以消费哪些状态和证据;调用后,它决定了输出、副作用和失败如何成为共享任务状态的一部分。因此,模型生成的结果在模式和前置条件得到验证之前被视为提案。成功的输出成为可以支持后续技能的类型化产物,而失败则作为显式证据保留给下一个策略决策。这使得学习的感知、规划、验证和动作生成可以在不假设它们具有相同内部表示的情况下组合。
同一契约还定义了失效的边界。当观察、活动子目标或执行结果发生变化时,只有依赖于已变更证据的产物需要刷新。因此,循环可以重用仍然有效的上下文,同时防止过时预测授权新的物理动作。技能契约因此同时充当组合接口、运行时有效性边界和结构化训练轨迹的来源。
3.3 阶段结构化技能空间
运行时使用有序阶段集
Z=(OBSERVE, PLAN, PREFLIGHT, EXECUTE, VERIFY, RECOVER).这些阶段描述了循环的语义结构,而非刚性的一次性程序。当新观察、执行结果或验证证据使当前计划失效时,策略可以重新访问较早的阶段。
接地是任务和策略条件的,而非全局固定为源-目标对。任务可能不需要显式对象绑定、需要一个交互对象、多个对象或多个目标位置。直接语言条件 VLA 策略可以基于图像、机器人状态和子目标文本进行操作,而基于几何的控制器可能还需要显式的对象或区域绑定。
3.4 受保护的运行时转换
策略提出决策,而运行时定义其执行语义。由于三种控制具有不同的不变量,论文使用独立的保护条件。对于技能提案,
Gskill(st,dt)=1[dt=RUNSKILL(k,q)]1[stage(dt)=zt]1[k∈Kzt]⋅r∈R(k,q)∏1[r(st)=1],其中 R(k,q) 包含所选技能及其载荷的前置条件。前向推进由以下条件保护
Gadvance(st,dt)=1[dt=ADVANCESTAGE]1[Rzt(st)=1],其中 Rzt 总结了当前阶段是否已产生其后继阶段所需的证据。终止使用单独的控制门
Gfinish(dt)=1[dt=FINISHRUN].受保护的更新为
st+1=⎩⎨⎧U(st,k(q)),N(st),F(st),B(st,dt),Gskill(st,dt)=1,Gadvance(st,dt)=1,Gfinish(dt)=1,otherwise,其中 U 记录操作结果并使过时的依赖产物失效,N 推进循环,F 终止循环,B 记录被阻止的决策及其证据。这种分离允许学习策略在有意义操作之间进行选择,而无需让提示本身负责执行安全或状态一致性。
3.5 有界动作执行
在执行阶段,低层 VLA 策略将活动子目标、当前观察、机器人状态和就绪证据映射为动作块和执行报告:
(gt,Ot,Ft)⟶at⟶et,其中 gt 是活动子目标,Ot 是当前观察,Ft 是预检证据,at 是提议的动作块,et 记录其观察到的结果。
动作块是有界的命令序列
at=(τt,Ut,Ht,ηt),Ut=[ut1,…,utHt],其中 τt 是动作类型,Ht 是时域长度,ηt 将块与其子目标和观察上下文绑定。设 Σp 表示策略模块 p 暴露的动作模式。运行时仅在以下条件下接受动作块
Ract(at,st)=1[0<Ht≤Hmax]1[at⊨Σp]⋅1[fresh(at;gt,Ot)]1[valid(Ut)].这检查了策略特定的动作类型和维度、数值有效性、执行时域长度以及与当前子目标和观察的一致性。动作块执行后,循环在决定下一步操作之前获取新证据。因此,语义子目标可能需要多个有界块,而不是被强制放入单个动作时域中。
3.6 验证与恢复
验证仅使用最新动作块后捕获的证据评估活动子目标。它从以下内容预测语义路径
V={ADVANCE, CONTINUE, REOBSERVE, REPLAN, RECOVER, FINISH}.该路径要么推进计划,要么保留当前子目标以进行另一次有界尝试,要么刷新场景证据,要么修订计划,要么进入恢复。恢复使用相同的显式任务状态和失败证据来生成修订后的执行上下文,该上下文在另一次物理动作之前再次被检查。整体任务成功仍由环境的评估协议定义,而非局部子目标判断。
3.7 算法总结
算法 1 总结了 AgentLoop。在每一步,策略接收紧凑状态和可执行技能。运行时保护阻止缺乏有效证据的决策,每个操作结果都被追加到后续决策使用的有序轨迹中。
3.8 模块化接口
EmbodiedSkills 结合了类型化任务状态、阶段结构化技能接口、运行时验证、轨迹日志、环境适配器和动作策略模块。感知、规划、动作生成、验证和恢复可以使用具有阶段特定适配器的共享基础模型,也可以使用独立模型,前提是它们的输入和输出遵循相同的技能和状态契约。
4 训练 Agent 层
EmbodiedSkills 通过显式接口暴露规划、技能选择、执行、验证和恢复。这种结构允许学习组件独立适应,而无需端到端优化过程。在实例化中,组件级监督是主要训练机制。当交互数据和可靠的环境评估器可用时,相同的轨迹接口还支持可选的闭环策略优化。
4.1 组件级监督适应
规划器被训练为将任务指令和当前视觉上下文映射为有序的可执行语义子目标序列。子目标指定应达到的物理状态,而低层 VLA 策略在运行时检查下生成用于达到该状态的动作序列。因此,监督避免了将模拟器特定的控制细节嵌入到高层计划中。
低层 VLA 策略使用子任务级演示单独适应。每个训练示例将观察和机器人状态与活动子目标及对应的动作序列配对。在部署时,策略通过 Execute 接口接收相同类型的子目标条件上下文,并发出有界的动作块。语义子目标可能需要多个块:每个块之后,收集新证据,验证器决定执行应继续还是循环应推进。
对于高层控制,作者在保持低层 VLA 策略冻结的同时,在部署一致的决策轨迹上监督 Qwen3-VL 调度器。每个示例以任务、可见观察、紧凑任务状态、最近有序历史和当前阶段可执行技能为条件。目标是阶段合适的技能决策及其结构化参数,包括循环是应继续当前子目标、推进计划还是请求修订上下文。冻结低层 VLA 策略将此 SFT 阶段与连续控制学习隔离:它改进了状态条件调度和技能使用,而不改变低层动作的生成方式。
其他学习决策可以使用相同的分解。例如,验证器可以从执行后观察和子目标完成标签中适应,而外部调度器可以从有效技能选择及其运行时结果中适应。这些组件可以共享基础视觉语言模型,同时使用阶段特定适配器;运行时契约在适配器之间保持固定。EmbodiedSkills 不要求所有组件联合训练,在适当情况下可以使用确定性或外部提供的组件。
4.2 部署一致的训练样本
训练示例遵循部署组件使用的相同输入边界。对于时间 t 的模型决策,作者写作
xt=(g,zt,It,s~t,Kt,ht),yt=the component decision,其中 g 是任务指令,zt 是当前阶段,It 包含该调用可见的图像,s~t 是紧凑运行时状态,Kt 是可执行技能集,ht 是紧凑的最近循环历史。组件仅接收与其接口相关的字段。特别是,规划器接收规划上下文,验证器接收活动子目标和新的执行后证据,调度器接收可执行选项以及最新产物和错误。
技能输出、环境反馈、先前决策和运行时错误按其原始时间顺序保留为条件上下文。在数据构建和部署期间应用相同的历史压缩规则,因此组件不会使用测试时不会出现的证据进行训练。对于视觉语言监督,损失仅应用于学习组件生成的 token;提示、图像、工具结果和环境消息是上下文而非预测目标。这保持了策略提案与运行时提供的证据之间的区别。
4.3 可选的闭环适应
完整的 AgentLoop 还可以收集交互式轨迹。一个回合包含模型决策与已执行技能和观察到的结果交错:
τ=((x1,y1),…,(xT,yT),e1:T,R),其中 e1:T 是类型化运行时轨迹,R 由环境适配器提供,并在适用时附带对无效 agent 决策的显式惩罚。基础设施故障与 agent 策略故障分开记录。在 agent 级适应期间,低层 VLA 策略可以保持固定,使优化改变高层决策而不同时改变连续控制器。
组相对策略优化是一种受支持的机制。给定同一任务条件的 M>1 次 rollout,回合分数可以在组内归一化为
Ai=σG+ϵnormRi−μG.对于决策 t 的生成 token j,设 ρi,t,j 为更新策略与 rollout 策略之间的似然比。掩码裁剪目标为
Lonline=−Ngen1i,t,j∑mi,t,jmin(ρi,t,jAi,clip(ρi,t,j,1−ϵclip,1+ϵclip)Ai),其中 mi,t,j 选择生成的策略 token,Ngen=∑i,t,jmi,t,j。回合级归因必然是粗略的:相同的回报被分配给因果贡献可能不同的多个决策。因此,作者将在线优化视为可选的细化机制,而非组件级监督的替代或第 5 节主要结果的来源。
实验
通过 EmbodiedSkills 执行接口暴露的任务自适应低层 VLA 策略在 RoboTwin 2.0(50 个操作任务)和四个 LIBERO 套件(空间、物体、目标、长时程)上进行了评估,并在 RMBench 依赖记忆的任务上进行了额外测试。在 RoboTwin 2.0 上,策略取得了 86.20% 的宏平均成功率,比 LingBot-VA 参考提高了 3.46 个百分点,增益集中在接触敏感和多阶段任务上。在 LIBERO 上,平均成功率升至 97.40%,而 OpenPI 为 96.85%,在长时程套件上优势最明显。受控消融表明,结合语义子目标条件、中间验证和自适应延续是必不可少的,移除验证或子目标感知会导致显著的性能下降,而每个子目标仅分配一个动作块则被证明是不够的。
EmbodiedSkills 将机器人任务执行结构化为六个阶段,每个阶段具有特定操作和退出证据,支持自适应和可验证的进展。执行接口与基准无关,支持依赖记忆的任务,而消融表明结合语义子目标、行动后验证和自适应延续对性能至关重要。每个阶段在继续之前需要有效证据,确保动作基于当前观察和任务上下文。执行接口适用于不同的基准和任务类型,包括依赖交互历史的任务。移除中间验证会显著降低性能,表明在每个动作后检查进展至关重要。使用原始整体任务指令而非活动子目标条件会进一步降低性能,表明需要显式的阶段信息。允许每个子目标多个有界动作块是必要的,因为许多有效子目标无法在单个块中完成。
任务自适应的子任务级策略在 RoboTwin 2.0 上优于所有策略基线和通用 VLA 参考,取得了 86.20% 的宏平均成功率,而最佳参考为 82.74%。增益集中在接触敏感和多阶段任务上,50 个任务中有 39 个得到改进,仅在已超过 90% 成功率的任务上有小幅回退。任务自适应策略比最强 VLA 基线平均提高了 3.46 个百分点。最大增益出现在 Hanging Mug、Blocks Ranking Size 和 Open Microwave 等任务上,改进高达 20 个百分点。回退大多限制在基线成功率已超过 90% 的任务上的 1-2 个百分点。
所提出的 VLA 策略实例化在所有四个 LIBERO 套件上优于官方 OpenPI 参考,平均成功率为 97.40%,而参考为 96.85%。最大改进在 LIBERO-Long 上,而 Spatial、Object 和 Goal 上的增益较小,因为基线已接近饱和。平均成功率比官方 OpenPI 参考提高了 0.55 个百分点。最明显的增益在 LIBERO-Long 上,从 92.4% 上升到 93.6%。所有套件上的改进是一致的,Spatial、Object 和 Goal 上的较小差距归因于基线性能已经很高。
在 RMBench 依赖记忆的任务上,所提出的任务自适应策略与已发布基线相比取得了最高的宏平均成功率,在 Press Button 和 Cover Blocks 上有显著增益,同时在 Battery Try 和 Blocks Ranking 上保持竞争力。结果表明执行接口可以泛化到动作依赖交互历史的任务。任务自适应策略在宏平均上优于所有已发布基线,最大的相对增益在 Press Button 和 Cover Blocks 上。在 Battery Try 上,所提出的策略与最佳已发布结果持平,而在 Blocks Ranking 上接近最高基线。已发布基线在 Cover Blocks 和 Press Button 上经常完全失败,而所提出的策略在两者上都取得了非零成功率。
消融结果表明,完整的 AgentLoop 配置结合了语义子目标条件、中间验证和自适应分块,在各项任务上取得了最高的成功率。移除中间验证或语义子目标条件会显著降低性能,而将每个子目标限制为单个动作块会导致许多任务上接近零的成功率。完整配置在大多数任务上优于所有消融变体,在 Blocks Ranking RGB 和 Place Mouse Pad 等任务上差距最大。移除中间验证会在许多任务上大幅降低成功率,尽管 Click Alarmclock 等一些任务不受影响。移除语义子目标条件会导致严重下降,成功率通常减半或降至完整模型的四分之一。仅允许每个子目标一个动作块会产生非常低的成功率,通常低于 10%,表明许多子目标需要自适应延续。
实验在多个基准上验证了 EmbodiedSkills 执行接口,表明其任务自适应的子任务级策略始终优于通用 VLA 基线和已发布参考,最大的增益出现在接触敏感、多阶段和依赖记忆的任务上。消融确认了结合语义子目标条件、每个动作后的中间验证和自适应多块延续是必不可少的,移除这些组件中的任何一个都会导致显著的性能下降,在复杂任务上通常接近零成功率。