ChatGPT +工业机器人/自动驾驶控制器的一些尝试

ChatGPT 的功能目前已扩展到机器人领域,可以用语言直观控制如机械臂、无人机、家庭辅助机器人等的多个平台。这会改变人机交互的未来形式吗?

你可曾想过用自己的话告诉机器人该做什么,就像对人说话那样?

比如说,只要告诉你的家庭助理机器人「请帮我热一下午餐」,然后它就能自己找到微波炉。很神奇,对吗?

尽管语言是人类表达意图的最直观的方式,但此前很长一段时间,人们仍然严重依赖手写代码来实现对机器人的控制。不过,当 ChatGPT 出现之后,这种情况要变一下了。

在最近的一项研究中,微软团队在探索如何使用 OpenAI 的新 AI 语言模型 ChatGPT 来使自然的人机交互成为可能。

论文链接:
https://www.microsoft.com/en-us/research/uploads/prod/2023/02/ChatGPT___Robotics.pdf

ChatGPT 是一个在大量文本和人类互动语料库上训练的语言模型,因此应对广泛的 prompt 和问题时,它可以生成连贯且语法正确的响应。这项研究的目标是看看 ChatGPT 是否可以超越文本思考,并对现实世界进行推理,以帮助机器人完成任务。研究者希望以此便利人们与机器人的互动,而不需要学习复杂的编程语言或机器人系统的细节。

研究的关键挑战在于教会 ChatGPT:如何通过考虑物理定律、操作环境以及机器人运用肢体动作改变周遭环境的方式来解决问题。

事实证明,ChatGPT 本身可以做很多事情,但它仍然需要一些帮助。团队在论文中描述了一系列可用于指导语言模型解决机器人任务的设计原则,包括(但不限于)特别 prompt 结构、高级 API 和通过人类文本反馈。研究者认为,这项工作只是开发机器人系统的转变的开始,并且希望通过这项研究激励其他研究人员加入这个有趣的研究领域。

当今机器人技术面临的挑战,以及 ChatGPT 能提供的帮助

目前机器人的操作流是从工程师或技术用户开始,需要他们将任务需求转换为系统代码。工程师会处于工作流程的回路中,他们需要不断编写新的代码和规范来纠正机器人的行为。总得来说,这个过程是缓慢的(用户需要编写低级代码)、昂贵的(需要对机器人技术有深入了解的高技能用户)且低效的(需要多次交互才能正常运转)。

但 ChatGPT 开启了一种新的机器人范式,并允许潜在的非技术型用户参与到回路之中,在监视机器人性能的同时向大型语言模型(LLM)提供高级反馈。通过遵循研究的设计原则,ChatGPT 可以为机器人场景生成代码。在没有任何微调的情况下,研究利用 LLM 的知识来控制不同的机器人形状,以完成各种任务。工作中,研究人员展示了多个 ChatGPT 解决机器人难题的示例,以及在操作、空中和导航领域的复杂机器人部署。

机器人与 ChatGPT:设计原则

Prompting LLM 是一门高度实证的科学。研究通过反复试验建立了一套为机器人任务编写 prompt 的方法和设计原则:

首先,研究定义了一组高级机器人 API 或函数库。这个库可以特定于特定的机器人,并且可以映射到机器人的控制堆栈或感知库中现有的低级实现。对高级 API 使用描述性名称非常重要,这样 ChatGPT 就可以推断它们的行为;

接下来,研究人员为 ChatGPT 编写一个文本 prompt,它描述了任务目标,同时明确说明来自高级库的哪些函数是可用的。Prompt 还可以囊括关于任务约束的信息,或者 ChatGPT 应该如何形成其答案(特定的编码语言,使用辅助解析元素);

用户在回路中评估 ChatGPT 的代码输出,要么通过直接检查,要么使用模拟器。如果需要,用户可以使用自然语言向 ChatGPT 反馈答案的质量和安全性。

用户满意解决方案的话,代码就可以最终部署到机器人上。

理论已经够多了,ChatGPT 到底能做什么?

让我们参看几个例子,你还可以在代码库中找到更多案例研究。

零样本任务计划

研究人员让 ChatGPT 控制真正的无人机,经证明,它是非技术用户和机器人之间非常直观的基于语言的接口。当用户的指令含糊不清时,ChatGPT 会提出要明晰问题,并为无人机编写复杂的代码结构以直观地检查架构,例如锯齿形模式。它甚至学会了自拍!

研究人员还使用 Microsoft AirSim 模拟器在一个模拟工业检验场景中使用 ChatGPT。该模型能够有效地解析用户的高级意图和几何线索,从而准确地控制无人机。

回路中的用户:当复杂的任务需要对话时

接下来,研究人员将 ChatGPT 用于机械臂的操作场景,并使用对话反馈来教会模型如何将最初提供的 API 组合成更复杂的高级函数:ChatGPT 自动编程。该模型能够使用课程本位策略,按照逻辑将学习到的技能链接在一起,以执行诸如堆叠块等操作。

此外,当用木块构建微软标志时,该模型展示了一个连接文本和物理域的完美示例。它不仅能够从内部知识库中回忆 logo,还能够「绘制」logo(作为 SVG 代码),然后使用上面学到的技能来找出哪些现有的机器人动作可以构成其外形。

接下来,研究人员让 ChatGPT 编写一个算法,让无人机在达到空中目标的同时不撞上障碍物。他们告诉模型,这架无人机有一个面向前方的距离传感器,ChatGPT 立即为算法编写了大部分关键构建块。这项任务需要与人进行一些对话,ChatGPT 仅使用语言反馈就能进行本地化代码改进的能力令人印象深刻。

感知 - 行动回路:机器人在行动前感知世界

在做某事(行动)之前感知世界(感知)的能力是任何机器人系统的基础。因此,研究人员决定测试 ChatGPT 对这个概念的理解,并要求它探索一个环境,直到找到用户指定的对象。研究为模型提供了对象检测和对象距离 API 等功能,并验证了它生成的代码成功实现了感知 - 行动循环。

在实验阶段,研究者进行了额外的实验,以评估 ChatGPT 是否能够根据传感器反馈实时决定机器人应该去哪里(而不是让 ChatGPT 生成一个代码回路来做出这些决定)。有趣的是,恰好验证了可以在对话的每一步中输入相机图像的文本描述,并且模型能够弄清楚如何控制机器人,直到它到达特定的对象。

PromptCraft, LLM + 机器人研究的协作开源工具

良好的 Prompt 工程对于大型语言模型的成功至关重要,例如 ChatGPT 用于机器人任务。可惜,Prompt 是一门实证科学,缺乏全面和可访问的资源,其中能为该领域的研究人员和爱好者提供帮助的例子也是良莠不齐。为了弥合这一差距,研究者引入了「PromptCraft」,这是一个协作开源平台,任何人在这里都可以分享不同机器人类别的 Prompt 策略示例,而且,研究者公布了在这项研究中使用的所有 Prompt 和对话。

除了 Prompt 设计,研究还希望包括多个机器人模拟器和界面,允许用户测试他们的 ChatGPT 生成的算法。作为开始,研究还发布了一个与 ChatGPT 集成的 AirSim 环境,任何人都可以使用它来展开这些想法。

ChatGPT-AirSim 接口

让机器人走出实验室,走向世界

发布这些技术是一件值得庆祝的事,因为这会扩大机器人技术的受众面。微软的研究人员相信,基于语言的机器人控制将会为让机器人从科学实验室走进日常用户的生活中奠定基础。

本文要强调的是,在没有仔细分析的情况下,ChatGPT 的输出并不意味着要直接部署在机器人上。研究者鼓励用户利用模拟的力量,以便在潜在的现实生活部署之前评估这些算法,并始终采取必要的安全预防措施。本文所讲述的工作只代表了在机器人领域运行的大型语言模型的交集中可能实现的一小部分,希望能为更多的研究提供灵感。

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

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

相关文章

【bugdebug】为什么表名没有输入错误,数据库连接也连上了,但一查询还是显示对象名“XXX”无效?

bug描述 or log 消息 208,级别 16,状态 1,第 5 行 对象名 ‘XXX’ 无效。 完成时间: 2023-03-29T22:46:30.155081208:00 cause&debug possibilitycausedebug1你可能是打开之前就已经写了的.sql文件,然后单独选中sql语句进行查…

Input子系统剖析

Input子系统是Linux内核中的一个重要组成部分,它负责处理各种输入设备(例如键盘、鼠标等)发送的数据,并将其转换为用户空间可用的格式。本文将介绍Input子系统的基本架构和功能。 Input子系统的基本架构由三个组件构成&#xff1a…

Huggingface微调BART的代码示例:WMT16数据集训练新的标记进行翻译

BART模型是用来预训练seq-to-seq模型的降噪自动编码器(autoencoder)。它是一个序列到序列的模型,具有对损坏文本的双向编码器和一个从左到右的自回归解码器,所以它可以完美的执行翻译任务。 如果你想在翻译任务上测试一个新的体系…

机器学习:学习KMeans算法,了解模型创建、使用模型及模型评价

机器学习:学习KMeans算法,了解模型创建、使用模型及模型评价 作者:i阿极 作者简介:Python领域新星作者、多项比赛获奖者:博主个人首页 😊😊😊如果觉得文章不错或能帮助到你学习&…

R 语言基础

R 语言基础 一门新的语言学习一般是从输出 “Hello, World!” 程序开始&#xff0c;R 语言的 “Hello, World!” 程序代码如下&#xff1a; ## 实例&#xff08;helloworld.R&#xff09;myString <- "Hello, World!"print ( myString )以上实例将字符串 “Hell…

【C++】模板进阶|继承

文章目录一、模板进阶1. 非类型模板参数2. 模板的特化2.1 函数模板特化2.2 类模板特化3. 模板的分离编译3.1 什么是分离编译3.2 模板的分离编译3.3 模板总结二、继承1. 继承的概念及定义2. 基类和派生类对象赋值转换3. 继承中的作用域4. 派生类的默认成员函数5. 继承与友元or静…

Linux使用:环境变量指南和CPU和GPU利用情况查看

Linux使用&#xff1a;环境变量指南和CPU和GPU利用情况查看Linux环境变量初始化与对应文件的生效顺序Linux的变量种类设置环境变量直接运行export命令定义变量修改系统环境变量修改用户环境变量修改环境变量配置文件环境配置文件的区别profile、 bashrc、.bash_profile、 .bash…

【云原生】Kubernetes(k8s)部署 MySQL+Dubbo+Nacos服务

一、说明二、部署 MySQL三、部署 Nacos四、部署 Dubbo 服务4.1. 创建镜像仓库的密钥4.2. 部署 provider 服务4.3. 部署 consumer 服务五、测试一、说明 本文介绍基于 Kubernetes(k8s) 环境集成阿里云 私有镜像仓库 来部署一套 Dubbo Nacos 的微服务系统&#xff0c;并使用 Ku…

【动手学深度学习】(task123)注意力机制剖析

note 将注意力汇聚的输出计算可以作为值的加权平均&#xff0c;选择不同的注意力评分函数会带来不同的注意力汇聚操作。当查询和键是不同长度的矢量时&#xff0c;可以使用可加性注意力评分函数。当它们的长度相同时&#xff0c;使用缩放的“点&#xff0d;积”注意力评分函数…

SPSS27破解安装后,出现应用程序无法正常启动(0xc000007b)

破解完SPSS 27软件后&#xff0c;点击图标出现下图错误 可以尝试以下方法&#xff1a; 1. 在安装目录下找到VC开头的文件夹 2. 点击此软件进行修复 若修复完成&#xff0c;重新启动SPSS软件即可。 3. 若提示错误&#xff0c;显示如下界面&#xff0c;进行下面的方法 4. 下…

FPGA 20个例程篇:20.USB2.0/RS232/LAN控制并行DAC输出任意频率正弦波、梯形波、三角波、方波(三)

如图1所示是USB2.0/RS232/ETH控制并行DAC输出任意频率正弦波、梯形波、三角波、方波的整体设计示意图&#xff0c;可以看到上位机通过RS232串口、ETH千兆网口以及USB2.0接口和FPGA建立通信&#xff0c;通过不同的接口发送报文&#xff0c;FPGA在指令解析模块中把相关设置和参数…

【蓝桥杯冲刺】蓝桥杯11届省赛C++b组真题-填空题

目录 试题A&#xff1a;门牌制作 解题思路&#xff1a; 答案&#xff1a; 试题B&#xff1a;既约分数 解题思路&#xff1a; 答案&#xff1a; 试题C&#xff1a;蛇形填数 解题思路&#xff1a; 答案&#xff1a; 试题D&#xff1a;跑步训练 解题思路&#xff1a; …

Linux中有哪些常用的网络命令,分别适用于什么场景?

Linux作为一种广泛使用的操作系统&#xff0c;其网络功能非常强大。在Linux系统中&#xff0c;有很多网络相关的命令可以用于管理和配置网络&#xff0c;比如ifconfig、netstat、ping、traceroute、route等等。本文将对一些常用的Linux网络命令进行详细介绍。 一、ifconfig命令…

kafka组件(角色)介绍_结合官网、教材和实践

kafka中有很多重要的组件&#xff0c;下面 将一一介绍它们的功能以及它们内在的关系。 在文章中&#xff0c;可能会混用中英文来说明&#xff0c;英语中文对照表如下: Component Name中文名称Producer生产者Consumer消费者Consumer消费者组Topic主题Partition分区Replica副本…

十大公认音质好的骨传导耳机,分享几款音质好的骨传导耳机

骨传导耳机&#xff0c;顾名思义&#xff0c;就是通过骨头振动来传导声音的耳机。相比于传统耳机&#xff0c;它的声音传输更加开放&#xff0c;不会对耳膜造成压迫感&#xff0c;也不会对耳膜旁的内毛细胞造成损害。因此骨传导耳机既是运动蓝牙耳机&#xff0c;又是音乐蓝牙耳…

graalvm22.3.1打包exe和linux

1. windows 1.1 构建环境 1.1.1 graalvm环境 graalvm地址 拉满直接jdk17,记得科学上网 1.1.2 native-image环境 还是在graalvm的地址上 1.1.3 环境安装 JAVA_HOME新增java环境变量(jdk环境的配置方法)

【分布式】java实现分布式事务的五种方案

文章目录背景什么是分布式事务什么是分布式系统&#xff1a;什么是事务&#xff1a;什么是本地事务&#xff1a;什么是分布式事务&#xff1a;分布式事务有哪些应用场景&#xff1a;如何进行分布式事务控制CAP理论分布式系统如何兼顾CAP&#xff1f;CAP有哪些组合方式&#xff…

【创作赢红包】linux软件推荐及安装

【创作赢红包】linux软件推荐及安装好用的linux软件好用的linux软件 Visual Studio Code Chrome mpv media player sudo add-apt-repository ppa:mc3man/mpv-tests sudo apt-get update sudo apt-get install mpvWPS Sublime Text Beyond Compare Wireshark kolourpaint…

java企业级信息系统开发讲课笔记04初探Spring ——采用Java配置类管理Bean

文章目录一、学习目标二、采用java配置类管理Bean&#xff08;一&#xff09;打开项目&#xff08;二&#xff09;创建子包&#xff08;三&#xff09;创建杀龙任务类&#xff08;四&#xff09;创建勇敢骑士类&#xff08;五&#xff09;创建spring配置类&#xff08;六&#…

我国CRO行业发展前景-【趋势分析】

随着医疗技术的不断发展&#xff0c;医药行业也在不断壮大。而在医药行业中&#xff0c;Cro行业也受到越来越多的关注。Cro是Contract Research Organization的缩写&#xff0c;中文翻译为合同研究组织。Cro公司主要提供医药研究和开发服务&#xff0c;帮助医药企业实现新药研发…
最新文章