管线指南 · 命令逐字照录

VLA 全流程:采集、微调、部署

视觉-语言-动作(VLA)策略让机器人能跟随语言提示行动。官方管线分三步——遥操作数据采集、Isaac-GR00T N1.7 微调、SONIC 部署。下面所有命令抄自VLA WorkflowVLA Inference教程。

第 1 步 · 采集遥操作演示

用 VR 全身遥操作录制演示。数据导出器把机器人状态、摄像头图像与遥操作动作存成 LeRobot 数据集。完整配置(摄像头服务器、VR 遥操作、录制控制)在Data Collection 教程里。

python gear_sonic/scripts/launch_data_collection.py \
  --camera-host 192.168.123.164 \
  --task-prompt "pick up the cup"

第 2 步 · 用 Isaac-GR00T 微调

Isaac-GR00T 训练管线在你的数据集上微调 GR00T N1.7 基础模型。前置条件:克隆并安装 Isaac-GR00T(uv sync --all-extras)、一台多 GPU 机器(建议 4+ 卡)、训练机器能访问数据集。

git clone https://github.com/NVIDIA/Isaac-GR00T.git
cd Isaac-GR00T
uv sync --all-extras

启动微调:

export NUM_GPUS=4
uv run python \
    gr00t/experiment/launch_finetune.py \
    --base-model-path nvidia/GR00T-N1.7-3B \
    --dataset-path /path/to/your/collected_dataset \
    --embodiment-tag UNITREE_G1_SONIC \
    --modality-config-path gr00t/configs/data/embodiment_configs.py \
    --num-gpus $NUM_GPUS \
    --output-dir /path/to/output \
    --save-total-limit 5 \
    --save-steps 5000 \
    --max-steps 20000 \
    --use-wandb \
    --global-batch-size 32 \
    --color-jitter-params brightness 0.3 contrast 0.4 saturation 0.5 hue 0.08 \
    --dataloader-num-workers 4

关键参数:--max-steps(20k 是个不错的起点)、--global-batch-size(全部 GPU 的总和)、--save-steps(checkpoint 保存间隔)、--use-wandb(训练指标上报 Weights & Biases)。Checkpoint 落在 --output-dir 里(checkpoint-5000 … checkpoint-20000 + config.json + processor_config.json)。

第 3 步 · 部署推理

在 GPU 机器上启动 PolicyServer(从 Isaac-GR00T 仓库):

uv run python gr00t/eval/run_gr00t_server.py \
    --model-path /path/to/output/checkpoint-20000 \
    --embodiment-tag UNITREE_G1_SONIC \
    --device cuda:0 \
    --port 5550

然后从 GR00T-WholeBodyControl 仓库运行推理:

python gear_sonic/scripts/launch_inference.py \
    --policy-host <gpu_machine_ip> \
    --policy-port 5550 \
    --camera-host 192.168.123.164 \
    --prompt "pick up the soda can and place it in the bin"

推理环境用 bash install_scripts/install_inference.sh 安装(会创建 .venv_inference),摄像头服务器作为 systemd 服务运行在机器人上,gear_sonic_deploy 必须编译。低延迟 checkpoint:用 python download_from_hf.py --low-latency 下载部署文件,用低延迟模型前缀与配套观测配置启动 gear_sonic_deploy。SONIC v1.1(机器人航向归一化):用 python download_from_hf.py --sonic-v1-1

VLA 全流程常见问题

SONIC 技术栈里的 VLA 工作流是什么?
它是让机器人按语言指令行动的完整管线,共三步:1) 用 VR 全身遥操作采集遥操作演示,2) 在这份数据上微调 Isaac-GR00T N1.7 基础模型,3) 把微调后的策略部署到 SONIC 控制器上做自主推理。
VLA 推理栈由哪些部分组成?
四个协同部件:Isaac-GR00T PolicyServer(通过 ZMQ 提供动作服务,运行在 GPU 机器上)、VLA 推理客户端(读取摄像头与机器人状态、查询服务器、发布动作)、C++ 部署二进制(执行全身控制),以及摄像头服务器(通过 ZMQ 发布图像,作为 systemd 服务运行在机器人上)。
VLA 应该用哪个 SONIC checkpoint?
当你的 VLA 策略是按机器人航向归一化的 SONIC 控制器训练时,用 sonic_v1_1 checkpoint(它用 10 帧 SMPL/腕部参考视野并带腕部姿态增强,不是低延迟 checkpoint)。追求响应最快的遥操作时,低延迟 checkpoint 配对应的观测配置使用。