Skip to content

Latest commit

 

History

266 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

verl-vla

Ask DeepWiki Documentation Status CI License Python

A unified cloud-edge post-training framework for vision-language-action policies, built on top of verl.

Large VLA models increasingly place inference and fine-tuning on cloud GPU clusters, while simulators, physical robots, and human operators may run on different machines. verl-vla connects these distributed resources into one post-training system, providing a continuous path from human-in-the-loop data collection through supervised fine-tuning, policy evaluation, and reinforcement learning.

Instead of rebuilding the execution stack for every model, environment, or training algorithm, developers compose reusable workflows on top of a shared distributed runtime and environment loop. Maintained recipes provide reproducible starting points that can be adapted to new policies, simulators, and robot platforms.

Documentation · Quick Start · Framework Overview · Changelog

One system for the complete post-training loop

verl-vla architecture

A workflow defines the end-to-end procedure and moves data and checkpoints between stages. A trainer advances the selected optimization algorithm. TrainCluster coordinates the distributed workers that execute model training, rollout, environment interaction, evaluation, recording, and checkpointing. Together, these layers keep orchestration, algorithms, and distributed execution separate while allowing them to share one post-training foundation.

Distributed execution with TrainCluster

TrainCluster organizes resources by role rather than physical location. Actor, rollout, and environment workers can run together on one machine or be placed across multi-node GPU clusters, simulator hosts, and robot-side devices. Workflows use the same high-level operations for training, rollout, evaluation, recording, checkpoint management, and weight synchronization regardless of the deployment topology.

Web-based data collection and human intervention

The environment loop publishes observations and accepts controls through a browser, so the operator's keyboard, gamepad, or XR controller does not need to be attached to the machine running the simulator or robot. The same interaction path supports teleoperation, demonstration recording, autonomous rollout, and human intervention.

This browser-based interaction loop is shared across simulators and physical robots:

Isaac Lab Arena LIBERO Piper
Isaac Lab Arena teleoperation demo LIBERO teleoperation demo Piper teleoperation demo

Human intervention is particularly important when policies are deployed remotely. Cloud inference produces action chunks that the robot executes locally, while inference and network latency make step-by-step action replacement impractical. Instead, an operator can interrupt autonomous execution, provide an arbitrary-length recovery or correction segment, and then return control to the policy. Policy actions and human corrective actions remain part of one continuous recorded trajectory.

Cloud policy inference sends action chunks to a robot, where a human can intervene during inference and network latency

Composable workflows and reproducible recipes

Workflows connect data collection, training, evaluation, and checkpoint lifecycles into complete procedures. Simple workflows reuse the same execution layer for teleoperation, SFT, or evaluation; multi-stage algorithms such as RECAP compose evaluation, trajectory collection, return computation, value training, advantage annotation, and policy updates without introducing a separate training stack. Each maintained recipe combines a verified environment, minimal launcher, configuration, and documentation, with reference results recorded for validated experiments.

Supported integrations

Area Integrations
Models ACT, Gaussian Actor, Pi0.5, and GR00T N1.6
Environments and robots LIBERO, Isaac Lab Arena, and Piper
Training SFT, SAC-style off-policy training, TD3+BC, FPO, DSRL, and RECAP
Human input Keyboard, gamepad, and XR controller

Model adapters preserve upstream-native implementations and Hugging Face checkpoint formats. Environment integrations expose a shared lifecycle and observation-action contract, allowing models, environments, and workflows to evolve independently.

Reproducible recipes

Recipes cover the complete post-training lifecycle from data collection to fine-tuning and reinforcement learning.

Data collection

Environment or robot Recipes
LIBERO Keyboard · Gamepad · XR controller
Isaac Lab Arena XR controller
Piper Keyboard teleoperation and demonstration recording

Fine-tuning

Model Recipes
ACT Official LIBERO Spatial demonstrations · Self-collected LIBERO Spatial demonstrations
Gaussian Actor LIBERO Spatial task 0
Pi0.5 LIBERO Spatial
GR00T N1.6 LIBERO Spatial

Reinforcement learning

Method Recipes
SAC ACT on LIBERO Spatial task 0 · GR00T N1.6 on the Arena GR1 fridge task · GR00T N1.6 on Arena LIBERO
TD3+BC Gaussian Actor on LIBERO Spatial task 0 · Pi0.5 on LIBERO Spatial task 2
FPO Pi0.5 on LIBERO Spatial task 2
DSRL Pi0.5 on LIBERO Spatial tasks 9 and 2 · GR00T N1.6 on all 10 Arena LIBERO Spatial tasks
RECAP Pi0.5 on LIBERO-10 task 8 · GR00T N1.6 on the Arena GR1 fridge task

Support for additional models, environments, training algorithms, and input devices is under active development.

Quick start

The following minimal example lets you quickly experience verl-vla's browser-based teleoperation workflow. Clone the repository, complete the verified environment setup, then activate the local environment and start keyboard teleoperation on the first LIBERO Spatial task:

source .venv/bin/activate

vvla-teleop \
  cluster.env.env_worker.simulator.libero.task_suite_name=libero_spatial \
  cluster.env.env_worker.simulator.libero.task_ids='[0]' \
  cluster.env.env_worker.teleop.devices='[keyboard]'

Open http://localhost:18000 to view the live teleoperation dashboard. If LIBERO is running on another machine, replace localhost with that machine's hostname or IP address.

Follow the keyboard controls shown in the dashboard to operate the robot arm. Press Enter to reset the environment and Ctrl+C in the terminal to stop.

Continue with the full Quick Start to record and replay demonstrations, fine-tune and evaluate an ACT policy, collect optional DAgger intervention data, and improve the policy with a compact, single-batch TD3+BC example. The guide also provides an OSMesa CPU-rendering command for machines without a rendering GPU.

Documentation

Guide What it covers
Quick Start An end-to-end LIBERO workflow from teleoperation to training and evaluation
Framework Overview Architecture, workflows, trainers, TrainCluster, integrations, and resource configuration
Data Collection Environment installation and device-specific teleoperation, recording, and intervention examples
Fine-Tuning Reproducible supervised fine-tuning workflows
Reinforcement Learning Reinforcement learning workflows and examples
Troubleshooting Guidance for diagnosing simulator and distributed execution problems

Contributing

We warmly welcome contributions. Valuable improvements of any kind, as well as meaningful and reproducible experiments, can help more people bring embodied models into real-world applications. If you encounter a problem or have an idea for a new model, environment, device, training workflow, or experiment, please open a GitHub issue. See CONTRIBUTING.md for contribution guidelines.

Acknowledgements

verl-vla is built on verl, extending its distributed training infrastructure for robotics and VLA post-training. We sincerely thank the verl team for their foundational work and continued support for this project.

We are grateful to LeRobot, SimpleVLA-RL, RLinf, DSRL, Giga Models, OpenPI, and Evo-RL for the ideas, implementations, and open-source foundations that helped shape this project. In particular, verl-vla's user-facing data and device APIs are organized with reference to LeRobot's elegant API design.

We owe special thanks to the Isaac Lab Arena and NVIDIA Isaac Lab projects and teams, whose substantial contributions and close support have been instrumental to verl-vla.

License

verl-vla is licensed under the Apache License 2.0.

About

A unified VLA post-training framework for human-in-the-loop data collection, fine-tuning, and reinforcement learning.

Topics

Resources

Contributing

Stars

79 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages