🧪 新教程持续更新中 · 从机械臂到传感器,跟着教程从零搭建
跳到主要内容

7 · 常见问题 ​

上一篇:06 训练与推理

按现象分组。

页面打不开 / 端口被占用 ​

8000 和 8080 是 LeLab 的。多半是上一次直接关终端、而不是用 Ctrl+C 停掉留下的进程。

bash
lelab --stop

这会释放两个端口。启动前想确认:

bash
curl http://localhost:8000/health

有 JSON 返回,说明 8000 上有东西在跑。

--dev 模式页面空白或 404 ​

Vite 在 :8080 提供界面,API 在 :8000。要访问 :8080。--dev 下打开 8000 只有没挂界面的 API。

找不到机械臂 ​

先确认串口对用户可见。Linux 上少一个用户组,表现就是「机械臂不在那儿」:

bash
ls /dev/ttyACM*
groups | grep dialout

没有 dialout:

bash
sudo usermod -aG dialout $USER

然后注销重新登录——用户组在登录时读,新开一个终端不够。

只找到一条臂 ​

插两个独立的 USB 口,不要用集线器;两条臂枚举出来是同一种设备,共用集线器有时呈现不稳定。要认哪个口是哪条臂,拔掉一条看列表里哪一项消失。

每次都要重新校准 ​

校准文件在 ~/.cache/huggingface/lerobot/ 下,也就是 ~/.cache/ 里面。清缓存的工具、容器重启都会带走它。

  • 把 ~/.cache/huggingface/lerobot/calibration/ 备份到可靠的地方。
  • 用容器的话,把这个目录挂载成 volume。

校准好的臂表现不对,但没让你重新校准 ​

检查选中的配置是不是还属于那条物理臂。配置绑定一条臂的零点,互换位置就必须重校。

摄像头画面反了或歪了 ​

在校准页设 Rotation:0°、90°、180°、270°(顺时针)。腕部摄像头装反是 180°。

90° 和 270° 会交换输出尺寸——640 × 480 变成 480 × 640。

训练好的策略什么也不干 ​

按顺序查,前两条比「训练没训好」常见得多:

  1. 摄像头旋转。 确认推理用的和录制时一致。0° 和 180° 图片尺寸相同,没有任何东西会提醒你。
  2. 摄像头绑定。 录制时叫 wrist 的摄像头,现在是不是另一个物理摄像头了。
  3. 初始位置和任务描述。 推理必须从演示时的同一布局开始。
  4. Checkpoint。 换早一点的试。

想拿手机当摄像头 ​

浏览器只在 HTTPS 下给摄像头权限(getUserMedia),localhost 除外,所以手机通过局域网连过来会被拒绝。

配置说明:frontend/HTTPS_SETUP.md。用的是自签证书,浏览器会弹安全警告,接受即可。

默认安装的 LeLab 不带 HTTPS,要用手机摄像头得照那份文档带证书参数手动启动。

数据集打不开,提示「还没下载」 ​

LeRobot 在录制正常结束时才写数据集索引。中途被杀掉的 session 会留下一个看着完整、实际不完整的目录。episode 数据通常还在盘上,缺的是索引。重录一次,并且用停止按钮停。

训练提示缺包 ​

有些策略类型和可选的训练功能需要默认没装的依赖。选中它时 Training 页会问你要不要装,等后台装完再启动任务。训练日志里也会写出缺的是哪个包。

收不到更新提示 ​

这是设计如此:只对从 git 安装的方式检查。可编辑安装(pip install -e .)是工作副本,不检查,用 git pull 更新。

还是不行 ​

收两样东西:浏览器控制台和跑着 lelab 的终端,服务端会把出错的那个请求记下来。这些故障大多和你刚改的东西只隔一步。


回到开头:01 总览 · 教程索引