简体中文 | English
RobiAgent 是一个具身智能体,能够让本体在真实物理环境中完成复杂、长程、需要多模块协同的任务。
作为任务编排与执行框架,RobiAgent 可以从高层目标出发,
- 将任务拆解为一系列可执行技能,
- 分析技能之间的依赖关系,
- 调度不同物理资源,
- 并在执行过程中通过感知反馈、状态共享和闭环调整来推进任务完成。
为了便于开发者快速体验端到端能力,当前版本的 RobiAgent 也提供了一组开箱即用的感知与动作模块,包括 LeRobot 机械臂控制、相机输入和语音输出等。
但是,RobiAgent 并不绑定于特定硬件或交互形式;开发者可以按需接入新的传感器、执行器或外部工具,将其封装为可调度技能,并纳入统一的具身任务流程。
当前版本的 RobiAgent 首先是基于 LeRobot 构建的,
因此你需要先准备对应的 conda 环境(假设其名称为 lerobot;
可以参考这里的现有说明),然后执行:
conda activate lerobot接下来,需要安装 RobiAgent 本身:
pip install -e .多进程是 RobiAgent 的一个重要特性,其实现基于 Redis。 因此,你还需要在系统层面安装并运行 Redis 服务器。
bash install_redis_server.sh # 应该可在多种操作系统上运行
nohup redis-server &通过以下命令找出每个机械臂对应的 USB 端口:
lerobot-find-port记住端口号。然后,使用如下命令校准每个机械臂:
lerobot-calibrate --robot.type=so101_follower --robot.port=<你确认的端口> --robot.id=<你指定的 ID>再通过以下命令找到 RGB 相机(深度相机不用)的 UID(如果需要):
swift utils/list_cams.swift记住UID。
该 demo 展示了一段面向线下导购场景的手机演示流程。 当顾客进入或唤醒系统后,
- RobiAgent 会协调双机械臂与语音模块,先通过人脸追踪,由一只机械臂将手机送到更适合顾客观看的位置和角度,同时通过语音介绍产品卖点;
- 在需要进一步展示功能时,另一只机械臂会在手机屏幕上进行点击、滑动等操作,完成更直观的功能演示。
整个过程体现的是 RobiAgent 将顾客感知、语音讲解、机械臂运动控制与终端交互串联起来的能力。
demo.mp4
视频有声音(语音播报),建议取消静音欣赏。
试试看!
如果是第一次运行,需要先创建必要的配置文件config.yml和.env:
cp config.yml_template config.yml
cp .env_template .env并对它们作必要更改,其中字段含义分别参考 config_intro.md 和 env_intro.md。
随后,试试这个简单示例!
sudo ra demo需要
sudo仅仅是因为,示例中用到的 Intel RealSense 深度相机(辅助操纵演示机械臂决策的那个摄像头)运行需要root权限。