当前位置: 首页 > news >正文

LeRobot + LIBERO 机器人仿真评估全流程:模型下载、环境搭建与踩坑指南

LeRobot + LIBERO 机器人仿真评估全流程:模型下载、环境搭建与踩坑指南

在具身智能算法开发中,基于 LIBERO 基准评测 VLA(视觉语言动作)模型是验证模型泛化能力的核心环节。本文以lerobot/pi05_libero_finetuned模型为例,完整记录从 Windows 端下载模型、Ubuntu 服务器编译依赖、数据集准备,到最终跑通全任务评估的完整流程,并逐一解决过程中遇到的 cmake 编译失败、数据集路径缺失、Gated 模型无权限等典型踩坑问题。

一、整体方案说明

国内直接在 Ubuntu 服务器下载 Hugging Face 模型,普遍存在速度慢、断点续传不稳定、网络波动导致下载失败等问题。最稳妥的方案是:Win10 端通过镜像站高速下载模型与数据,再通过 Samba 共享传输到 Ubuntu 服务器,最后在服务器本地加载运行评估,全程可控且容错性更高。

二、Win10 端:下载 pi05_libero_finetuned 模型

2.1 安装 huggingface-cli 工具

确保本机已配置 Python 环境,打开命令行执行以下命令安装官方下载工具:

pipinstall-U"huggingface_hub[cli]"

2.2 配置 HF 国内镜像站(加速必备)

根据你使用的终端类型,执行对应命令配置镜像地址:

  • CMD 命令行:
set HF_ENDPOINT=https://hf-mirror.com
  • PowerShell:
$env:HF_ENDPOINT="https://hf-mirror.com"

2.3 执行模型下载

指定本地保存路径,执行下载命令,工具支持断点续传:

hf download lerobot/pi05_libero_finetuned--local-dirD:\lerobot_models\pi05_libero_finetuned

下载过程示例:

下载完成后,务必检查目录内核心文件是否齐全:

  • config.json模型配置文件
  • 模型权重文件(model.safetensors/pytorch_model.bin等)
  • preprocessor_config.json预处理配置文件

三、Ubuntu 端:编译依赖与环境安装

这一步是环境搭建的踩坑重灾区,hf-egl-probe编译失败、cmake命令找不到、EGL 图形库缺失等问题都集中在此环节。

3.1 安装系统级编译与图形依赖

先安装基础编译工具链和 EGL/OpenGL 开发库,解决无头服务器离线渲染依赖:

sudoapt-getupdatesudoapt-getinstall-y\build-essential\cmake\ninja-build\pkg-config\libegl1-mesa-dev\libgl1-mesa-dev\libgles2-mesa-dev\libx11-dev\libxext-dev\libxrandr-dev\libxinerama-dev\libxcursor-dev\libxi-dev

3.2 安装指定版本 cmake(避免版本不兼容)

如果系统自带 cmake 版本过低,会导致编译校验不通过。可通过 pip 将指定版本 cmake 安装到 conda 虚拟环境内:

conda activate lerobot python-mpipinstall--no-cache-dir"cmake==3.31.6"

3.3 安装 egl_probe 与 lerobot(含 LIBERO 支持)

重点:必须添加--no-build-isolation参数,让构建过程复用当前环境的 cmake,解决隔离环境内找不到 cmake 的问题。

conda activate lerobot# 安装egl_probe渲染依赖python-mpipinstall--no-build-isolation --no-cache-dir"egl_probe==1.0.2"# 安装带LIBERO支持的lerobotpython-mpipinstall--no-build-isolation-e".[libero]"

🚩 踩坑提示:如果直接执行pip install不加参数,会出现经典报错subprocess.CalledProcessError: Command '['cmake', '--version']' returned non-zero exit status 1,本质是 pip 隔离构建环境内无法识别系统/环境内的 cmake。

四、模型文件传输到 Ubuntu

通过 Samba 共享将 Win10 下载好的模型文件夹完整拷贝到 Ubuntu 服务器,例如目标绝对路径:

/home/xxx/pi05_libero_finetuned

对应 Windows 端的网络访问路径:

\\192.168.118.250\xxx\pi05_libero_finetuned

五、LIBERO 数据集下载与目录配置

首次运行评估脚本时,会反复出现datasets path ... does not exist警告,这是因为 LIBERO 数据集未放置到程序默认读取路径。

5.1 官方脚本一键下载

进入 LIBERO 仓库根目录,先配置 HF 镜像,再执行官方下载脚本:

cd/home/linux/git_code/Embodied-Artificial-Intelligence/LIBEROexportHF_ENDPOINT=https://hf-mirror.com python benchmark_scripts/download_libero_datasets.py --use-huggingface

5.2 数据集目录结构校验

下载完成后,确保目录结构与程序期望路径完全一致:

LIBERO/ └── libero/ └── datasets/ ├── libero_spatial/ ├── libero_object/ ├── libero_goal/ └── libero_10/

目录结构验证示例:

六、解决 Gated 模型权限问题

评估过程中加载google/paligemma-3b-pt-224时,即使已经登录 HF 账号,仍会报权限错误。这是因为该模型属于 Gated 仓库,需要单独申请访问权限。

6.1 申请模型访问权限

浏览器打开模型官方页面:

https://huggingface.co/google/paligemma-3b-pt-224

使用你的 Hugging Face 账号登录,阅读并同意协议,提交访问申请。

6.2 确认 Token 权限范围

如果你使用的是细粒度 Token(fine-grained token),需要在 Token 权限设置中开启public gated repositories访问权限。

权限配置完成页面示例:

七、执行 LIBERO 全任务评估

7.1 评估运行命令

使用本地模型绝对路径,运行 LIBERO 四个任务套件的评估:

lerobot-eval\--output_dir=./eval_logs/\--env.type=libero\--env.task=libero_spatial,libero_object,libero_goal,libero_10\--eval.batch_size=1\--eval.n_episodes=10\--policy.path=/home/chenxd/pi05_libero_finetuned\--policy.n_action_steps=10\--env.max_parallel_tasks=1

📌 注意:--policy.path必须填写本地模型的绝对路径,不要继续填写 Hugging Face 仓库名,否则会触发联网下载逻辑。

7.2 运行成功结果

正常运行后会依次构建四个任务套件的仿真环境,最终输出完整评估指标,示例结果如下:

核心指标说明:

  • pc_success:任务成功率,100.0 代表当前测试集全部任务成功完成
  • avg_sum_reward:平均累计奖励
  • eval_ep_s:单回合评估平均耗时

八、常见报错与解决方案汇总

报错信息根本原因对应解决方案
Command '['cmake', '--version']' returned non-zero exit status 1pip 隔离构建环境内找不到可用 cmake安装系统 cmake + 环境内 pip 安装 cmake,编译时添加--no-build-isolation参数
ModuleNotFoundError: No module named 'yaml'缺少 pyyaml 依赖库执行pip install pyyaml
datasets path ... does not existLIBERO 数据集未放到默认读取路径运行官方下载脚本,严格对齐目录结构
Gated 模型 403 无权限paligemma 模型需单独申请访问权限官网提交访问申请,确认 Token 权限范围
模型加载失败、提示文件缺失下载不完整或路径配置错误校验核心配置与权重文件,使用绝对路径加载

九、总结

本文完整复现了 LeRobot + LIBERO 评估环境从 0 到 1 的搭建流程,核心经验可总结为三点:

  1. 国内下载 Hugging Face 模型优先使用hf-mirror.com镜像,Win10 下载后传输到服务器,稳定性远高于服务器直接下载;
  2. EGL 相关包编译必须提前配齐系统图形依赖,并用--no-build-isolation参数确保 cmake 可被构建环境调用;
  3. LIBERO 数据集路径与 Gated 模型权限是两大隐形卡点,提前准备可大幅减少调试耗时。
http://www.jsqmd.com/news/1128650/

相关文章:

  • Mi-Create终极教程:免费打造小米手表专属表盘的完整指南
  • 系统安全核心要素——构建“铜墙铁壁“的系统
  • Zed 新特性:Git面板视图重构,像VS Code看齐了。
  • 编译原理:高级程序语言的定义
  • PyTorch 2.0 自动求导实战:3步构建动态计算图与梯度检查
  • 二极管、三极管、mos管
  • QA-GraphRAG:面向多跳推理的查询自适应即插即用检索框架
  • 为什么顶尖科技公司都在秘密使用这款开源字体系统?Inter字体深度解析
  • 会议复盘小知识:结构化导图梳理会议内容的技巧
  • 附图报价系统设计分析8
  • 202638读书笔记|《商场B1,挤满“白吃白喝”的年轻人》——白吃白喝,热闹背后并非单纯的慷慨,免费的才是最贵的
  • APK安装器:在Windows上无缝安装安卓应用的终极解决方案
  • Appium移动端自动化测试入门:环境搭建、脚本编写与实战指南
  • (免费)使用AD软件,将Gerber文件转pcb文件
  • 【MySQL】索引(索引底层原理/创建/查看/删除主键、普通、联合、前缀、全文索引)
  • 第7篇|退出登录后旧状态还在:把持久化键集中水合和清理
  • Winhance中文版:让Windows系统重获新生的智能优化方案
  • 通知!!2026年孝感中级、初级职称申报即将开始,了解这些申报信息不“踩坑”
  • Python 里的 `‘‘.join(sorted(s))` 到底是什么意思?
  • 鸿蒙物理 108 篇 第六十九篇 五行乘侮制衡修正
  • Biotinyl-Pancreastatin (porcine)
  • Python 实现 移动指定名称的文件夹,保留原始目录结构
  • 接口测试全流程解析:从核心原理到Postman、JMeter、Apifox实战
  • Android 高级工程师面试:Java 多线程与并发 近1年高频追问 22 题
  • 九识智能牵手支付宝,亿级流量为无人配送注入新动力
  • GetQzonehistory:如何一键完整导出QQ空间说说并永久保存青春回忆
  • 2026年AI生图工具实测:Midjourney、可灵、即梦谁更强?
  • Python sort函数参数藏大招!用错它,你的代码直接废了
  • Claude Code auto mode 管理 subagents 的三道安全闸门
  • 鸿蒙物理 108 篇 第六十六篇 土气中和承载定则