化茧成蝶 | 继HuggingFace首家落地大模型具身智能场景

关于具身智能的起源

近年来,大语言模型(LLMs)的兴起给机器人领域带来了革命性的改变,大模型赋予了传统机器人理解和推理的能力,让具身智能这一概念再度出现在大众的视角中。OpenCSG 作为国内 AI 开源社区的先锋,对标国外 HuggingFace 平台,对 HuggingFace 的首席科学官(CSO)发起的基于 dora-rs 开源框架的具身智能机器人进行落地实现和开源分享(https://huggingface.co/posts/thomwolf/809364796644704?image-viewer=809364796644704-3234DF5C5B4FF12A512F5D1B04325DF820919CB3)

OpenCSG 打造中国本土化 Huggingface plus 开源社区 开放传神 OpenCSG 传神社区 官网icon-default.png?t=N7T8https://opencsg.com/

该机器人搭载了最新的大模型并基于最新的计算框架,展现出来卓越的语言理解和生成能力,并凭借其物理形态实现了与现实世界的无缝互动,展现出一流的机器智能化水准。下面就让我们来看一下一个可以理解你、回应你、并与环境互动的智能伙伴是如何实现的吧!

1. 具身智能:AI领域的新兴热点

近年来,随着大语言模型(LLM)技术的飞速发展,具身智能领域取得了令人瞩目的进展。业界和学术界都在该领域上取得了显著的成果,不仅推动了技术的创新发展,也吸引了大量的资本的关注和投资。在业界,大批科创公司投身于此,带来了一批又一批令人耳目一新的具身智能AI产品。比如:

在今年 3 月份,知名 AI 机器人创业公司 Covariant 推出机器人基础模型 RFM-1(Robot Foundation Model-1)是世界上首个基于真实任务数据训练的最接近于解决真实世界任务的机器人大模型。RFM-1 模型是一个基于真实世界的文本、图像、视频、机器人动作以及一系列传感器读数综合训练得到的多模态大模型,通过接受初始图像和机器人动作的输入,预测接下来视频帧的变化,从而让搭载该模型的机器人可以像人一样对真实世界进行推理和预测。

还是今年 3 月份,谷歌 RT 机器人在之前的版本上再一次进化,引入了行动层级(action hierarchy),将复杂的任务分解为简单的语言动作,再转化为机器人动作,充分利用大语言模型的能力,从而提高机器人完成任务的准确性和学习效率。

学术界的研究者也在积极探索具身智能的各种可能。在上个月(5.13-5.17)国际顶级机器人学术会议 ICRA(IEEE International Conference on Robotics and Automation)中,论文的提交数量相较于去年上涨了 25.88%,论文主题覆盖了如双足机器人、人体检测和跟踪、人机交互、机器人学习、安全和监控机器人系统、3D重建、无人机系统、人工智能、农业自动化、行为树和大数据分析等领域。

与此同时,资本也开始大量涌入到具身智能行业。就在 5 月 31 号,前阿里达摩院机器人实验室负责人陈俊波创立的“有鹿机器人”,刚刚宣布完成了超1亿元融资,投资方包括创新工场、元璟资本、百度风投等。最著名的当属华为天才少年“稚晖君”辞职后创立的“智元机器人”,仅仅一年的时间,“智元机器人”的估值已经飙升至 70 亿元。根据Markets and Markets的预测,全球具身智能市场预计2028年将达到138亿美元。Nvidia、OpenAI、三星、微软等世界巨头公司也都纷纷进场,投资押注国外炙手可热的具身智能公司1X Technologies和Figure AI。工业界、学术界和资本的不断支持下,具身智能正在不断突破边界,将科幻带进现实。

2. 小型语言模型SLMs:为智能机器的发展注入新动能

在大型语言模型(LLM)备受瞩目时,一股来自小型语言模型(SLMs)的新风正在悄然兴起,为人工智能领域注入新的动力。相比大型语言模型,SLMs只需要较少的内存和处理能力,使其非常适合基于设备和本地部署。SLMs有着参数小易于部署的特点,展现出媲美大型语言模型的强大实力。

SLMs是一种生成式人工智能模型,通过精简模型结构、优化算法和参数压缩等技术手段,小语言模型实现了在参数数量、模型大小和训练数据量上的“小”化,从而减少了计算资源需求。最著名的当属微软公司开发的Phi-3 模型。其作为微软对无障碍人工智能的持续承诺的一部分,在语言处理,编码,数学推理等任务中具有极其优越的性能,可以做到在大部分领域的性能远超同等参数的语言模型。

在 SLMs 打破次元壁,展现出无限的可能的同时,苹果、谷歌等世界巨头公司也都纷纷推出自家的 SLMs 的落地项目。比如这个月苹果公司在 WWDC 中花费一半的时间介绍的基于 SLMs 的全生态 AI 能力(Apple Intelligence),充分地将 SLMs 和苹果已经建立的完整的硬软件生态系统相结合,让 AI 更好地融入每个人的生活。联想集团大举进军 AIPC 行业,在去年十月份的联想科技创新科技大会(Lenovo Tech World 2023)上展示了联想首款 AIPC,大模型压缩技术等一系列 SLMs 应用创新科技成果,为智能终端的产业发展助力。

OpenCSG 算法团队在国内首次使用自研悟空系列多模态大模型如 csg-wukong-1B-VL、opencsg-bunny-v0.1-3B 等实现具身智能项目,充分展示 SLMs 在具身智能的应用效果。

3. OpenCSG国内首家实现:基于dora 框架的具身智能机器人

OpenCSG 作为国内模型开源社区的领军者,首个尝试并实现了基于dora框架的具身智能机器人项目。该项目由 HuggingFace 的首席科学官(CSO)发起,旨在促进具身智能机器人领域的开源社区发展。该项目使用到大疆平台的 RoboMaster S1 机器车,结合了 OpenCSG 自研悟空系列大模型如多模态大模型 csg-wukong-1B-VL 等和最新的 dora 开源框架。

RoboMaster S1 是大疆平台的可编程遥控车,具有卓越的性能,高度的可编程性,丰富的传感器和较高的性价比以及强大的生态系统,可以为开发人员提强大的硬件系统。但是robomaster sdk已经不再更新了,并且s1需要使用第三方hack sdk才能使用RoboMaster EP的sdk,因此需要进行破解的操作。

dora-rs 是面向数据流的机器人应用框架,旨在简化机器人应用的开发过程。该框架致力于解决硬件设备、算法和人工智能模型等多种要素集成过程中的复杂性,通过高效的通讯手段将它们紧密连接,实现互动协作。在性能方面,dora与当前使用 Python 的 ROS2 相比,性能提升可达17倍。不过由于 dora-rs开源项目正处于实验阶段,可能会出现一些未知的 bug,框架作者会对其不断优化,OpenCSG开源社区也会提供一些框架 bug 的解决方案,为开源项目的发展尽一份力。

OpenCSG 算法团队从 5 月中旬开始对该项目进行复现工作,在复现的过程中遇到了很多问题,比如大疆 RoboMaster 的hack、环境的搭建、dora-rs 的适配等等。接下来让我们来分享一下这一个月内复现的辛酸历程吧。

3.1 体验具身智能的第一步:基础部署

将小型语言模型部署在大疆RoboMaster S1平台上,为具身智能机器人的开发奠定基础。

为了在RoboMaster S1上部署小型语言模型,需要进行一些基础部署工作。首先,通过以下命令下载相关项目代码:

git clone https://opencsg.com/codes/OpenCSG/csg-robomaster

接下来,创建项目的环境,使用以下命令:

conda create -n robomaster python=3.8
pip install robomaster dora-rs==0.3.4 
pip install -r requirements.txt

接着,需要进行RoboMaster S1的破解工作。具体步骤如下:

  • 启动RoboMaster应用程序,并选择通过路由器或通过WLAN的方式连接RoboMaster S1。
  • 连接成功后,使用微型USB电缆将RoboMaster S1连接到计算机的USB端口。连接成功时会听到一声“哔”的声音,类似于连接任何设备时的声音。(请注意,在此过程中不得通过USB连接其他安卓设备)
  • 在应用程序的“实验室”部分,创建一个新的Python应用程序,并粘贴以下代码:
def root_me(module):    
 __import__ = rm_define.__dict__['__builtins__']['__import__']
     return __import__(module, globals(), locals(), [], 0) 
builtins = root_me('builtins') 
subprocess = root_me('subprocess') 
proc = subprocess.Popen('/system/bin/adb_en.sh', shell=True, executable='/system/bin/sh', stdout=subprocess.PIPE, stderr=subprocess.PIPE)
  • 运行代码,如果没有出现错误,控制台应显示“执行完毕”的结果。
  • 在不关闭应用程序的情况下,导航至包含Android SDK Platform-Tools文件夹的位置,并在其中打开终端。
  • 运行 ADP 命令 .\adb.exe devices 。如果一切正常,应该会看到类似下面的输出:
     

  • 行位于 s1_SDK 文件夹中的 upload.sh。
  • 当所有步骤执行完毕后,关闭RoboMasterS1并重新启动。在启动过程中,您应该听到两声鸣叫,而不是通常的一声鸣叫,这表明破解操作已成功。

完成基础部署后,就可以进行RoboMaster S1的连接与测试。具体步骤如下:

  1. 确保使用稳定的RoboMaster无线热点连接,无线热点的默认密码是12341234。如果想在联网的情况下运行演示程序,可能需要使用第二张无线网卡。
  2. 尝试使用以下命令测试与RoboMaster S1的连接:
conda activate robomaster
python tests/test_ap.py

也可以直接在命令行中运行测试文件中的代码。如果通信成功,控制台将显示类似下面的输出:

成功连接并测试后,就可以运行具身智能机器人的演示程序了。在命令行中使用以下命令:

conda activate robomaster
# This requires dora==0.3.4, update with:
# cargo install dora-cli
dora up 
dora start graphs/dataflow_robot_vlm.yml --attach --hot-relo

目前,互动方式是在笔记本电脑上按下向上箭头键,将信息录制并发送到机器人的视觉语言模型(Visual Language Model,VLM)。这一基础部署工作为RoboMaster S1上的具身智能机器人开发奠定了坚实的基础。通过结合小型语言模型和具身智能的人性化交互设计,具身智能机器人不仅将广泛应用于家庭、教育和医疗等行业,提供个性化的服务,还将推动智能技术在更广泛的场景中的普及。

3.2 感受具生智能无限的魅力:让机器人拥有自主的理解能力

具身智能机器人是一种结合了语音、视觉、运动和学习等功能的人工智能系统。它可以通过与用户的交互来提供个性化的服务和智能化的体验。借助小型语言模型和具身智能的设计,RoboMaster S1可以成为了一种全新的、强大而具有趣味性的工具。

结合小参数量多模态模型和具身智能,RoboMaster S1能够识别和理解用户的语音指令,并作出相应的反应和动作。例如,当我们对RoboMaster S1说出“前进”、“后退”、“左转”或“右转”等指令时,它能够根据我们的指令进行相应的移动动作。同时,它还可以根据我们的语音指令进行理解后制定下一步计划,能够完成拍照、录像、射击等操作,我们记录下了机器人这些精彩的瞬间。

除此之外,RoboMaster S1本身自带一些编程sdk,可以通过视觉识别技术来感知环境和物体。它可以识别人脸、识别物体、追踪目标等,从而实现更加智能化的互动。借助小型语言模型的嵌入,RoboMaster S1能够理解我们的语言指令,并结合视觉信息作出相应的反应。例如,当我们对它说出“追踪某个人”,它会根据我们的指令进行人物追踪,并通过摄像头进行追踪和拍摄,后续我们会借助这些功能开发出更多有意思的表现。

4. OpenCSG:助力具身智能,共创技术新篇章

OpenCSG作为国内模型开源领域的先驱者,提供了具身智能机器人的开源平台,通过开源的方式推动具身智能机器人的发展。在CSGHub(https://opencsg.com/models)开源社区中,开发者可以访问和共享代码、模型和数据集,便于跨领域的合作和知识共享,同时CSGHub也推出了企业版,能够为企业提供一站式的模型、数据、代码以及应用等资源管理平台。

StarShip CodeGenAgent 以23.67%的成绩获得全球 第二名 的成绩,为StarShip的落地打下了坚实基础。

OpenCSG CSGHub 一站式大模型资源管理平台

OpenCSG StarShip CodeGen API

同时OpenCSG在上个月刚发布的全球SWE-Bench排名第二的StarShip CodeGenApi ,它也将会逐步实现辅助更多的爱好者能够参与到具身智能机器人领域的研究和开发。

OpenCSG欢迎各方研究者、企业、高校等机构的积极参与,我们一起共建具生智能开源开放的社区平台。在我们未来规划中,开发者们可以基于开源平台构建各种具身智能机器人项目,将具身智能机器人项目从概念阶段进展到实际应用阶段。涵盖了家庭、教育、医疗等多个领域,例如,可以开发智能家居助手,为用户提供便捷的家居管理和个性化服务;可以开发教育机器人,辅助学生的学习和发展;还可以开发医疗机器人,在医疗领域提供更高效、精准的辅助治疗服务。

作为开源平台,OpenCSG将持续努力,给国内具身智能机器人提供发展的环境。通过分享经验和技术成果,加速创新步伐,推动更多创新性的具身智能机器人项目实现落地。OpenCSG会提供最好的资源和技术支持,促进开源社区的合作,推动具身智能机器人领域的共同进步。让我们共同期待具身智能机器人领域在OpenCSG开源社区的助推下迸发出更多创新和进步!

参考链接

1.A Survey on Integration of Large Language Models with Intelligent Robots:

https://arxiv.org/abs/2404.09228

2.联想阿木:AIPC让AI惠及每一个人:

https://mp.weixin.qq.com/s/MK2IRXbNqVytYtQHR8FpEw

3.ICRA 官网:

https://2024.ieee-icra.org

4.HuggingFace开源 dora 项目:

https://huggingface.co/dora-rs

5.dora-rs 开源项目:

https://github.com/dora-rs/dora

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/747422.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Flask之数据库

前言:本博客仅作记录学习使用,部分图片出自网络,如有侵犯您的权益,请联系删除 目录 一、数据库的分类 1.1、SQL 1.2、NoSQL 1.3、如何选择? 二、ORM魔法 三、使用Flask-SQLALchemy管理数据库 3.1、连接数据库服…

美创携手浙江长征职业技术学院,共建智云数据安全大师工作室

6月24日,“美创科技浙江长征职业技术学院智云数据安全大师工作室揭牌暨中国特色学徒制第四期云数据安全和智能运维人才选拔培养启动仪式”在长征职业技术学院隆重举行。 浙江长征职业技术学院计算机与信息技术学院院长梅灿华、计算机与信息技术学院学工办副主任华春…

[深度学习] Transformer

Transformer是一种深度学习模型,最早由Vaswani等人在2017年的论文《Attention is All You Need》中提出。它最初用于自然语言处理(NLP)任务,但其架构的灵活性使其在许多其他领域也表现出色,如计算机视觉、时间序列分析…

Orangepi Zero2使用外设驱动库wiringOP配合时间函数驱动HC-SR04超声波测距模块

目录 一、HC-SR04超声波模块原理和硬件接线 1.1 超声波测距原理: 1.2 超声波时序图: 1.3 HC-SR04超声波模块硬件接线: 二、时间函数 2.1 时间函数gettimeofday()原型和头文件: 2.2 使用gettimeofday()函数获取当前时间的秒数…

经验分享,免费商标查询网站

有时候想快速查询商标状况,官方网站比较慢,这里分享一个免费快速的网站。 网址:https://www.sscha.com/ 截图:

platform 设备驱动实验

platform 设备驱动实验 Linux 驱动的分离与分层 代码的重用性非常重要,否则的话就会在 Linux 内核中存在大量无意义的重复代码。尤其是驱动程序,因为驱动程序占用了 Linux内核代码量的大头,如果不对驱动程序加以管理,任由重复的…

电脑没声音是什么原因?一篇文章帮你解决疑惑

在使用电脑时,声音是至关重要的一部分,无论是播放音乐、观看视频还是进行视频会议。然而,有时候电脑可能会出现没声音的情况,这让人感到非常困扰。那么电脑没声音是什么原因呢?本文将详细介绍解决电脑没声音问题的三种…

【Java Web】XML格式文件

目录 一、XML是什么 二、常见配置文件类型 *.properties类型: *.xml类型: 三、DOM4J读取xml配置文件 3.1 DOM4J的使用步骤 3.2 DOM4J的API介绍 一、XML是什么 XML即可扩展的标记语言,由标记语言可知其基本语法和HTML一样都是由标签构成的文件…

仓库管理系统12--物资设置供应商设置

1、添加供应商窗体 2、布局控件UI <UserControl x:Class"West.StoreMgr.View.SupplierView"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/xaml"xmlns:mc"http://…

VLM系列文章1-LLaVA

作为VLM系列的第一篇文章&#xff0c;打算以LLaVA入手&#xff0c;毕竟是VLM领域较为经典的工作。 1. 核心贡献 多模态指令跟随数据&#xff1a;包括PT、SFT数据的构造流程&#xff1b;大型多模态模型&#xff1a;一种新的框架&#xff0c;结构较为简单高效&#xff1b;评估数…

深入了解 GPT-4 和 ChatGPT 的 API---使用 OpenAI Python 库

文章目录 OpenAI 访问权限和 API 密钥Hello World 示例程序使用 GPT-4 和 ChatGPTChatCompletion 端点的输入选项ChatCompletion 端点的输出格式 OpenAI 将 GPT-4 和 ChatGPT 作为服务提供。这意味着用户无法直接访问模型代码&#xff0c;也无法在自己的服务器上运行这些模型。…

牛客周赛 Round 48 解题报告 | 珂学家

前言 题解 这场感觉有点难&#xff0c;D完全没思路, EF很典&#xff0c;能够学到知识. E我的思路是容斥贡献&#xff0c;F很典&#xff0c;上周考过一次&#xff0c;引入虚拟节点质数(有点像种类并查集类似的技巧). 欢迎关注 珂朵莉 牛客周赛专栏 珂朵莉 牛客小白月赛专栏 …

【第十八课】区域经济分析——探索性空间数据分析软件实操

一、前言 ArcGIS有专门处理探索性空间数据分析方法的工具,即地统计分析模块。 该模块主要由三个功能模块组成:探索性数据分析(Explore)、地统计分析向导(Geostatistical Wizard),以及生成数据子集(Create Subsets)。其中利用 这些基本功能模块,可以方便完成多种地统…

Thinkphp/Laravel高校竞赛管理系统的设计与实现_9pi7u

高校竞赛管理&#xff0c;其工作流程繁杂、多样、管理复杂与设备维护繁琐。而计算机已完全能够胜任高校竞赛管理工作&#xff0c;而且更加准确、方便、快捷、高效、清晰、透明&#xff0c;它完全可以克服以上所述的不足之处。这将给查询信息和管理带来很大的方便&#xff0c;从…

【Qt】Qt多线程编程指南:提升应用性能与用户体验

文章目录 前言1. Qt 多线程概述2. QThread 常用 API3. 使用线程4. 多线的使用场景5. 线程安全问题5.1. 加锁5.2. QReadWriteLocker、QReadLocker、QWriteLocker 6. 条件变量 与 信号量6.1. 条件变量6.2 信号量 总结 前言 在现代软件开发中&#xff0c;多线程编程已成为一个不可…

数字图像分析(第三部分)

文章目录 第11章 基于概率图模型的图像分析概率有向图模型因子分解生成式模型链式图条件独立性有向图模型的马尔科夫毯概率无向图模型模型定义概率无向图模型的因子分解条件随机场条件随机场的定义条件随机场的预测算法第12章 运动分析运动相机建模光流运动表达方法运动估计准则…

AI软件革新文本操作体验:从自动粘贴文本到一键提取保存手机号码

在当今数字化时代&#xff0c;AI技术的快速发展为各行各业带来了革命性的变革。特别是在文本处理领域&#xff0c;AI软件通过其强大的自动粘贴文本功能以及一键提取并保存手机号码的便捷操作&#xff0c;极大地提高了工作效率&#xff0c;为用户带来了全新的体验。本文将深入探…

CSS 文本输入框右下角的尺寸控件(三斜线:-webkit-resizer)消除,以及如何配置其样式,添加 resize 让标签元素可进行拖拽放大。

前言&#xff1a;在日常的前端开发中&#xff0c;不管是原始的和 还在在各类组件库中的文本输入框中&#xff0c;元素内容的右下角总是有一个三斜线的样式&#xff0c;本文简单了解它是什么&#xff1f;如何去控制并修改样式&#xff1f; 一、它是&#xff1f; 这三个斜线其实…

v0.9.6 开源跨平台个人知识管理工具 TidGi-Desktop

在这个信息爆炸的时代&#xff0c;知识管理变得尤为重要。太记(TidGi)&#xff0c;一款基于太微(TiddlyWiki)的知识管理桌面应用&#xff0c;正是为了满足人们对信息整理、知识管理和个人隐私保护的需求而设计的。它不仅能够帮助用户高效地管理和整理信息&#xff0c;还能够自动…

简化部署流程——无线UWB如何实现自标定?

一.什么是UWB信标自标定&#xff1f; UWB&#xff08;超宽带&#xff09;自标定是指在UWB系统中&#xff0c;基站或节点能够自动识别和确定自己的位置&#xff0c;无需外部干预或手动输入其地理位置信息。这种技术主要利用系统内部的信号测量和算法来自动计算节点之间的距离以…