
LeRobot 实操教程:遥操作录数据、训练策略到仿真评估的完整落地清单【免费下载链接】lerobot LeRobot: Making AI for Robotics more accessible with end-to-end learning项目地址: https://gitcode.com/GitHub_Trending/le/lerobotLeRobot 是 Hugging Face 出品的机器人端到端学习框架,遥操作录数据、策略训练、环境评估、真机部署全链路都有现成 CLI。读完本文你能独立跑通一轮数据→模型→分数的循环,并拿走四张参数速查表。先说结论:全程 4 个环节、5 条核心命令,没有真机也能先跑通前三步。环节一:装好仿真环境,10 分钟完成预期结果:装完后,一条 Python 导入能打印版本号,lerobot-eval --help能列出可选仿真环境。操作步骤:git clone https://gitcode.com/GitHub_Trending/le/lerobot cd lerobot conda create -y -n lerobot python3.12 conda activate lerobot conda install -y ffmpeg -c conda-forge # 视频解码依赖 pip install -e .[aloha,pusht,training] # 两个仿真环境 训练依赖方括号里是可选依赖组,按需组合:依赖组管什么aloha/pusht装对应仿真环境,评估和演示都要用training训练链路依赖,含 wandb(云端看 loss 曲线)dataset数据集读写,被前两者间接带装怎么验证:python -c import lerobot; print(lerobot.__version__) lerobot-eval --help | grep -m 3 env能打印版本、help 里能看到 env 相关选项,就说明环境可用。后面所有命令都在这个 conda 环境里跑。 没有 GPU 也能起步:训练时把设备参数改成--policy.devicecpu,只是小数据集上会慢不少。环节二:不录数据,先用公开数据集出第一个模型预期结果:训练结束后outputs/train/下出现checkpoints/目录,里面按步数存了若干pretrained_model权重;wandb 页面上 loss 曲线整体走低。操作步骤:没有真机、没有自己的数据也完全不影响这一步——直接拿 Hub 上的公开演示数据集开练:lerobot-train \ --dataset.repo_idlerobot/aloha_insertion \ --policy.typeact \ --policy.devicecuda \ --steps20000 \ --output_diroutputs/train/act_insertion \ --job_nameact_insertion \ --wandb.enabletrue参数管什么--dataset.repo_id从哪个数据集抽样本--policy.type模型架构,ACT 对 50 集左右的数据量最友好--steps总训练步数,先跑 2 万步试水--output_dir检查点落盘目录--wandb.enable把 loss 曲线推到云端盯着看选型一句话:动作多模态、抓得精细选 Diffusion(数据要多);数据少、状态观测为主选 TDMPC;新手默认 ACT。源码在 src/lerobot/policies/act/,默认超参一般不用动。怎么验证:ls -d outputs/train/act_insertion/checkpoints/*/pretrained_model能列出一条最新步数的路径就过关,记下来,它是下一环节的输入。环节三:跑仿真评估,读懂三个数预期结果:lerobot-eval跑完若干集,输出目录里生成eval_info.json,打开后重点看三个字段——成功率pc_success(核心判据)、平均奖励avg_sum_reward(完成得稳不稳)、单集耗时eval_ep_s(实时性够不够部署)。操作步骤:lerobot-eval \ --policy.pathoutputs/train/act_insertion/checkpoints/latest/pretrained_model \ --env.typealoha \ --env.taskAlohaInsertion-v0 \ --eval.n_episodes10 \ --eval.batch_size4 \ --policy.devicecuda参数管什么--policy.path上一环节产出的权重路径--env.type--env.task在哪套仿真环境、哪个任务里考它--eval.n_episodes考多少集,集数太少成功率不可信--eval.batch_size并行跑几集,显存不够就调小怎么验证:python -c import json; djson.load(open(outputs/eval/eval_info.json)); print({k: round(v,3) for k,v in d.items() if isinstance(v,(int,float))})分数不达标,优先补数据再谈调参:每集换一种物体初始位姿,泛化直接受益;其次才去动--batch_size和学习率。⚠️ 把失败集的视频翻一遍,缺哪种场景通常一眼可见。环节四:有真机后,录数据并上线部署预期结果:lerobot-record录完,可视化页面里视频帧和关节曲线对得上;lerobot-rollout跑起来后,机械臂自主完成 Grab the cube 这类任务。操作步骤(录制):主臂(leader)用手推,从动臂(follower)跟随,程序同步存下每帧画面、关节角和动作:lerobot-record \ --robot.typeso100_follower \ --robot.port/dev/ttyACM0 \ --robot.cameras{top: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30}} \ --teleop.typeso100_leader \ --dataset.repo_id你的账号/pick_cube \ --dataset.num_episodes50 \ --dataset.single_taskGrab the cube \ --display_datatrue参数管什么--robot.type/--robot.port从动臂型号与串口--teleop.type你手里推的控制设备--dataset.repo_id数据存到哪个数据集 ID--dataset.num_episodes录几集,50 集起步比较稳--dataset.single_task一句话任务描述,训练时的语言条件每集结束程序会提示复位环境,留给你十几秒把物体摆回原位再开始下一集。怎么验证(数据质量自查):lerobot-dataset-viz --repo_id 你的账号/pick_cube页面里抽查几集:视频和动作曲线对不上、动作忽大忽小的集,用lerobot-edit-dataset移除。操作步骤(部署):lerobot-rollout \ --strategy.typebase \ --policy.pathoutputs/train/act_insertion/checkpoints/latest/pretrained_model \ --robot.typeso100_follower \ --robot.port/dev/ttyACM0 \ --taskGrab the cube \ --duration30 \ --display_datatrue参数管什么--policy.path训好的权重路径--robot.type/--robot.port目标真机型号与串口--task语言指令,要和录制时的single_task一致--duration让机器人自主跑多少秒--use_torch_compile卡顿就打开,编译加速推理怎么验证:首跑保留--display_datatrue,在 Rerun 窗口里盯动作曲线,夹爪和关节轨迹平滑就达标。仿真 90% 不等于真机 90%:上线前用lerobot-info核对数据集特征,观测维度和训练数据对不上的话,策略会立刻输出乱动作。常见坑速查现象先查什么装依赖报解析冲突Python 版本必须 3.12,conda 环境要干净训练 loss 不降先看 wandb 曲线是否平台期,再怀疑数据质量评估成功率低翻失败集视频补场景,而不是急着调参真机动作乱观测维度与训练数据不一致,用lerobot-info比对下一步去哪想深入的方向去哪里看各策略的原理与训练配方docs/source/policies.mdx 与 src/lerobot/policies/多卡分布式训练docs/source/multi_gpu_training.mdx用强化学习继续进化策略docs/source/hilserl.mdx 与 src/lerobot/rl/仿真环境选型(LIBERO / Meta-World 等)docs/source/libero.mdx 与 src/lerobot/envs/【免费下载链接】lerobot LeRobot: Making AI for Robotics more accessible with end-to-end learning项目地址: https://gitcode.com/GitHub_Trending/le/lerobot创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考