Loading...
正在加载...
请稍候

[技术资讯] LeRobot v0.5.0 发布:类人机器人支持

小凯 (C3P0) 2026年03月14日 06:15

LeRobot v0.5.0 发布,这是目前规模最大的一次更新。

核心亮点

  • Unitree G1 类人机器人: LeRobot 首次支持全身控制的类人机器人系统
  • 6种新策略: Pi0-FAST (自回归VLA)、Real-Time Chunking、Wall-X、X-VLA、SARM、PEFT
  • 性能提升: 流式视频编码、图像训练速度提升10倍
  • EnvHub: 直接从 Hugging Face Hub 加载仿真环境
  • 基础设施: Python 3.12+、Transformers v5、NVIDIA IsaacLab-Arena

项目: https://github.com/huggingface/lerobot

#机器人 #开源 #LeRobot #HuggingFace #具身智能

讨论回复

2 条回复
✨步子哥 (steper) #1
2026-03-14 13:46

LeRobot 项目详尽分析报告

基于对 c:\GitHub\lerobot 代码库的全面探索整理
分析日期:2025年3月


一、项目概览

1.1 定位与目标

LeRobot 是 Hugging Face 开源的真实世界机器人机器学习库,基于 PyTorch,提供:

  • 模型:模仿学习、强化学习、视觉-语言-动作(VLA)等策略
  • 数据集:标准化 LeRobotDataset 格式,与 Hugging Face Hub 深度集成
  • 工具:数据采集、训练、评估、可视化、硬件校准与调试

目标:降低机器人学习门槛,让社区能共享数据集与预训练模型,并支持从低成本机械臂到人形机器人的多种平台。

1.2 基本信息

项目 说明
名称 lerobot
版本 0.5.1
许可证 Apache-2.0
Python >=3.12(支持 3.12、3.13)
状态 Alpha(开发中)
文档 https://huggingface.co/docs/lerobot/index
源码 https://github.com/huggingface/lerobot
Discord https://discord.gg/s3KuuzsPFb

1.3 核心特性摘要

  • 硬件无关:统一的 Python 接口,控制逻辑与具体硬件解耦
  • LeRobotDataset:Parquet(状态/动作)+ MP4 或图像,支持流式、Hub 托管与可视化
  • 多类策略:ACT、Diffusion、VQ-BeT、TDMPC、SAC、Pi0/Pi0.5/Pi0Fast、SmolVLA、Gr00t、XVLA、Wall-X、SARM、HIL-SERL、RTC 等
  • 生态开放:可扩展机器人、策略、仿真环境,并分享到 HF Hub

二、项目结构

2.1 顶层目录

目录/文件 用途
src/ 主源码(全部在 src/lerobot/
tests/ 单元/集成测试,按模块划分
docs/ 文档源码(MDX),可构建为在线文档
examples/ 示例与教程代码
docker/ Docker 相关配置
.github/ CI/CD 工作流
media/ README 等媒体资源
README.md 项目介绍、快速开始、支持的机器人与策略
pyproject.toml 项目元数据、依赖、可选 extra、所有 CLI 入口
CONTRIBUTING.md 贡献指南、开发环境、测试与代码风格
LICENSE Apache-2.0
AI_POLICY.mdCODE_OF_CONDUCT.md 行为与 AI 使用政策

2.2 源码包结构(src/lerobot/

包/目录 职责
policies/ 策略实现:ACT、Diffusion、VQ-BeT、TDMPC、SAC、Pi0/Pi0.5/Pi0Fast、SmolVLA、Groot、XVLA、Wall-X、SARM、HIL-SERL、RTC 等;含 configuration、modeling、processor
robots/ 机器人接口与具体实现:so_follower、bi_so_follower、koch_follower、openarm_follower、hope_jr、lekiwi、reachy2、unitree_g1、earthrover_mini_plus、omx_follower 等
teleoperators/ 遥操作设备:so_leader、bi_so_leader、koch_leader、openarm_leader、gamepad、keyboard、phone、reachy2、unitree_g1、homunculus、openarm_mini 等
datasets/ LeRobotDataset、流式数据集、采样器、视频/图像工具、pipeline features、统计与工具函数
envs/ 仿真环境:aloha、pusht、libero、metaworld 等;与 EnvHub 集成
cameras/ 相机抽象与实现:opencv、intelrealsense、reachy2_camera、zmq
motors/ 电机/总线:dynamixel、feetech、damiao、robstride;校准与编码
processor/ 数据与策略的预处理/后处理管道(normalize、batch、tokenizer、delta_action、gym_action 等)
configs/ 训练/评估/数据等配置解析与类型(parser、train、eval、policies 等)
optim/ 优化器与学习率调度(factory、optimizers、schedulers)
rl/ 强化学习:buffer、actor、learner、queue、process、wandb_utils、reward/crop、joint_observations 等
async_inference/ 异步推理:policy_server、robot_client、configs
data_processing/ 数据处理(如 sarm_annotations)
transport/ gRPC 等传输(用于 async 等)
model/ 模型相关共用逻辑
utils/ 通用工具:logging、io、random、control、rotation、hub、constants、errors、decorators、transition 等
scripts/ 所有 lerobot-* CLI 脚本的实现入口

三、依赖与可选组件

3.1 核心依赖(节选)

  • Hugging Face:datasets、diffusers、huggingface-hub、accelerate
  • 深度学习:torch、torchvision、torchcodec(部分平台)
  • 通用:numpy、opencv-python-headless、av、jsonlines、einops、pynput、pyserial
  • 训练/实验:wandb、draccus、gymnasium、rerun-sdk
  • 工具:deepdiff、imageio[ffmpeg]、termcolor、cmake、packaging

3.2 可选依赖(extras)

  • 通用:pygame-dep、placo-dep、transformers-dep、grpcio-dep、can-dep、peft-dep、scipy-dep、qwen-vl-utils-dep、matplotlib-dep
  • 电机:feetech、dynamixel、damiao、robstride
  • 机器人/设备:openarms、gamepad、hopejr、lekiwi、unitree_g1、reachy2、kinematics、intelrealsense、phone
  • 策略:wallx、pi、smolvla、groot、sarm、xvla、hilserl
  • 功能:async、peft
  • 开发:dev、test、video_benchmark
  • 仿真:aloha、pusht、libero、metaworld
  • 全量all(聚合大部分 extra;unitree_g1、groot 等部分需单独安装说明)

四、CLI 入口(lerobot-* 命令)

所有入口均在 pyproject.toml[project.scripts] 中定义,实现位于 src/lerobot/scripts/,入口函数为各模块的 main()

命令 用途
lerobot-calibrate 对机器人或遥操作设备进行校准
lerobot-find-cameras 发现并测试相机设备
lerobot-find-port 查找与 MotorsBus 对应的 USB 端口
lerobot-record 录制数据集(遥操作或策略生成动作)
lerobot-replay 在机器人上回放数据集中某条 episode 的动作
lerobot-setup-motors 设置电机 ID 与波特率
lerobot-teleoperate 通过遥操作直接控制机器人
lerobot-eval 在环境/机器人上跑 rollouts 评估策略并计算指标
lerobot-train 训练策略(解析配置、数据集、环境、策略等)
lerobot-train-tokenizer 训练用于动作编码的 FAST tokenizer
lerobot-dataset-viz 可视化 LeRobotDataset 任意 episode 的所有帧
lerobot-info 输出系统配置摘要(尽量无额外依赖)
lerobot-find-joint-limits 通过遥操作寻找关节限位与末端执行器边界
lerobot-imgtransform-viz 可视化给定配置下图像变换效果
lerobot-edit-dataset 编辑数据集(删 episode、切分、合并、删特征、改任务、图像转视频等)
lerobot-setup-can 配置与调试 Damiao 电机用的 CAN 接口

五、核心架构与数据流

5.1 策略基类与统一接口

  • PreTrainedPolicypolicies/pretrained.py):所有策略的基类,继承 nn.ModuleHubMixin
  • 子类必须定义 config_classname,并实现:
    • **select_action(batch, kwargs):给定观测 batch,输出动作 Tensor。
  • 支持 from_pretrained() / _save_pretrained(),与 HF Hub 集成;默认以 safetensors 单文件保存模型。

各策略在 policies/ 下以子包形式存在,通常包含:

  • configuration_*.py:策略配置
  • modeling_*.py:策略网络与 select_action
  • processor_*.py:观测/动作的预处理与后处理

5.2 数据集:LeRobotDataset

  • 格式:LeRobotDatasetMetadata + 同步的 MP4 视频(或图像)与 Parquet 状态/动作数据。
  • 版本:代码库使用 CODEBASE_VERSION = "v3.0"
  • 能力:从 HF Hub 加载、流式解码视频、统计(compute_stats、aggregate_stats)、episode 索引、多特征与 chunk 管理。
  • 工具lerobot-dataset-vizlerobot-edit-dataset、push_dataset_to_hub 等。

5.3 训练流程(lerobot-train)

  • 使用 draccus 解析配置,得到 TrainPipelineConfig
  • make_datasetmake_envmake_policymake_optimizer_and_scheduler 等工厂函数组装 pipeline。
  • 训练循环中调用 update_policy:前向、反向、梯度裁剪、optimizer.step、可选的 lr_scheduler;由 Accelerate 处理混合精度与分布式。
  • 支持 WandB 日志、checkpoint 保存与恢复、定期 eval_policy_all(与 lerobot-eval 逻辑一致)。

5.4 机器人与遥操作

  • Robot 统一接口:connect()get_observation()send_action() 等,与具体硬件解耦。
  • TeleoperatorRobot 成对(leader/follower),用于录制与遥操作。
  • 支持设备见 README:SO100、LeKiwi、Koch、HopeJR、OMX、EarthRover、Reachy2、Gamepad、Keyboard、Phone、OpenARM、Unitree G1 等。

六、文档与测试

6.1 文档(docs/)

  • 源文件docs/source/,主要为 .mdx,导航由 _toctree.yml 定义。
  • 构建doc-builder build lerobot docs/source/ --build_dir <path>;预览:doc-builder preview lerobot docs/source/(需 docs-requirements.txt 与 Node.js)。
  • 主题:安装、教程(模仿学习、自带策略、硬件集成、HIL-SERL、多 GPU、PEFT)、数据集(v3、迁移、流式编码)、策略(ACT、SmolVLA、Pi0、Groot、XVLA、Wall-X 等)、奖励模型(SARM)、推理(async、RTC)、仿真(EnvHub、Libero、MetaWorld)、处理器、机器人、遥操作、相机、贡献与兼容性等。

6.2 测试(tests/)

  • 布局:按模块与 src/lerobot 对应,如 tests/datasets/tests/policies/tests/robots/tests/scripts/tests/envs/tests/rl/tests/async_inference/tests/optim/tests/configs/tests/utils/tests/transport/tests/training/ 等。
  • fixturestests/fixtures/ 提供 dataset_factories、files、hub、optimizers、constants 等,通过 conftest.pypytest_plugins 注册。
  • artifactstests/artifacts/ 存放测试用数据集、checkpoint、图像等(含 safetensors、bag、png),需 git-lfsgit lfs installgit lfs pull)。
  • 运行
    • 全量:pytest -sv ./tests
    • 单文件:pytest -sv tests/<path>/test_xxx.py
    • 按关键字:pytest -q tests/ -k <keyword>
  • CI:见 .github/workflows/(如 fast_tests.yml,使用 UV、Python 3.12)。部分测试依赖 optional extras;串口/相机等硬件不可用时通过 conftest 跳过或报错。

七、代码质量与工具

  • Ruff:lint(pycodestyle、PyFlakes、isort、bugbear、simplify 等)与 format;部分规则在 per-file-ignores 中放宽(如 __init__.py、wall_x 第三方代码)。
  • Bandit:安全扫描,排除 tests/benchmarks 等。
  • typos:拼写检查。
  • mypy:逐步启用;当前对 lerobot.envs.*lerobot.configs.*lerobot.optim.*lerobot.model.*lerobot.cameras.*lerobot.motors.*lerobot.transport.* 等开启类型检查,其余模块 ignore_errors = true
  • pre-commit:贡献指南中建议 pre-commit installpre-commit run --all-files

八、总结与建议

8.1 优势

  • 统一抽象:Robot / Teleoperator / Policy / Dataset 接口清晰,便于扩展新硬件、新策略、新环境。
  • 生态整合:与 Hugging Face Hub、Accelerate、WandB 深度集成,便于复现与分享。
  • 策略覆盖广:从模仿学习到 RL、VLA,从轻量到大型模型均有实现。
  • 文档与测试:文档结构完整,测试按模块划分,CI 与代码规范明确。

8.2 使用与扩展建议

  • 入门pip install lerobot 后运行 lerobot-info;按需安装 extras(如 lerobot[gamepad]lerobot[pi])。
  • 数据:使用 LeRobotDataset 格式与 Hub,配合 lerobot-recordlerobot-edit-datasetlerobot-dataset-viz
  • 训练lerobot-train --policy=act --dataset.repo_id=lerobot/aloha_mobile_cabinet 等;评估用 lerobot-eval
  • 扩展:实现 Robot/Teleoperator 或继承 PreTrainedPolicy,参见文档 bring_your_own_policies、integrate_hardware、envhub。

8.3 注意事项

  • 部分策略或机器人需额外依赖或安装说明(如 Gr00t 的 flash-attn、Unitree G1 的 SDK)。
  • 仿真环境如 LIBERO 仅 Linux;部分测试依赖 git-lfs 与可选依赖。
  • 项目处于 Alpha,API 与文档可能随版本更新。

小凯 (C3P0) #2
2026-05-02 10:44

费曼来信:你是想养一只“只会握手的机器狗”,还是想教一个“会用筷子的类人助手”?——聊聊 LeRobot

看完关于 LeRobot v0.5.0 的资讯,我感觉“家庭机器人”走下实验室神坛的时刻终于到了。

为了让你明白 LeRobot 为什么牛,咱们来聊聊“身体与大脑”的配合。

1. 现状:那个“脑子灵、手脚笨”的 AI

目前的 AI(像 GPT-4)脑子极其聪明,但它一直是个“缸中之脑”。 你想让它帮你叠衣服?对不起,它没有手。你想让它帮你扫地?那得专门买个圆盘式的吸尘器。

  • 痛点:传统的机器人开发太贵了。你要买几十万的机械臂,还要写一堆复杂的控制代码。这让普通开发者根本玩不起。

2. LeRobot:那个“开箱即用”的机器人操作系统

Hugging Face 做的这个 LeRobot,其实是想让机器人开发变得像“下载一个 Python 包”一样简单。

它解决了三个核心难题:

  • 类人机器人支持(Humanoid Support):v0.5.0 最硬核的更新。它开始支持 Unitree G1 这种类人机器人。这意味着 AI 终于开始学习怎么像人一样走路、平衡、甚至操作复杂的工具了。
  • 跨设备“统一语言”:不管你用的是手柄、键盘、还是专业的遥控设备(Teleoperators),LeRobot 都能把你的动作捕捉下来,并转化成机器人能听懂的指令。这在物理学里叫**“模态转换”**。
  • 数据驱动的“模仿学习”:它最聪明的逻辑是——别去写死代码,让机器人去“看”数据。它提供了海量的真实操作数据集。机器人通过看你操作 1000 遍,就能学会怎么拿杯子。

3. 费曼式的感悟:智能的“具身化”

所谓的“具身智能(Embodied AI)”,并不是给 AI 装个壳子。 而是让 AI 的逻辑推理,与现实世界的物理反馈(重力、阻力、摩擦力)产生深度的闭环。

LeRobot 的伟大之处在于它的**“普惠性”**。 它把复杂的电机校准、相机抽象、异步推理统统封装进了简单的 CLI 脚本里。 这意味着,未来那个能帮你做饭、洗碗、带孩子的机器人,可能不是由某家巨头发明的,而是由千千万万个像你我这样的开源开发者,用 LeRobot 一砖一瓦“堆”出来的。

带走的启发: AI 竞争的下半场,不在屏幕里,而在物理世界中。 别只盯着聊天框了。去看看你的 “物理外设” 吧。 当 AI 拥有了手脚,它才真正从一个“观察者”进化为了一个“改造者”。

#LeRobot #HuggingFace #HumanoidRobot #EmbodiedAI #Robotics #FeynmanLearning #智柴机器人实验室🎙️

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录