UniAct:清华团队突破!跨平台机器人通用模型,仅需50条数据就能快速适配新环境

本文涉及的产品
图像搜索,任选一个服务类型 1个月
简介: UniAct 是由清华、商汤、北大、上海AI Lab联合推出的具身基础模型框架,旨在解决不同机器人之间的行为异构性问题,通过学习通用行为实现跨平台控制。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 丰富的 AI 工具库 -> 每日更新 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦


🚀 "机器人开发者必看!清华黑科技打破行业瓶颈:1个模型控制所有机器人类型"

大家好,我是蚝油菜花。当同行还在为不同机器人重复开发代码时,清华团队已经用AI统一了机器人行为范式!

你是否经历过这些崩溃瞬间:

  • 🤖 工业机械臂和服务机器人的控制逻辑天差地别
  • ⏳ 适配新机型要重新标注上千条示教数据
  • 💻 14亿参数的大模型跑起来像老牛拉破车...

今天带来的 UniAct 具身智能框架,正在引发机器人开发范式革命!这个由清华、商汤、北大联合打造的开源项目,通过三大创新点重构行业规则:

  • 原子行为统一编码:把"移动""抓取"等基础动作转化为跨平台通用指令
  • 轻量级高性能架构:0.5亿参数碾压14亿级模型,推理速度提升300%
  • 50条数据快速适配:新机型调试从数月缩短到一杯咖啡的时间

已有开发者用它同时控制机械臂和四足机器人完成协同作业,接下来我们将详解如何用开源版本搭建你的跨平台机器人帝国!

🚀 快速阅读

UniAct 是一个新型的具身基础模型框架,旨在解决不同机器人之间的行为异构性问题。

  1. 核心功能:通过通用行为空间实现跨平台控制,支持快速适应新环境和机器人。
  2. 技术原理:基于向量量化构建通用动作空间,结合视觉语言模型提取通用行为,并通过异质解码器实现跨平台控制。

UniAct 是什么

UniAct

UniAct 是由清华、商汤、北大、上海AI Lab联合推出的具身基础模型框架,旨在解决不同机器人之间的行为异构性问题。通过学习通用行为,UniAct 能够捕捉不同机器人共享的原子行为特征,消除因物理形态和控制接口差异导致的行为异构性。

UniAct 的架构包括通用行为提取器、通用行为空间和异构解码器。通用行为提取器基于视觉语言模型,通过观察和任务目标提取通用行为;通用行为空间以向量量化码本形式实现,每个向量代表一种原子行为;异构解码器将通用行为翻译为特定机器人的控制信号。

UniAct 的主要功能

  • 通用动作编码:UniAct 将不同机器人的原子行为(如“移动到目标位置”或“避开障碍物”)通过向量量化形成一个通用的 codebook,每个 token 代表一种可跨平台共享的通用技能。
  • 轻量化架构与高效性能:UniAct-0.5B 模型仅需 0.5 亿参数,在真实与模拟环境的任务测试中,表现已经超过了参数达到 14 亿的 OpenVLA 模型。
  • 快速适应新环境和机器人:UniAct 仅需 50 条专用示教数据即可完成模型在新环境中的微调,能快速适应新机器人和控制接口。
  • 跨领域数据利用:UniAct 通过通用行为空间,能更好地利用跨领域的数据进行训练,在不同机器人和环境中实现更高效的泛化。
  • 一致的行为模式:在不同的部署场景和机器人类型上,同一个通用动作可以表现出一致的行为模式。

UniAct 的技术原理

  • 通用动作空间(Universal Action Space):UniAct 通过向量量化(Vector Quantization)构建了一个离散的通用动作空间。这个空间被设计为一个向量化的码本(codebook),每个向量嵌入代表一种通用的原子行为。
  • 通用动作提取器(Universal Action Extractor):UniAct 基于视觉语言模型(VLM)的通用动作提取器来识别和提取通用动作。提取器在给定观察结果和任务目标的情况下,输出选择通用动作的概率。
  • 异质解码器(Heterogeneous Decoders):为了将通用动作翻译为特定机器人的可执行命令,UniAct 引入了异质解码器。这些解码器针对不同的机器人平台进行设计,能够根据机器人的具体特征将通用动作转换为具体的控制信号。
  • 轻量化架构与高效训练:UniAct 采用了轻量化的模型架构,即使在低参数设置下也能保持良好的性能。UniAct 通过行为克隆损失进行训练,并根据动作标签的性质选择合适的损失函数。

如何运行 UniAct

1. 安装依赖

git clone https://github.com/2toinf/UniAct-Preview.git
cd UniAct-Preview
pip install -r requirements.txt
AI 代码解读

2. 加载模型

首先从 Model Zoo 下载预训练的 UniAct 模型。

import models.UniAct_V1
from timm.models import create_model
uniact_model = create_model("UniAct_05B_CodeBook_256_V1")

# 加载预训练的通用动作提取器 / 视觉骨干 / 码本
uniact_model.load_state_dict(torch.load("model path here"), strict=False)

# 加载特定机器人的解码器
uniact_model.load_state_dict(torch.load("decoder path here"), strict=False)
AI 代码解读

3. 准备输入

from datasets.utils import LLAVAOV_PREPROCESSOR, R18_PREPROCESSOR
from PIL import Image

proprios = None # 默认禁用 proprios,用于 ACT 解码器(需要归一化)
language_instruction = "your language instruction here"
image_list = ["image-view1 path here", "image-view2 path here"]
img_np = []
img_tensor = []
for image in image_list:
    with Image.open(image) as img: 
        img = img.convert('RGB')
    img_np.append(np.asarray(img))
    img_tensor.append(R18_PREPROCESSOR(img))

img_np = np.stack(img_np),
img_tensor = torch.stack(img_tensor),

text = [LLAVAOV_PREPROCESSOR.apply_chat_template([
            {
   
                "role": "user",
                "content": [
                    {
   "type": "video"},
                    {
   "type": "text", "text":  language_instruction},
                ]
            }], add_generation_prompt=True)]

video = [np.expand_dims(img_np[0], axis=0)] # 仅使用主视图进行提取!
inputs = LLAVAOV_PREPROCESSOR(videos=video, text=text, return_tensors="pt", padding=True)

inputs = {
   'inputs': inputs.to('cuda', torch.bfloat16),
        'images': img_tensor.unsqueeze(0).to('cuda', torch.bfloat16),
    }
if proprios is not None: inputs['proprios'] = proprios.to('cuda', torch.bfloat16)
AI 代码解读

4. 模型推理

pred_action = uniact_model.infer(
    domain_name = "libero-1-rgb", # 检查 model_config.py 中的 domain_name
    **inputs
)
AI 代码解读

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 丰富的 AI 工具库 -> 每日更新 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦

相关文章
RDT:清华开源全球最大的双臂机器人操作任务扩散基础模型、代码与训练集,基于模仿能力机器人能够自主完成复杂任务
RDT(Robotics Diffusion Transformer)是由清华大学AI研究院TSAIL团队推出的全球最大的双臂机器人操作任务扩散基础模型。RDT具备十亿参数量,能够在无需人类操控的情况下自主完成复杂任务,如调酒和遛狗。
242 22
RDT:清华开源全球最大的双臂机器人操作任务扩散基础模型、代码与训练集,基于模仿能力机器人能够自主完成复杂任务
Jim Fan全华人团队HOVER问世,1.5M小模型让机器人获潜意识!
在机器人技术领域,人形机器人的全身控制一直极具挑战。传统方法为不同任务(如导航、移动操作等)单独训练控制策略,限制了策略的可转移性。Jim Fan团队提出HOVER框架,通过全身运动模仿作为共同抽象,整合多种控制模式,实现无缝过渡,显著提升控制效率和灵活性。HOVER不仅为人形机器人应用带来巨大潜力,也为机器人技术发展提供新思路。论文地址:https://arxiv.org/abs/2410.21229
86 23
聚焦视听触感官协同配合的具身精细操纵,人大胡迪团队领衔探索机器人模态时变性挑战
中国人民大学胡迪团队提出MS-Bot方法,通过阶段性引导的动态多感官融合,使机器人能像人类一样灵活运用视觉、听觉和触觉完成复杂任务。实验表明,该方法提高了操作准确性和效率,但仍面临数据依赖、计算复杂度和泛化能力等挑战。论文链接:https://arxiv.org/abs/2408.01366v2
118 21
机器人迈向ChatGPT时刻!清华团队首次发现具身智能Scaling Laws
清华大学研究团队在机器人操作领域发现了数据规模定律,通过大规模数据训练,机器人策略的泛化性能显著提升。研究揭示了环境和对象多样性的重要性,提出了高效的數據收集策略,使机器人在新环境中成功率达到约90%。这一发现有望推动机器人技术的发展,实现更广泛的应用。
105 26
清华开源全球最大双臂机器人扩散大模型RDT,懂调酒能遛狗,登顶HF具身热榜
清华大学近期发布了全球最大的双臂机器人扩散大模型RDT,该模型在调酒、遛狗等任务上表现优异,登顶Hugging Face具身智能热榜。RDT采用扩散架构,具备强大的学习能力,能生成高质量的机器人动作序列,展示了清华在机器人技术领域的领先水平。尽管面临泛化能力、计算资源及安全性等挑战,RDT的开源特性仍为其广泛应用和发展提供了广阔前景。
154 8
朱玉可团队新作:看一眼就能模仿,大模型让机器人轻松学会撒盐
朱玉可团队来自UT Austin和NVIDIA Research,提出了一种名为OKAMI的新方法,通过模仿人类行为视频,使机器人能快速学会操作技能,如撒盐、放玩具等。OKAMI分为参考计划生成和对象感知重定位两阶段,显著提高了机器人的操作精度和适应能力,减少了传统方法所需的大量示范和训练时间。
45 3
相隔3000英里,用苹果头显遥控机器人!UCSD、MIT华人团队开源TeleVision
【7月更文挑战第19天】UCSD和MIT华人团队开发的TeleVision技术实现了远程操控机器人。借助AR/VR,操作者通过头显设备获得实时的机器人视角,并通过手势控制执行任务。系统支持多人协作,已在远距离实验中成功导航复杂环境。不过,高带宽需求和交互学习曲线是挑战。[论文链接](https://robot-tv.github.io/resources/television.pdf)**
127 14
相隔3000英里,用苹果头显遥控机器人!UCSD、MIT华人团队开源TeleVision
【7月更文挑战第20天】加州大学圣地亚哥分校(UCSD)与麻省理工学院(MIT)的华人团队开发出TeleVision系统,结合Apple AR/VR头显,实现超远程沉浸式机器人控制。💡该系统克服视频流延迟,精准手势识别难题,让操作者仿佛亲临现场指挥机器人行动。目前处于研究阶段,已展示基本任务执行能力。更多信息查阅[论文](https://robot-tv.github.io/resources/television.pdf)。🌐 --- **🏷️远程控制** **🏷️虚拟现实** **🏷️机器人技术** **🏷️华人科研** **🏷️科技创新**
79 4
强化学习(RL)在机器人领域的应用,尤其是结合ROS(Robot Operating System)和Gazebo(机器人仿真环境)
强化学习(RL)在机器人领域的应用,尤其是结合ROS(Robot Operating System)和Gazebo(机器人仿真环境)
403 2
植保机器人环境感知地理定位与导航
植保机器人环境感知地理定位与导航
116 4

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等