← 返回博客
LoongForge具身智能VLAWAM发布

LoongForge-Embodied 正式发布:面向具身模型的高性能训练子系统

2026-07-24 · LoongForge 团队

今天,我们在 LoongForge 中正式发布 LoongForge-Embodied——一个专为 VLA(视觉-语言-动作)WAM(世界-动作模型) 打造的 torch-native 训练子系统。它一次覆盖 Pi0.5、GR00T N1.6、X-VLA、FastWAM、LingBot-VA、Cosmos3、DreamZero 等主流具身模型,并在同等硬件下相对各模型官方实现取得 1.6× ~ 2.67× 的训练加速。

📚 GitHub:https://github.com/baidu-baige/LoongForge/tree/master/loongforge/embodied

1. 它是什么:一个 torch-native 的具身训练子系统

LoongForge 是一套统一的训练框架,覆盖 LLM / VLM / Diffusion / Embodied。其中 LLM / VLM / Diffusion 构建在 Megatron-LM 之上,面向大规模、模型并行的预训练与 SFT;而具身模型有着截然不同的形态,我们为它单独构建了一套子系统。

原因在于,具身模型与典型大模型的差别是本质性的:它参数量小得多(通常在 10B 以内),一个典型 VLA 往往就是一个 VLM 叠加一个动作头。这个规模并不需要为超大模型准备的 TP / PP / EP 模型并行——硬套只会徒增复杂度与开销。因此 LoongForge-Embodied 直接构建在原生 PyTorch 的 DDP / FSDP 之上,聚焦于中小规模、数据并行场景下的训练效率与模型接入体验。

两套栈共享同一个代码仓库、发布流程与工具链,但不共享 Megatron 核心引擎,也不共享 args / parser / core,从而各自独立演进:

维度 LoongForge 核心(LLM / VLM / Diffusion) LoongForge-Embodied
计算 / 分布式 Megatron-LM —— TP / PP / EP / CP / FSDP torch-native DDP / FSDP
负载特征 大规模、模型并行的预训练 / SFT 中小规模、数据并行的 SFT
模型规模 数十亿至数千亿参数 通常 10B 以内

2. 支持的模型:主流 VLA 与 WAM 一次到位

首个版本即覆盖主流的 VLA 与 WAM 模型,且接入方式统一:

类别 模型
Pi pi0.5
GR00T groot_n1_6、groot_n1_7
XVLA xvla
FastWAM fastwam
LingBot-VA(WAM) lingbot_va
Cosmos3 cosmos3_nano
DreamZero 系列变体(Wan2.1 14B / Wan2.2 5B,LoRA 与全量微调,覆盖 DROID / LIBERO / AgiBot / YAM 等数据集)

全量微调是标准能力,数据侧支持 LeRobot / HDF5 等多种格式(各模型支持的格式不尽相同);部分模型(如 DreamZero)另提供 LoRA 变体。

3. 性能:同等硬件下的实测加速

以下为 LoongForge-Embodied 在与各模型官方实现相同硬件配置下的实测加速:

模型 类型 对比基线 加速比 测量版本
Pi0.5 VLA OpenPI 2.23× main · 2026-07
GR00T N1.6 VLA LeRobot 2.31× main · 2026-07
X-VLA VLA X-VLA 1.6× main · 2026-07
DreamZero(DROID Wan2.2-5B 全量) WAM DreamZero 2.67× main · 2026-07
LingBot VA WAM LingBot-VA 1.80× main · 2026-07

这份加速横跨 VLA 与 WAM 两大类、多个主流实现,而不是只在单个模型上成立。

上述数字反映测量时各基线与 LoongForge 版本的表现(见"测量版本"列),随实现演进可能变化;具体加速幅度也因模型、数据与配置而异。

4. 架构设计:公共能力共享,模型差异下沉

这套子系统的设计哲学可以概括为一句话:共享公共能力,下沉模型差异——公共层做深,模型层做薄,新增一个模型无需改动训练主循环。

① 模型层(model/)—— 一个模型一个目录。 每个模型通过 @register_model 注册到统一入口:modeling_<name>.py 负责组网 / 前向 / 损失,model_configuration_<name>.py 是架构超参数据类。对上层暴露统一接口,接入新模型不触碰训练循环。

② 数据流水线(data/)—— 公共后端 + 每模型差异。 数据集读取后端(lerobot / hdf5 / dummy)、有状态的分布式采样器、可组合的 transform 框架统一沉淀为公共能力;模型特有的数据读取(如 fastwam 的多帧几何)、动作 / 图像变换、batch 拼装下沉到 datasets/<name>/;每个模型用 DataConfig 声明图像尺寸、动作维度、归一化统计等。

③ 三层配置解析(train/parser.py)—— 冻结为不可变对象。 YAML model: 段 → ModelConfig、YAML data: 段 → DataConfig、命令行 → TrainingArgs--model-nameconfig_map.py 路由到对应 YAML 与类型,命令行还可用 dotlist 覆盖字段(如 model.action_horizon=64),最终统一冻结为全局单例。

④ 分布式训练器(train/trainers/distributed/)—— 策略灵活。 标准 SFT 直接用 FinetuneTrainer,多流、CUDA Graph 等特殊范式继承 BaseTrainer 并在 trainer_builder.py 注册,通过 --trainer-type 选择;分布式则可在 ddp(数据并行)、ddp + --zero-optimizer(ZeRO Stage-1)、fsdp(全分片)、hsdp(混合分片)之间按需切换,贴合具身模型的规模与显存特征。BaseTrainer 还把优化器 / LR 调度、梯度裁剪与 NaN 清理、checkpoint 续训、确定性控制等收敛到公共层,让每个模型复用同一套实现。

新增一个模型只需 5 步:① 加 model/<name>/ 的组网与配置并 @register_model;② 加 data/datasets/<name>/(DataConfig + transform + collator);③ 在 configs/models/embodied/ 加 YAML 并在 config_map.py 登记;④ 范式不同则继承 BaseTrainer,否则复用 FinetuneTrainer;⑤ 在 examples/ 加启动脚本。

5. 快速开始

训练通过 torchrun 启动 loongforge/embodied/train.py

export LOONGFORGE_PATH=/workspace/LoongForge

PYTHONPATH=$LOONGFORGE_PATH:$PYTHONPATH \
  torchrun --nproc_per_node 8 --nnodes 1 \
    $LOONGFORGE_PATH/loongforge/embodied/train.py \
    --model-name pi05 \
    --trainer-type FinetuneTrainer \
    --dataset-format lerobot_datasets \
    --distributed-strategy fsdp \
    --train-iters 30000 \
    ...

不同模型在数据格式、处理流程、性能优化配置上各有差异,可直接运行的命令因模型而异。开箱即用的示例脚本见 examples/embodied/

bash examples/embodied/pi05/run_pi05_fsdp_finetune.sh        # 另有 ddp / ddp_zero1 变体
bash examples/embodied/groot_n1_6/run_groot_n1_6_ddp_finetune.sh

6. 评测:离线 benchmark,进程解耦

训练之外,LoongForge-Embodied 内置一套离线评测模块,覆盖 LIBERO / CALVIN / SimplerEnv / RoboTwin / ManiSkill。它将 benchmark 客户端与模型策略服务器拆分为独立进程,通过 WebSocket / msgpack-numpy 的 RPC 协议连接,以 YAML 作为唯一用户入口:

cd /path/to/LoongForge
examples/embodied/pi05/eval/run_libero_eval.sh

模型侧只需实现统一的 predict_action 接口,通用策略层 GenericPredictActionPolicy 负责图像视图选择、动作 shape 校验、chunk 缓存、延迟统计与归一化统计加载;接入新模型只需在 eval/factories/ 下新增一个轻量工厂,无需改动服务器主流程。

评测模块仍在持续开发中,后续会有更多 benchmark 与能力加入。

7. 写在最后

LoongForge-Embodied 的发布,标志着 LoongForge 面向具身模型的训练能力,从此前散落在主框架中的 VLA 支持,正式沉淀为一个独立、解耦的子系统:主流 VLA 与 WAM 一次到位、接入统一,同时在同等硬件下相对官方实现带来 1.6× ~ 2.67× 的训练加速。

我们相信,具身模型的研发效率,取决于能否用最贴合其形态的基础设施去训练它。欢迎试用,也欢迎通过 GitHub Issue、微信或 Slack 加入社区,一起把它打磨得更好。

← 上一篇:GR00T N1.6 训练加速 所有文章 →