This repository contains the source code for the "Robot Learning: A Tutorial" report. This tutorial covers many of the most pressing aspects in modern robot learning, and provides practice examples using lerobot
, the robot-learning library developed by Hugging Face.
You’re more than welcome to contribute to the next edition of the tutorial! Simply open an issue, tag @fracapuano, and start a discussion about the scope and content you’d like to add. Check out CONTRIBUTING.md for more details 😊 All merged pull requests will receive public acknowledgment in the main body of the tutorial. Items marked with an empty [ ]
in the following Table of Contents are open for community contribution!
- 1.1
lerobot
Dataset- 1.1.1 The dataset class design
- 1.2 Code Example: Batching a (Streaming) Dataset
- 1.3 Code Example: Collecting Data
- 2.1 Explicit and Implicit Models
- 2.2 Different Types of Motion
- 2.3 Example: Planar Manipulation
- 2.3.1 Adding Feedback Loops
- 2.4 Limitations of Dynamics-based Robotics
- 3.1 A (Concise) Introduction to RL
- 3.2 Real-world RL for Robotics
- 3.3 Code Example: Real-world RL
- 3.4 Limitations of RL in Real-World Robotics: Simulators and Reward Design
- 4.1 A (Concise) Introduction to Generative Models
- 4.1.1 Variational Auto-Encoders
- 4.1.2 Diffusion Models
- 4.1.3 Flow Matching
- 4.2 Action Chunking with Transformers
- 4.2.1 Code Example: Training and Using ACT in Practice
- 4.3 Diffusion Policy
- 4.3.1 Code Example: Training and Using Diffusion Policies in Practice
- 4.4 Optimized Inference
- 4.4.1 Code Example: Using Async Inference
- 5.1 Preliminaries: Models and Data
- 5.2 Modern VLAs
- 5.2.1 VLMs for VLAs
- 5.3 PI0
- 5.3.1 Code Example: Using PI0
- 5.4 SmolVLA
- 5.4.1 Code Example: Using SmolVLA
- 5.5 GR00T (1/2)
- 5.5.1 Code Example: Using GR00T
- 5.6 PI05
- 5.6.1 Code Example: Using PI05
- Large-scale datasets
- Open-X
- DROID
- BEHAVIOR
- 6.1 Post training VLAs
- 6.1.1 From Imitation to Refinement
- 6.1.2 EXPO
- 6.2 World Models for robotics
- 6.2.1 Cosmos
- 6.2.2 World Models (1X)
- 6.2.3 Sima and Genie 1
- 7.1 Conclusions
The written content of this book is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
All source code examples in the snippets/
directory are licensed under the MIT License.