《VLA 系列》LingBot-VLA 2.0 | 稀疏 MoE 动作专家 | 双查询时空蒸馏 | 论文与源码解析
LingBot-VLA 2.0 要解决的不是再做一个更大的 VLA,而是把 VLA 从实验室基准推向真实机器人:数据来自 20 种不同本体,动作不再局限于双臂和夹爪,还要覆盖头、腰、移动底盘和灵巧手;同时,策略不能只看当前画面做反应,还要形成对未来场景变化的判断。
这篇技术报告给出的答案可以概括为四点:
- 将约 5 万小时机器人轨迹和 1 万小时第一视角人类视频清洗、标注后用于预训练,覆盖 20 种机器人配置;
- 用 55 维统一状态/动作表示对齐异构本体,并在缺失维度上做 padding;
- 在动作专家的 FFN 中引入 token 级稀疏 MoE,让共享专家保留通用控制知识、路由专家学习本体和任务特化模式;
- 用 LingBot-Depth 与 DINO-Video 同时监督当前查询和未来查询,让 VLA 在训练时学习当前几何与未来时空表征,但推理时不需要真实未来图像或外部深度图。
论文在 GM-100 的 generalist 混合训练设置和两个长程移动操作任务上验证了改动。结果总体优于对比方法,但不同任务的收益并不均匀,部分任务仍表现为过程推进得不错,最后一步却失败。这也是理解该模型工程价值时必须保留的边界。
资料链接
- 论文:From Foundation to Application: Improving VLA Models in Practice
- 项目主页:LingBot-VLA 2.0
- 官方源码:Robbyant/lingbot-vla-v2
- 模型权重:LingBot-VLA-V2 Collection

图 1 左侧是完整 VLA:理解专家接收图像和语言,动作专家接收机器人状态与加噪动作,并通过 Flow Matching 输出连续动作块。右侧是训练期的双查询蒸馏:当前查询学习当前场景,未来查询学习动作块末端对应的未来场景。要特别注意,图中的 depth target 和 DINO-Video target 是训练监督,不是部署时的传感器输入。
1、LingBot-VLA 2.0 的模型定位
LingBot-VLA 2.0 仍然是一个直接从观测、语言和本体状态生成连续动作的 VLA,不是显式生成未来视频再规划动作的 World-Action Model。它增加了预测未来表征的辅助目标,但没有在测试时先生成未来图像,再把未来图像送给动作模型。
| 概念 | 在本文中的对应模块 | 训练时作用 | 推理时是否需要 |
|---|---|---|---|
| VLM / Understanding Expert | Qwen3-VL-4B-Instruct 主干 | 编码多视角图像、语言与查询 token | 需要 |
| Action Expert | Flow Matching Transformer + MoE FFN | 学习连续动作速度场 | 需要 |
| Current Query | Q t Q_t Qt | 对齐当前深度和当前 DINO-Video 特征 | 作为模型内部 token 保留 |
| Future Query | Q t + T Q_{t+T} Qt+T | 从当前因果上下文预测未来深度和视频表征 | 作为模型内部 token 保留 |
| LingBot-Depth | 几何 teacher | 生成当前/未来深度表征监督 | 不需要 |
| DINO-Video | 时序 teacher | 生成当前/未来视频特征监督 | 不需要 |
| World Model | 无独立显式世界模型 | 仅以未来表征预测作为 proxy task | 不适用 |
| 动作输出 | 长度 T T T 的连续动作块 | 以 Flow Matching 训练 | 10 步去噪生成 |
简单来说,双查询蒸馏更像给 VLA 加两道训练题:一道让它认清当前空间结构,一道让它预判执行完这段动作后场景会变成什么样。teacher 在训练结束后离场,学生模型把学到的时空先验留在参数和查询表示里。
2、数据工程先解决异构与噪声问题
2.1、6 万小时数据不是直接拼接
作者先收集约 9 万小时、覆盖 20 种本体的机器人数据,过滤后保留约 5 万小时;第一视角视频池约 2 万小时,处理后保留约 1 万小时。机器人数据包含单臂、双臂、半人形、人形和移动机器人,控制频率主要是 15 Hz 或 30 Hz;第一视角数据为 30~60 Hz。

图 2 的重点不是机器人数量本身,而是不同平台的自由度组合差异很大:有的平台只有机械臂和夹爪,有的平台还带头、腰、底盘或灵巧手。如果动作空间不先统一,模型看到的同一维索引会在不同数据源中代表不同物理量。
机器人轨迹的清洗主要围绕三类问题:
- 动作是否平滑。 计算速度、加速度和 jerk(三阶有限差分),超过本体专用阈值的 episode 被丢弃;全状态/动作几乎静止超过 95% 的 episode 也被过滤。
- 视频与状态是否对齐。 根据 URDF 和记录状态把机器人投影回图像,由人工核查投影与真实视频是否错位。
- 视觉数据是否可用。 去除模糊、严重遮挡、丢帧和多相机不同步样本。

第一视角数据先由 VLM 去掉非第一视角、无交互、无可操作物体或明显出现非操作者手部的视频。对没有动作标签的视频,系统用 egocentric SLAM 估计相机位姿,再用手部姿态估计恢复 MANO 参数,最终把手部轨迹统一到世界坐标系。训练采样时,再把未来手轨迹转换到当前相机坐标系:
p τ C t = T C t ← W p τ W p_{\tau}^{C_t}=T_{C_t\leftarrow W}p_{\tau}^{W} pτCt=TCt←WpτW
其中, p τ W p_{\tau}^{W} pτW 是时刻 τ \tau τ 的手部轨迹在世界坐标系中的位置; T C t ← W T_{C_t\leftarrow W} TCt←W 是从世界坐标系到当前帧相机坐标系 C t C_t Ct 的变换; p τ C t p_{\tau}^{C_t} pτCt 是最终用于训练的相机坐标系轨迹。这样做把人手相对场景的运动与头戴相机自身运动分离开来。
2.2、55 维统一动作表示

统一向量由双臂关节 14 维、双末端位姿 14 维、夹爪 2 维、灵巧手 12 维、腰部 4 维、头部 2 维、移动底盘 3 维和 4 个预留维度组成,共 55 维。某个本体没有对应部件时,相关维度 padding;配置文件再负责把原始字段映射到统一槽位。
这种方案的优势是模型输出头固定,跨本体数据可以混合训练;代价是统一向量只完成了接口对齐,并没有消除运动学、相机视角和动力学差异。论文中 Galaxea R1 Pro 明显低于 AgileX Cobot Magic,也说明本体差异没有因为 padding 自动消失。
2.3、任务级与子任务级自动标注
作者用 Qwen3.6-27B 为视频生成视频级任务描述,并把长视频切分成连续子任务。子任务标签来自 18 类闭集词表,其中 15 类是 move、pour、push、open、fold、wipe 等操作原语,另外 3 类是 transit、idle 和 other。
切分边界并不是每次抓取、搬运、释放都切一段,而是在操作对象变化、动作类型变化或持续停顿进入新子目标时切分。这个粒度更适合长程任务,因为一个拿起杯子并放到托盘的完整交互不会被拆成大量过短指令。
3、动作专家为什么使用稀疏 MoE
异构预训练中,一个动作 token 同时受本体结构、任务阶段、控制空间和场景影响。LingBot-VLA 2.0 没有预先规定某个专家只管手、某个专家只管底盘,而是在动作专家的每层 FFN 中做 token-choice 路由。
第 ℓ \ell ℓ 层、动作 token t t t 的 MoE 输出为:
M o E ℓ ( u ℓ , t ) = E ℓ ( s ) ( u ℓ , t ) + λ ∑ j ∈ R ( u ℓ , t ) g ℓ , j ( u ℓ , t ) E ℓ , j ( r ) ( u ℓ , t ) \mathrm{MoE}_{\ell}(u_{\ell,t})=E_{\ell}^{(s)}(u_{\ell,t})+\lambda\sum_{j\in R(u_{\ell,t})}g_{\ell,j}(u_{\ell,t})E_{\ell,j}^{(r)}(u_{\ell,t}) MoEℓ(uℓ,t)=Eℓ(s)(uℓ,t)+λj∈R(uℓ,t)∑gℓ,j(uℓ,t)Eℓ,j(r)(uℓ,t)
这里, u ℓ , t u_{\ell,t} uℓ,t 是动作 token 的隐藏状态; E ℓ ( s ) E_{\ell}^{(s)} Eℓ(s) 是始终激活的共享专家; E ℓ , j ( r ) E_{\ell,j}^{(r)} Eℓ,j(r) 是第 j j j 个路由专家; R ( u ℓ , t ) R(u_{\ell,t}) R(uℓ,t) 是 Top-K 专家集合; g ℓ , j g_{\ell,j} gℓ,j 是归一化路由权重; λ \lambda λ 是路由输出缩放系数。共享专家承接通用控制先验,路由专家提供更大的特化容量。
每个专家本质上仍是 SwiGLU MLP:
E ( u ) = W d o w n ( S i L U ( W g a t e u ) ⊙ W u p u ) E(u)=W_{down}\left(\mathrm{SiLU}(W_{gate}u)\odot W_{up}u\right) E(u)=Wdown(SiLU(Wgateu)⊙Wupu)
W g a t e W_{gate} Wgate、 W u p W_{up} Wup 和 W d o w n W_{down} Wdown 是门控、升维和降维线性层, ⊙ \odot ⊙ 表示逐元素乘法。论文设置为 1 个共享专家和 N r N_r Nr 个路由专家,每个 token 只激活其中 K K K 个路由专家。
路由器先计算 FP32 logit,再使用 sigmoid,而不是让所有专家通过 softmax 强竞争:
z ℓ , j = u ℓ , t ⊤ e ℓ , j , s ℓ , j = S i g m o i d ( z ℓ , j ) z_{\ell,j}=u_{\ell,t}^{\top}e_{\ell,j},\qquad s_{\ell,j}=\mathrm{Sigmoid}(z_{\ell,j}) zℓ,j=uℓ,t⊤eℓ,j,sℓ,j=Sigmoid(zℓ,j)
e ℓ , j e_{\ell,j} eℓ,j 是第 j j j 个专家的可学习路由向量, s ℓ , j s_{\ell,j} sℓ,j 是 token 与专家的独立匹配度。论文的 loss-free 负载均衡使用校正偏置 b ℓ , j b_{\ell,j} bℓ,j 只改变专家选择,不改变最终混合权重:
R ( u ℓ , t ) = T o p K j ( s ℓ , j + b ℓ , j , K ) R(u_{\ell,t})=\mathrm{TopK}_{j}\left(s_{\ell,j}+b_{\ell,j},K\right) R(uℓ,t)=TopKj(sℓ,j+bℓ,j,K)
b ℓ , j ← b ℓ , j − γ s i g n ( n ℓ , j − 1 N r ∑ k = 1 N r n ℓ , k ) b_{\ell,j}\leftarrow b_{\ell,j}-\gamma\,\mathrm{sign}\left(n_{\ell,j}-\frac{1}{N_r}\sum_{k=1}^{N_r}n_{\ell,k}\right) bℓ,j←bℓ,j−γsign(nℓ,j−Nr1k=1∑Nrnℓ,k)
n ℓ , j n_{\ell,j} nℓ,j 是累计分配给专家 j j j 的 token 数, γ \gamma γ 是偏置更新速度。过载专家的偏置降低,欠载专家的偏置升高,从而避免把额外均衡损失直接混入动作学习目标。

图 5 比较了 Dense 0.6B 与总参数 1.6B、激活参数 0.6B 的 MoE。MoE 的训练损失和 GM-100 验证动作误差都更低,说明收益不只是总参数更多,而是稀疏容量分配更有效。不过论文没有给出不同路由策略对真实任务成功率的完整消融,因此不能把全部提升都归因于 MoE。
4、双查询蒸馏让 VLA 学会看当前、想未来
4.1、当前查询与未来查询
模型在图像和文本 token 后附加两组可学习查询 [ Q t , Q t + T ] [Q_t,Q_{t+T}] [Qt,Qt+T]。 Q t Q_t Qt 对齐当前观测, Q t + T Q_{t+T} Qt+T 对齐一个动作块之后的未来观测。默认动作块长度为 50,数据加载器按每个数据集的 fps 取未来帧,因此 T T T 表示动作块覆盖的真实时间范围,而不是 Flow Matching 内部的去噪时间。
深度蒸馏目标为:
L d e p t h = E [ ∥ P r o j d e p t h ( Q t ) − D t ∥ 1 + ∥ P r o j d e p t h ( Q t + T ) − D t + T ∥ 1 ] \mathcal{L}_{depth}=\mathbb{E}\left[\left\|\mathrm{Proj}_{depth}(Q_t)-D_t\right\|_1+\left\|\mathrm{Proj}_{depth}(Q_{t+T})-D_{t+T}\right\|_1\right] Ldepth=E[ Projdepth(Qt)−Dt 1+ Projdepth(Qt+T)−Dt+T 1]
D t D_t Dt 和 D t + T D_{t+T} Dt+T 是 LingBot-Depth 从当前帧、未来帧提取的深度 token; P r o j d e p t h \mathrm{Proj}_{depth} Projdepth 是带交叉注意力的对齐头。它让当前查询编码几何结构,也让未来查询预测动作执行后的几何状态。
DINO-Video 蒸馏目标为:
L v i d e o = E [ ∥ P r o j v i d e o ( Q t ) − Z t ∥ F 2 + ∥ P r o j v i d e o ( Q t + T ) − Z t + T ∥ F 2 ] \mathcal{L}_{video}=\mathbb{E}\left[\left\|\mathrm{Proj}_{video}(Q_t)-Z_t\right\|_F^2+\left\|\mathrm{Proj}_{video}(Q_{t+T})-Z_{t+T}\right\|_F^2\right] Lvideo=E[∥Projvideo(Qt)−Zt∥F2+∥Projvideo(Qt+T)−Zt+T∥F2]
Z t Z_t Zt 和 Z t + T Z_{t+T} Zt+T 是 DINO-Video 在一次因果前向中得到的当前与未来特征, ∥ ⋅ ∥ F 2 \|\cdot\|_F^2 ∥⋅∥F2 是特征矩阵的平方 Frobenius 范数。DINO-Video 从 DINOv3 初始化,加入块级因果时间注意力与 3D-RoPE,并用 500 万段互联网、第一视角和机器人视频训练。

图 6 展示当前和未来的深度、DINO PCA target 与预测。它证明查询可以恢复教师表征,但论文也明确写道:这些感知结果并不是动作生成的必需输出。更准确的说法是,未来查询参与同一个因果 VLM 上下文并受到未来表征监督,从而塑造动作生成使用的表示;模型没有显式解码未来 RGB 视频。
4.2、训练流
以把花插进花瓶为例,一次训练样本按以下路径运行:
- 数据集读取当前多视角图像、指令、55 维机器人状态、未来 50 步真实动作,以及动作块末端对应的未来图像。
- Qwen3-VL 编码当前图像与指令;当前/未来查询作为额外 token 进入理解专家。
- LingBot-Depth 对当前和未来图像产生几何 target;DINO-Video 对因果视频片段产生当前和未来时序 target。这些 teacher 特征会 detach,不让 VLA 的梯度反向更新 teacher。
- 真实动作 a a a 与高斯噪声 ϵ \epsilon ϵ 按采样时间 τ \tau τ 插值得到 x τ = τ ϵ + ( 1 − τ ) a x_{\tau}=\tau\epsilon+(1-\tau)a xτ=τϵ+(1−τ)a,目标速度为 u τ = ϵ − a u_{\tau}=\epsilon-a uτ=ϵ−a。
- 动作专家接收状态、 x τ x_{\tau} xτ 与去噪时间,预测速度 v θ v_{\theta} vθ;主损失为 v θ v_{\theta} vθ 与 u τ u_{\tau} uτ 的 L2 或 L1 Flow Matching 损失。
- 训练总目标再加入当前/未来深度损失、DINO-Video 特征损失,以及当前 release 配置中可选的 MoE sequence-wise balance loss 和 router z-loss。
要区分两个时间: τ \tau τ 是 Flow Matching 从噪声到动作的生成时间; T T T 是机器人动作块跨度,对应现实中的未来帧。二者没有同一个物理含义。
4.3、推理流
部署时只需要当前多视角 RGB、语言指令和当前本体状态:
- 图像、语言和查询 token 经过理解专家,前缀 KV cache 只计算一次;
- 从形状为批量 × 50 步 × 55 维的高斯噪声动作开始;
- 动作专家利用缓存的视觉语言前缀,循环预测速度场;
- 默认用 10 个 Euler 步从 τ = 1 \tau=1 τ=1 积分到 τ = 0 \tau=0 τ=0;
- 动作反归一化并映射回具体机器人字段,再按执行策略取整段或部分动作。
因此,推理时不输入未来图像、不运行 LingBot-Depth、不运行 DINO-Video,也不要求外部深度相机。官方 README 报告,在 NVIDIA GeForce RTX 4090D、10 步去噪和编译推理下,一次调用约 130 ms;该数字是模型推理调用,不应理解为包含机器人实际执行完整动作块的端到端延迟。
5、源码中的实际落点
5.1、与方法有关的目录
lingbot-vla-v2/
├── configs/
│ ├── robot_configs/ # 原始字段到统一动作空间的映射
│ └── vla/
│ ├── real_robot/real_robot.yaml
│ ├── robotwin/robotwin.yaml
│ └── Training_Config.md
├── lingbotvla/
│ ├── data/vla_data/ # LeRobot 数据读取、未来帧、归一化与 padding
│ ├── models/vla/lingbot_vla/
│ │ ├── configuration_lingbot_vla.py
│ │ ├── modeling_lingbot_vla_v2.py
│ │ ├── qwen3vl_in_vla.py
│ │ └── moe_load_balance.py
│ ├── models/vla/vision_models/ # Depth 与 DINO-Video teacher
│ └── schedulers/flow_match.py
├── tasks/vla/train_lingbotvla.py # 训练入口
├── scripts/open_loop_eval.py # 开环评测
├── deploy/lingbot_vla_v2_policy.py # 真机推理服务
└── experiment/robotwin/ # RoboTwin 部署与评测脚本
5.2、论文模块与代码映射
| 论文概念 | 文件 / 类 / 函数 | 实际作用 |
|---|---|---|
| 完整策略 | modeling_lingbot_vla_v2.py::LingbotVlaV2Policy |
包装 VLM、动作专家与训练/采样接口 |
| Flow Matching | FlowMatchingV2.forward() |
构造加噪动作和速度目标,计算动作损失 |
| 10 步动作生成 | FlowMatchingV2.sample_actions() |
缓存前缀后执行 Euler 去噪循环 |
| 当前/未来查询 | embed_prefix() |
把 alignment query 插入视觉与语言前缀 |
| 深度/视频蒸馏 | depth_emb_forward()、video_emb_forward() |
预测 teacher token 并计算对齐损失 |
| MoE | qwen3vl_in_vla.py 与 ops/robby_moe.py |
将动作专家指定层 FFN 替换为稀疏专家 |
| 负载均衡 | moe_load_balance.py、_moe_losses_and_metrics() |
correction bias、sequence-wise loss 与 z-loss |
| 数据读取 | VLADataset、FeatureTransform |
取当前/未来帧,映射 55 维并归一化 |
| 训练入口 | tasks/vla/train_lingbotvla.py |
构建 teacher、dataloader、优化器和训练循环 |
| 推理入口 | deploy/lingbot_vla_v2_policy.py |
图像预处理、动作采样、反归一化与服务封装 |
模型初始化中,状态和动作都先投影到动作专家隐藏维度;如果 align_params 非空,再初始化 depth/video alignment head。推理函数 sample_actions() 的参数只有 images、img_masks、lang_tokens、lang_masks、state 和可选初始噪声,没有未来图像或 depth target,这从代码层面确认了 teacher 只用于训练。
关键去噪循环可以压缩成:
dt = -1.0 / self.config.num_steps
x_t = noise
time = 1.0
while time >= -dt / 2:
v_t = self.predict_velocity(state, prefix_cache, x_t, time)
x_t += dt * v_t
time += dt
return x_t
输入 x_t 是当前噪声动作块,输出是逐步逼近数据分布的连续动作。视觉语言前缀预先写入 KV cache,因此每个去噪步主要重算状态与动作后缀。
5.3、最小训练与推理入口
官方环境基线是 Python 3.12、PyTorch 2.8.0,安装脚本默认安装 flash-attn==2.8.3。训练前还要准备 Qwen3-VL-4B-Instruct、MoGe-2、LingBot-Depth 与 DINO-Video teacher 权重。
git clone https://github.com/Robbyant/lingbot-vla-v2.git
cd lingbot-vla-v2
bash tools/create_train_env.sh
bash train.sh tasks/vla/train_lingbotvla.py \
./configs/vla/robotwin/robotwin.yaml \
--data.train_path assets/training_data/robotwin.txt \
--data.data_name multi \
--train.output_dir output/
真机策略服务入口为:
export QWEN3VL_PATH=/path/to/Qwen3-VL-4B-Instruct
python -m deploy.lingbot_vla_v2_policy \
--model_path /path/to/post_training_checkpoint \
--use_compile \
--use_length 25 \
--port 8000
这些是官方提供的入口,不等于仅靠命令即可完成复现。完整训练仍需要大规模数据、teacher checkpoint 和多卡资源;真机部署还需要相机字段、状态字段、归一化统计和控制接口与 robot_config 严格匹配。
5.4、论文与当前 release 配置的差异
| 项目 | 论文方法描述 | 当前公开配置 | 复现时的判断 |
|---|---|---|---|
| MoE 均衡 | loss-free correction bias,避免辅助损失干扰主目标 | robotwin.yaml 和 real_robot.yaml 设 bias_update_speed: 0,启用 sequence_wise_loss_coeff: 1e-3 与 router_z_loss_coeff: 1e-4 |
release 后训练示例不是严格的论文 loss-free 默认值 |
| 动作损失 | 消融中 L2 平均成功率优于 L1 | RoboTwin 配置显式使用 L1_fm,真机配置未显式写出,继承默认 fm 即 L2 |
数据集/阶段不同,不能把消融结论机械套用到所有配置 |
| 归一化 | 真机消融中 MeanStd 最好 | RoboTwin 使用 bounds_99_woclip,真机配置使用 MeanStd |
release 按场景选择,并非全局固定 MeanStd |
| future-to-action 隔离 | 论文强调未来表征辅助时序推理 | 当前两个 YAML 均设 block_future_depth_to_action: false;文档示例还出现 true |
以实际 checkpoint 配置为准,公开文档与 YAML 存在选项差异 |
| 预训练数据 | 约 6 万小时数据统计与清洗流程 | 大规模预训练数据没有在仓库中公开 | 代码和权重可用,但无法仅凭仓库重建论文预训练集 |
| Benchmark 脚本 | 论文报告 GM-100 与长程真机结果 | 仓库公开 RoboTwin 评测和通用开环评测;未见完整 GM-100 真机自动评测脚本 | 论文真机结果不能由现有脚本一键复现 |
6、实验结果应该怎样看
6.1、GM-100:总体提升,但任务间波动明显
GM-100 采用 generalist 设置:同一机器人上的 9 个任务混合训练一个策略,而不是每个任务单独训练。指标同时报告进度分和成功率,前者能记录长程任务完成到哪一步,后者要求完整成功。
| 平台 | 模型 | 平均进度分 | 平均成功率 |
|---|---|---|---|
| AgileX Cobot Magic | GR00T N1.7 | 36.3 | 17.8 |
| AgileX Cobot Magic | π 0.5 \pi_{0.5} π0.5 | 59.1 | 32.2 |
| AgileX Cobot Magic | LingBot-VLA 1.0 | 58.2 | 30.0 |
| AgileX Cobot Magic | LingBot-VLA 2.0 | 66.2 | 34.4 |
| Galaxea R1 Pro | GR00T N1.7 | 16.4 | 5.6 |
| Galaxea R1 Pro | π 0.5 \pi_{0.5} π0.5 | 27.4 | 8.9 |
| Galaxea R1 Pro | LingBot-VLA 1.0 | 32.7 | 15.6 |
| Galaxea R1 Pro | LingBot-VLA 2.0 | 34.6 | 15.6 |
LingBot-VLA 2.0 在两种平台的平均进度分最高,但成功率提升较小,并非每个任务都占优。例如 AgileX 的 Block Sorting 成功率为 0,低于 π 0.5 \pi_{0.5} π0.5 的 60;Sort Snacks 也低于对比方法。另一方面,Retrieve Keychain 达到 100/100,Pick Out Toy Bone 也显著提升。更合理的结论是:整体表示与目标导向能力增强,但精细放置、释放和特定本体适配仍是瓶颈。
6.2、长程移动操作:OOD 改变不完全相同

每个任务和设置运行 15 次。冰箱分拣的 OOD 同时扰动机器人初始位置(前后左右约 ± 10 \pm10 ±10 cm)并替换未见物体;灶台清洁的 OOD 主要扰动初始位置,物体和场景结构保持不变。因此两项 OOD 下降不能当作完全相同的泛化难度。
| 本体 / 任务 | 设置 | LingBot-VLA 2.0 进度 / 成功率 | π 0.5 \pi_{0.5} π0.5 进度 / 成功率 |
|---|---|---|---|
| Astribot S1 / 冰箱分拣 | ID | 77.1 / 60.0 | 65.3 / 46.7 |
| Astribot S1 / 冰箱分拣 | OOD | 37.0 / 13.3 | 30.3 / 6.7 |
| Cobot Magic-ARX X5 / 灶台清洁 | ID | 84.3 / 66.7 | 79.9 / 60.0 |
| Cobot Magic-ARX X5 / 灶台清洁 | OOD | 67.5 / 40.0 | 62.5 / 33.3 |
6.3、动作空间消融给出的工程结论

四个 GM-100 真机任务的消融结果给出几条很实用的经验:
- 相对关节动作把平均成功率从 33.7 提高到 55.0,因为它把全局关节位姿回归改成低方差的局部修正;
- EEF 与 joint 的平均成功率接近(56.0 对 55.0),但任务偏好不同。端点轨迹规则或接触主导的任务可能更适合 EEF,需要考虑姿态与可达性的任务可能更适合 joint;
- MeanStd 平均成功率 55.0,高于 MinMax 的 47.5 和未裁剪 Q01-Q99 的 47.4,原因是它保留了更大的有效动态范围;
- L2 平均成功率 55.0,高于 L1 的 46.4,但 Squeeze Ketchup 上 L1 更好,说明重尾、接触丰富动作可能例外。
这些数字来自特定四任务、特定训练设置,只能作为动作表示选择的证据,不能直接推成所有机器人上的统一最优配置。
7、方法价值、局限与工程判断
LingBot-VLA 2.0 最有价值的地方,是把数据清洗、动作接口、模型容量和时空监督放进同一个可训练系统,而不是只强调单点结构创新。对需要同时支持双臂、人形上半身、移动底盘和灵巧手的平台,55 维规范化接口与 token 级 MoE 都有明确工程意义。
另外还要看到四个限制:
- 6 万小时预训练数据未公开,完整预训练难以独立复现;
- GM-100 和长程操作的真机试验规模有限,长程任务每个设置为 15 次;
- 论文将多项改动一起引入,但缺少数据规模、Qwen3-VL 主干、MoE、双查询蒸馏对最终成功率的完整正交消融;
- 55 维 padding 统一了张量格式,却不保证不同本体的动力学语义天然对齐,仍需正确的字段映射、归一化统计与本体数据覆盖。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)