LeRobot v0.5.0: Scaling Every Dimension

LeRobot v0.5.0 introduces major upgrades, including support for the Unitree G1 humanoid, new AI policies like Pi0-FAST and Real-Time Chunking, and a significantly faster data pipeline.
With over 200 merged PRs and over 50 new contributors since v0.4.0, LeRobot v0.5.0 is our biggest release yet — expanding in every direction at once. More robots (including our first humanoid), more policies (including the comeback of autoregressive VLAs), faster datasets, simulation environments you can load straight from the Hub, and a modernized codebase running on Python 3.12 and Transformers v5. Whether you're training policies in simulation or deploying them on real hardware, v0.5.0 has something for you.
LeRobot v0.5.0 adds full Unitree G1 humanoid support (whole-body control models), new policies –including Pi0-FAST autoregressive VLAs and Real-Time Chunking for responsive inference–, and streaming video encoding that eliminates wait times between recording episodes. The release also introduces EnvHub for loading simulation environments from the Hugging Face Hub, NVIDIA IsaacLab-Arena integration, and a major codebase modernization with Python 3.12+, Transformers v5, and third-party policy plugins.
- LeRobot v0.5.0: Scaling Every Dimension
LeRobot v0.5.0 dramatically expands the roster of supported hardware — from arms and mobile robots to a full humanoid.
The biggest hardware addition in this release: full Unitree G1 humanoid support. This is LeRobot's first humanoid integration, and it's comprehensive:
Locomotion: Walk, navigate, and move through environments.Manipulation: Perform dexterous object manipulation tasks.Teleoperation: Control the G1 remotely with an intuitive teleoperation interface.Whole-Body Control (WBC): Coordinate locomotion and manipulation simultaneously for complex, real-world tasks.
The G1 integration represents a major step toward general-purpose robotics within LeRobot — moving beyond tabletop arms into full-body embodied AI. Try it out yourself by following the documentation.
We've added support for the OpenArm robot and its companion OpenArm Mini teleoperator. OpenArm is a capable robot arm with full LeRobot integration, and the Mini serves as its natural teleoperation device. Both support bi-manual configurations, enabling dual-arm setups for more complex manipulation tasks. Check it out in the documentation.
The hardware ecosystem keeps growing:
Earth Rover: Our first mobile robot integration, bringing LeRobot to outdoor navigation and ground-level robotics.OMX Robot: A new robot arm with configurable gripper settings and calibration support.SO-100/SO-101 Consolidation: We've unified the SO-100 and SO-101 implementations into a single, cleaner codebase — including bi-manual setups. Less code duplication, easier maintenance, same great robots.
New motor controller support via CAN (Controller Area Network) bus opens the door to higher-performance actuators:
RobStride: A CAN-based motor controller for high-torque applications.Damiao: Another CAN bus motor controller, expanding the range of compatible hardware.
These additions mean LeRobot can now drive a wider variety of professional-grade actuators beyond the existing Dynamixel and Feetech ecosystem.
This release brings six new policies and techniques into LeRobot, pushing the boundaries of what's possible with open-source robot learning.
Pi0-FAST brings autoregressive Vision-Language-Action models to LeRobot with FAST (Frequency-space Action Sequence Tokenization). Unlike the flow-matching approach of Pi0, Pi0-FAST uses an autoregressive action expert (based on Gemma 300M) that generates discretized action tokens, enabling:
FAST tokenization: Actions are tokenized for autoregressive decoding, with a dedicated FAST action tokenizer.Flexible decoding: Configurable temperature and max decoding steps for balancing speed and quality.RTC-compatible: Works with Real-Time Chunking (see next section) for responsive inference.
lerobot-train \
--policy.type=pi0_fast \
--dataset.repo_id=lerobot/aloha_sim_insertion_human \
--policy.device=cuda
Real-Time Chunking is an inference-time technique from Physical Intelligence that makes flow-matching policies dramatically more responsive. Instead of waiting for a full action chunk to finish before replanning, RTC continuously blends new predictions with in-progress actions, producing smoother and more reactive behavior.
RTC is not a standalone policy — it's an enhancement that plugs into existing flow-matching policies (Pi0 family, SmolVLA & Diffusion). Configure it via --policy.rtc_config.enabled=true
.
This is a game-changer for real-world deployment where latency matters. Read the original paper for the technical details and our documentation.
Wall-X is a new VLA policy built on Qwen2.5-VL with flow-matching action prediction. It combines the strong vision-language understanding of Qwen2.5-VL with a flow-matching head for cross-embodiment robotic control.
pip install lerobot[wall_x]
lerobot-train \
--policy.type=wall_x \
--dataset.repo_id=lerobot/aloha_sim_insertion_human
X-VLA brings a Florence2-based VLA to LeRobot. Built on Microsoft's Florence-2 vision-language model, X-VLA offers an alternative backbone for VLA policies, expanding the diversity of foundation models available for robot learning. Check out the training guide for setup instructions and the base model.
pip install lerobot[xvla]
lerobot-train \
--policy.type=xvla \
--dataset.repo_id=lerobot/bimanual-so100-handover-cube
SARM (Stage-Aware Reward Modeling) tackles one of the hardest problems in robot learning: long-horizon tasks. Instead of using a single global linear progress signal over the whole episode, it models progress in a stage-aware manner by predicting both the task stage and the progress within that stage. This makes it much easier to train policies for complex, multi-step manipulation tasks. Start experimenting with it by following the documentation.
You can now fine-tune large VLAs using LoRA (and other PEFT methods) without modifying the core training pipeline. PEFT configuration lives at the policy level, making it straightforward to adapt massive foundation models to your specific robot and task with a fraction of the compute. Learn more reading the documentation.
lerobot-train \
--policy.type=pi0 \
--policy.peft_config.use_peft=true \
--dataset.repo_id=lerobot/aloha_sim_insertion_human
The dataset pipeline gets major performance improvements in this release, making both data collection and training significantly faster.
Previously, recording a dataset meant waiting after each episode for video encoding to finish. No more. With streaming video encoding, frames are encoded in real-time as they're captured — meaning zero wait time between episodes. Just finish one episode and immediately start the next.
Streaming encoding also supports hardware encoder auto-detection, so if your system has a GPU-accelerated video encoder, LeRobot will use it automatically:
dataset = LeRobotDataset.create(
repo_id="my/dataset",
fps=30,
video_backend="auto", # Auto-detect best HW encoder
streaming_encoding=True, # Encode in real-time
)
Streaming encoding performance can vary significantly depending on your hardware and recording setup (number of cameras, resolution, etc.). Make sure to review the streaming video encoding documentation before enabling it.
Under the hood, we've fixed key data access bottlenecks and overhauled image processing:
10x faster image training: Improved image transform support and fixed data access bottlenecks that were silently slowing down training.3x faster encoding: Parallel encoding is now the default across all platforms, with dynamic compression levels that adapt to your dataset type (video vs. image), when not using streaming.Better CPU utilization: More efficient resource usage during recording and dataset creation.
The dataset editing toolkit continues to grow:
Subtask support: Annotate and query subtasks within episodes for hiera
Source: Hugging Face Blog

















