跳到主要内容

模型训练

完成 数据准备 后,选择一种模型训练即可。各模型使用独立环境和配置,不要混用双臂与全身布局。环境安装、权重下载及其他模型的完整命令见 LETools 全身 VLA 教程。

1. 选择模型​

模型数据与配置要点
LingBot-VLA v2全身机器人配置为 configs/robot_configs/roban_wholebody.yaml,使用绝对动作,chunk 为 50 步
OpenPI使用 pi05_roban_wholebody 训练配置,action_dim 不小于 32;推理的 policy_config_name 与训练名称一致
Isaac GR00T N1.7先将 LeRobot v3 转成 v2;将全身 modality 模板复制到数据集 meta/modality.json,使用 roban_wholebody.py,chunk 为 40 步

本页以 LingBot-VLA v2 为例,后续 推理部署 使用同一模型说明。

2. 修改训练配置​

进入 LeTools-Learning 的 kuavo_model/external_models/lingbot-vla-v2 目录,编辑 configs/vla/roban_wholebody/roban_wholebody.yaml:

  • 设置基础模型 model.model_path、分词器 model.tokenizer_path,以及 depth / DINO 权重路径。
  • 将 data.train_path 指向转换后的数据集,train.output_dir 指向本次训练输出目录。
  • 使用全身机器人配置,保持 chunk_size: 50;当前各段 subtract_state: false,按绝对动作训练。

3. 计算统计并训练​

先计算归一化统计。下例按单卡统计设置,数据路径需替换为实际位置:

CUDA_VISIBLE_DEVICES=0 bash train.sh scripts/compute_norm_stats.py \
./configs/vla/roban_wholebody/roban_wholebody.yaml \
--data.data_name roban_wholebody \
--data.train_path /path/to/roban_wholebody_lerobot \
--data.robot_config_root ./configs/robot_configs \
--data.norm_path assets/norm_stats/roban_wholebody.json \
--data.data_ratio_for_norm_compute 1 \
--train.global_batch_size 1 \
--data.num_workers 0

再启动训练:

bash train.sh tasks/vla/train_lingbotvla.py \
./configs/vla/roban_wholebody/roban_wholebody.yaml \
--data.train_path /path/to/roban_wholebody_lerobot \
--data.norm_stats_file assets/norm_stats/roban_wholebody.json

4. 保留推理产物​

文件用途
所选训练步的 hf_ckpt/推理模型权重
输出根目录的 lingbotvla_cli.yaml训练 YAML 与命令行参数的完整快照
roban_wholebody.json本次数据集的归一化统计
全身机器人配置及基础模型路径与训练一致的动作布局和基础模型

推理必须使用本次训练的快照和匹配的统计文件,不用默认 YAML 替代训练快照。

下一步:通信准备。