目录

LeRobot 框架概述

LeRobot 是一个基于 PyTorch 的 Python 库,提供模型、数据集和工具用于真实世界的机器人学习。它旨在通过标准化以下方面来降低机器人机器学习的准入门槛:

该框架支持完整的机器人 ML 流水线:数据采集 → 训练 → 评估 → 部署

系统架构

LeRobot 系统由多个协同工作的层次组成,以实现机器人机器学习工作流。

核心工作流

LeRobot 实现了从数据采集到部署的完整流水线:

关键组件

Robot 接口

Robot 接口提供硬件无关的 API 用于控制物理机器人。所有机器人实现都实现以下核心方法:

方法 用途
connect() 初始化与硬件的连接(电机、摄像头)
getobservation() | 读取当前状态(关节位置、图像等) | | sendaction() 执行动作(关节指令、速度等)

支持的平台包括 SO100、LeKiwi、Reachy2 和 Unitree G1 等。

LeRobotDataset

LeRobotDataset 类实现了机器人数据的标准化格式,结合 Parquet 文件存储状态/动作和 MP4 视频存储视觉信息。

主要特性:

策略模型

LeRobot 在纯 PyTorch 中实现了多种最先进(SoTA)策略架构:

策略遵循模块化处理流水线,其中观测和动作通过处理器进行变换。

LeLab GUI

LeLab 是 LeRobot 的配套 GUI 应用程序,提供无代码界面的机器人操作、遥操作和数据集可视化,无需编写 Python 脚本即可与机器人和数据集交互。

命令行界面

LeRobot 为所有主要工作流提供 CLI 脚本:

命令 用途
lerobot-calibrate 校准机器人电机和零位
lerobot-teleoperate 通过遥操作设备控制机器人
lerobot-record 录制 episodes 以创建数据集
lerobot-replay 在机器人上回放录制的 episodes
lerobot-train 在数据集上训练策略
lerobot-eval 在仿真或真实环境中评估策略
lerobot-info 显示系统和依赖信息

Hugging Face Hub 集成

LeRobot 利用 Hugging Face Hub 进行数据集和模型共享:

相关页面