Skip to main content

What is LeRobot?

LeRobot is a state-of-the-art machine learning library for real-world robotics, built by Hugging Face. It aims to provide models, datasets, and tools for real-world robotics in PyTorch, lowering the barrier to entry so that everyone can contribute to and benefit from shared datasets and pretrained models.
LeRobot democratizes physical AI by providing a hardware-agnostic, Python-native interface that standardizes control across diverse platforms, from low-cost arms (SO-100) to humanoids.

Key Features

Unified Robot Interface

A hardware-agnostic Python interface that standardizes control across diverse platforms, from low-cost arms (SO-100) to humanoids like Reachy2 and Unitree G1.

Standardized Datasets

LeRobotDataset format (Parquet + MP4) hosted on Hugging Face Hub enables efficient storage, streaming, and visualization of massive robotic datasets.

State-of-the-Art Policies

Implementations of cutting-edge policies including ACT, Diffusion, VQ-BeT, HIL-SERL, Pi0, and Vision-Language-Action models like GR00T and SmolVLA.

Comprehensive Ecosystem

Full support for data collection, training, evaluation, and deployment with seamless integration to Hugging Face Hub.

Supported Hardware

LeRobot natively integrates with a wide range of robotic hardware:
  • Robot Arms: SO100, SO101, Koch, OpenARM, OMX
  • Mobile Manipulators: LeKiwi, HopeJR, EarthRover
  • Humanoids: Reachy2, Unitree G1
  • Teleoperation Devices: Gamepads, Keyboards, Phones
The library is designed to be extensible. You can easily implement the Robot interface to utilize LeRobot’s data collection, training, and visualization tools for your own custom robot.

Architecture Overview

LeRobot follows a modular architecture with three main components:

1. Robot Control

The unified Robot class interface decouples control logic from hardware specifics:
from lerobot.robots.myrobot import MyRobot

# Connect to a robot
robot = MyRobot(config=...)
robot.connect()

# Read observation and send action
obs = robot.get_observation()
action = model.select_action(obs)
robot.send_action(action)
Every robot implementation provides:
  • observation_features: Describes the structure of sensor data
  • action_features: Describes the structure of control commands
  • get_observation(): Returns current robot state and sensor readings
  • send_action(): Executes control commands

2. Dataset Management

LeRobotDataset provides a PyTorch-compatible dataset class with:
from lerobot.datasets.lerobot_dataset import LeRobotDataset

# Load a dataset from the Hub
dataset = LeRobotDataset("lerobot/aloha_mobile_cabinet")

# Access data (automatically handles video decoding)
episode_index = 0
print(f"{dataset[episode_index]['action'].shape=}")
  • Efficient Storage: Synchronized MP4 videos for vision + Parquet files for state/action
  • Hub Integration: Explore thousands of datasets on Hugging Face Hub
  • Powerful Tools: Delete episodes, split datasets, add/remove features, and merge multiple datasets

3. Policy Training & Evaluation

LeRobot implements state-of-the-art policies covering:
  • ACT (Action Chunking with Transformers): Fine-grained bimanual manipulation
  • Diffusion Policy: Diffusion models for behavior cloning
  • VQ-BeT: Vector-quantized behavior transformers
Training a policy is simple:
lerobot-train \
  --policy=act \
  --dataset.repo_id=lerobot/aloha_mobile_cabinet

Research Foundation

LeRobot is based on peer-reviewed research published at ICLR 2026:
@inproceedings{cadenelerobot,
  title={LeRobot: An Open-Source Library for End-to-End Robot Learning},
  author={Cadene, Remi and Alibert, Simon and Capuano, Francesco and others},
  booktitle={The Fourteenth International Conference on Learning Representations},
  year={2026},
  url={https://arxiv.org/abs/2602.22818}
}

Use Cases

LeRobot is designed for:
  • Researchers: Experiment with state-of-the-art robot learning algorithms
  • Engineers: Deploy trained policies on real hardware with minimal friction
  • Hobbyists: Build and train robots with low-cost hardware
  • Educators: Teach robot learning with accessible tools and datasets

Next Steps

Installation

Install LeRobot and set up your environment

Quick Start

Get started with your first robot learning example

Hardware Setup

Set up your robot hardware with LeRobot

Dataset Documentation

Learn about the LeRobotDataset format

Community & Support

Built by the LeRobot team at Hugging Face with contributions from the open-source robotics community.

Build docs developers (and LLMs) love