LeRobotDataset:v3.0: Bringing large-scale datasets to lerobot

LeRobotDataset v3.0 introduces a scalable format that packs multiple episodes into single files and supports native streaming, overcoming previous file-system limitations for large-scale robot learning.
TL;DR Today we release LeRobotDataset:v3! In our previous LeRobotDataset:v2 release, we stored one episode per file, hitting file-system limitations when scaling datasets to millions of episodes. LeRobotDataset:v3 packs multiple episodes in a single file, using relational metadata to retrieve information at the individual episode level from multi-episode files. The new format also natively supports accessing datasets in streaming mode, allowing to process large datasets on the fly. We provide a one-liner util to convert all datasets in the LeRobotDataset format to the new format, and are very excited to share this milestone with the community ahead of our next stable release!
LeRobotDataset is a standardized dataset format designed to address the specific needs of robot learning, and it provides unified and convenient access to robotics data across modalities, including sensorimotor readings, multiple camera feeds and teleoperation status. Our dataset format also stores general information regarding the way the data is being collected (metadata), including a textual description of the task being performed, the kind of robot used and measurement details like the frames per second at which both image and robot state streams are sampled.
Within lerobot, the robotics library we are developing at Hugging Face, LeRobotDataset provides a unified interface for working with multi-modal, time-series data, and it seamlessly integrates both with the Hugging Face and Pytorch ecosystems. The dataset format is designed to be easily extensible and customizable, and already supports openly available datasets from a wide range of embodiments—including manipulator platforms such as the SO-100 arms and ALOHA-2 setup, real-world humanoid data, simulation datasets, and even self-driving car data!
Besides scale, this new release of LeRobotDataset also enables support for a streaming functionality, allowing to process batches of data from large datasets on the fly, without having to download prohibitively large collections of data onto disk. You can access and use any dataset in v3.0 in streaming mode by using the dedicated StreamingLeRobotDataset interface!
LeRobotDataset:v3 is going to be a part of the lerobot library starting from lerobot-v0.4.0. A core design choice behind LeRobotDataset is separating the underlying data storage from the user-facing API. Datasets are organized into three main components: Tabular Data (Apache Parquet), Visual Data (MP4), and Metadata (JSON/Parquet). To support datasets with potentially millions of episodes, we merge data from different episodes into the same high-level structure, keeping the pressure on the file system manageable.
Source: Hugging Face Blog
















