TidyBot tidybot

机器人 ⭐⭐⭐☆☆ (3/5) 🧩 软硬件结合 已发布
jimmyyhwu 690 Stars MIT BOM 完整度: /5 教程完整度: /5

项目简介

TidyBot: Personalized Robot Assistance with Large Language Models


TidyBot 是一个结合大型语言模型(LLM)实现个性化机器人辅助的开源项目,由普林斯顿大学等机构的研究团队开发,相关论文发表于 IROS 2023 和 Autonomous Robots 期刊。该项目聚焦于家庭环境中的物品整理任务,核心目标是让机器人能够通过少量用户交互示例,快速学习并泛化个人的收纳偏好——例如有人喜欢把衬衫放抽屉,有人则偏好放在架子上。TidyBot 利用 LLM 的少样本摘要能力,结合语言驱动的规划和视觉感知,从寥寥数次的用户示范中推断出可广泛适用于未来场景的偏好规则。在基准数据集上,该方法对未见过的物品分类准确率达到 91.2%,在真实移动操作平台 TidyBot 上的实际测试中,成功将 85.0% 的物品归位。技术栈方面,项目代码分为服务器端(运行 GPU 工作站)和机器人端(运行移动底盘计算机),服务器负责物体检测(使用 ViLD 环境)和 LLM 推理,机器人端负责底层控制。项目提供了完整的设置指南,支持遥操作和全自动两种模式:遥操作模式下用户可通过点击图像选择路径和操作原语(如抓取、放置、投掷);全自动模式下系统加载预定义的场景和用户偏好文件,自主完成整理任务。此外,项目还包含 3D 打印零件文件和基准数据集代码。TidyBot 适用于家庭服务机器人、个性化辅助系统等场景,解决了传统机器人难以适应个体差异、需要大量编程或示范数据的痛点,为机器人实现真正个性化、可泛化的物理交互提供了高效解决方案。

标签

项目特点

**个性化学习**:通过少量示例学习用户偏好,并泛化到新场景。
**语言驱动**:利用大型语言模型进行任务规划和推理。
**自主与监督模式**:支持完全自主运行和需要人工确认的监督模式。
**模块化设计**:代码库分为服务器端、机器人端、3D打印件和基准测试等模块。
**真实世界部署**:在名为 TidyBot 的移动操作机器人上进行了实际测试。

技术规格

核心算法
物体检测
机器人平台
机械臂
操作系统
环境管理
通信
基准测试准确率
真实世界测试准确率

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
移动机器人底座 1 需具备自主导航能力
Kinova 机械臂 1 用于抓取和放置物体
GPU 工作站 (服务器) 1 运行 LLM 和物体检测模型
移动底座计算机 1 运行机器人控制代码
顶置摄像头 2 用于全局视野和物体检测
机械臂摄像头 1 用于局部视野
各种结构件 若干 见 `stl` 目录
标记物 (Marker) 若干 用于机器人定位

3D 模型

模型名称文件名文件
stl stl

所需工具

工具用途是否必需
3D打印机 打印机器人结构件和适配器 ✅ 是
焊台 焊接电子元件和传感器 ▢ 推荐
螺丝刀套件 组装和固定机器人部件 ✅ 是
Conda Python 环境管理 ✅ 是
GPU 工作站 运行深度学习模型 ✅ 是

能力画像

记忆与知识检索
3/5
逻辑推演
5/5
表达与交流
2/5
感知与观察
4/5
数理与计算
4/5
动手与操作
5/5
狂热与坚持
4/5
创造与创新
5/5

视频

bCkDynX1KmQ

所需技能

🔧 **动手能力**:需要组装和调试移动机器人平台、机械臂、摄像头等硬件设备,并具备 3D 打印和基本机械加工能力。 💻 **编程能力**:需要熟练使用 Python,理解深度学习模型(如 ViLD)和大型语言模型(LLM)的部署与调用,熟悉 Linux 系统和 Conda 环境管理。 ⚡ **电子电路**:需要具备基本的电路知识,用于连接和调试传感器、电机驱动等电子元件。

适用场景

**家庭清洁与整理**:自动拾取并放置散落的物品,如衣物、玩具、书籍等。
**个性化服务机器人**:学习不同用户的偏好,提供定制化的物品整理服务。
**机器人研究平台**:作为研究 LLM 在机器人领域应用的实验平台,特别是少样本学习和个性化任务。
**智能仓储**:在仓库环境中,根据物品类别或用户指令进行分拣和归位。