这是机器人界的 Llama?
靠 100 条轨迹数据,在 Mac 上训练几个小时,就能拥有一个可以抓取乐高积木的机械臂,这是 HuggingFace 机器人科学家 Remi Cadene 晒出的一个实例。机器人的门槛可能并没有想象中那么高。
Remi Cadene 之前是特斯拉人形机器人 Optimus(擎天柱)项目的成员,3 月份被挖去 HuggingFace,领导一个新的开源机器人项目 ——LeRobot,当时引发了一些轰动。
LeRobot 基于有史以来最大规模的众包机器人数据集,它的代码库堪称机器人领域的「Transformers」。Cadene 在 X 上表示:「人工智能发展的下一步是将其应用于我们的物理世界。因此,我们正在推动社区共同努力构建 AI 机器人,这对所有人开放!」
如今,Cadene 和他的新同事正在兑现这一承诺。前段时间,他们发布了 DIY 机器人的深入教程,从硬件 DIY 手册到 Jupyter 笔记本应有尽有。
教程链接:https://github.com/huggingface/lerobot/blob/main/examples/7_get_started_with_real_robot.md
youtube 上还有大量的视频教程可供参考:
视频链接:https://www.youtube.com/@HuggingFace/videos
可以说,只要按照教程操作,你在 Mac 或 PC 上训练几个小时,也能拥有一个可以抓取乐高积木的机械臂。
或者,让它给你叠衣服:
具体来说,这个教程主要解答了以下问题:
1、如何订购和组装你的机器人;
2、如何连接、配置和校准你的机器人;
3、如何记录和可视化你的数据集;
4、如何使用你的数据来训练策略并准备评估;
5、如何评估你的策略并可视化结果。
该教程主要基于一种开源、价格友好的机器人套件 Koch v1.1 编写,不过也可以通过改变配置轻松适应各种类型的机器人。
Koch v1.1 由一个主导臂和一个从动臂组成,每个臂有 6 个电机。它可以和一个或多个摄像头一起工作来记录场景,这些摄像头被用作机器人的视觉传感器。在数据采集阶段,你将通过移动主导臂来控制从动臂。这个过程被称为「遥操作」。这种技术用于收集机器人轨迹。之后,你将训练一个神经网络来模仿这些轨迹,并部署网络以使你的机器人能够自主操作。
订购、组装你的 Koch v1.1
第一步是采购零件和组装,这步有一个 Koch v1.1 Github 页面可以参考。
Github 链接:https://github.com/huggingface/lerobot/blob/main/examples/7_get_started_with_real_robot.md
这个页面上包含一个详细的零件采购清单(作者表示,目前他们只找到了美国、欧盟和英国的购买链接,如果读者可以找到中国、印度等其他国家的购买链接,欢迎补充进去):
主导臂零件采购参考清单。
从动臂零件采购参考清单。
有些零件可能需要 3D 打印,该页面也给出了详细的操作指南。
在零件全部到位后,你可以按照以下视频的指引进行安装。
视频链接:https://www.youtube.com/watch?v=8nQIg9BwwTk
组装完的两个机械臂长这样:
接下来,使用 5V 电源为主导臂供电,使用 12V 电源为从动臂供电。此外,使用 USB-C 电缆将每个臂连入计算机。
配置电机,校准机械臂,远程操控你的 Koch v1.1
Koch v1.1 的配置可以参考以下视频:
视频链接:https://www.youtube.com/watch?v=U78QQ9wCdpY
校准则参考另一个视频:
视频链接:https://www.youtube.com/watch?v=8drnU9uRY24
Github 页面也介绍了 Koch v1.1 所需的附加依赖项的安装以及机械臂的连接、校准方法。控制部分则分为以下步骤介绍:
1、使用 DynamixelMotorsBus 控制电机;
2、使用 DynamixelMotorsBus 远程操作 Koch v1.1;
3、使用 OpenCVCamera 添加相机;
4、使用 koch. yaml 和 teleoperate 函数
每部分都有详细的说明和代码可以参考。
记录你的数据集并将其可视化
这一步旨在录制你的第一个训练集。作者建议从简单的动作开始来验证你的设置,例如在五个位置抓取物体,并为每个位置记录 10 条轨迹。
这一步同样有视频可以参考:
视频地址:https://www.youtube.com/watch?v=n_Ljp_xuFEM
作者表示,你还可以使用以下自定义工具在本地或在线可视化任何数据集:
工具地址:https://huggingface.co/spaces/cadene/visualize_dataset_train
Github 教程涉及以下内容:
1、使用 koch. yaml 和 record 函数;
2、对于记录数据集的建议;
3、可视化所有 episode;
4、使用 replay 函数在你的机器人上 replay episode。
用你的数据训练一个策略
这部分主要介绍了如何训练神经网络来控制机器人。主要步骤如下:
1、使用训练脚本;
2、将策略检查点上传到 hub。
值得庆幸的是,策略的训练不需要特别昂贵的设备,在 PC 或 Mac 上跑几个小时就能训练出来。而且无需模拟。
评估策略
在评估部分,作者也给出了完整的视频教程:
视频地址:https://www.youtube.com/watch?v=Il3Kt8vqpI8
作者表示,这个项目的精妙之处在于,如果每个人都能记录下自己的数据集并在 hub 上共享,那么大家都将能够训练出具有无与伦比的感知世界以及采取行动能力的 AI!这项新技术将推动下一次社会和工业革命。
目前,LeRobt 的开源已经产生了一定的影响力。
Cadene 透露,他们正在开发一款更实惠的机器人。这款机器人不需要 3D 打印,总共花费 150 美元(2 个机械臂)名叫 Moss V1。
此外,他们还将开源一款更强大的机器人,这个机器人可以使用 5 个手指的手作为末端执行器。
他相信开源社区的力量可以推动机器人领域快速发展。
参考链接:https://x.com/RemiCadene/status/1825470242815901828