LeRobot v2 与 v3 格式差异
本文讨论的是 LeRobotDataset 格式版本, 不是 lerobot 软件发布版本。两者需要严格区分:
| 类别 | 示例版本 | 含义 |
|---|---|---|
| LeRobot 软件版本 | v0.4.0、v0.5.0 | Hugging Face lerobot 代码库的发布版本 |
| LeRobotDataset 格式版本 | v2.1、v3.0 | 数据集目录结构、元数据组织方式与读取方式的版本 |
截至官方 lerobot v0.5.0 发布,数据格式主线仍为 LeRobotDataset v3.0,未出现新的 v3.1 或新的格式代际。v0.5.0 的数据集相关变化主要集中在录制性能、数据处理工具和编辑能力,不属于格式代际升级。LeRobot v0.4.0 LeRobotDataset v3.0
若需在本地执行 格式转换 或 可视化校验,可使用 LeRobot Studio:打开数据集后选择目标版本(v2.1 或 v3.0)即可导出。
版本差异选择
- 选择
v2.1:适用于依赖旧版目录结构的训练流程,或需要“一个 episode 一个文件”以便人工检查的场景。比如 openpi 的 pi0/pi05 训练目前还只支持v2.1格式。 - 选择
v3.0:适用于大规模数据集、需要降低文件数量、或需要从 Hugging Face Hub 流式读取的场景。
核心差异一览
| 维度 | v2.0 / v2.1 | v3.0 |
|---|---|---|
| 存储方式 | 每个 episode 一个文件 | 多个 episode 合并成少量大文件,靠元数据定位 |
| 表格数据 | data/chunk-XXX/episode_YYYYYY.parquet | data/chunk-XXX/file-YYY.parquet |
| 视频 | videos/chunk-XXX/{key}/episode_YYYYYY.mp4 | videos/{key}/chunk-XXX/file-YYY.mp4 |
| Episode 元数据 | meta/episodes.jsonl | meta/episodes/ 下的分块 Parquet |
| 任务元数据 | meta/tasks.jsonl | 官方文档以 meta/tasks.jsonl 为主;部分工具链也会兼容或补充 meta/tasks.parquet |
| 路径解析 | 用 episode_index 和 chunks_size 推导 | 在 meta/info.json 中配置路径模板,并在 episode 元数据中记录定位信息 |
| 大规模场景 | 文件数量增长快 | 更适合大规模数据和 Hub 流式读取 |
v3 的核心设计是:写入阶段按共享文件组织,读取阶段通过元数据恢复 episode 级视图。