0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

当旭日X3派遇上ChatGPT,我们能「chat」什么

地瓜机器人 2023-02-24 11:07 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

地平线旭日®X3派(下文简称旭日X3派)是一款拥有着高算力,面向生态开发者嵌入式,可用于机器人无人驾驶智能家居等领域,并搭载了TogetherROS开发平台,可高效进行机器人开发。ChatGPT是一款由OpenAI开发的自然语言处理模型,可以理解人类语言、自动生成文本、回答问题和完成其他任务,还可以与其他技术联动,实现更加复杂的应用。
旭日X3派遇上ChatGPT会碰撞出什么火花呢?本文使用旭日X3派作为载体,在OriginBot上使用ChatGPT进行问答。相关问题欢迎大家注册加入地平线开发者社区交流讨论,配置文件及代码详见地平线开发者社区。

环境配置

1、解释OriginBot小车代码

1.jfif

2、解释运动学模型

2.png

3、使用OpenCV在OriginBot小车上实现巡线功能

3.png


3.1.png

4、在ROS2环境中实现gmapping或者cartographer

4.png

5、总结对话

5.jfif

综上,我们发现ChatGPT有着记忆储存的功能,它区别于SiRi传统的一问一答,能根据聊天的上下文进行互动并归纳总结所有的问题,协助我们完成编程。并且ChatGPT在回复消息时是逐字的显示,很难感觉到是和机器人在对话,仿佛它只是个博学的朋友。

它在针对简单编程问题的处理上可谓是非常惊艳,在ROS相关的问题上,比我们人类更有耐心解答,有时会画出重点并扩展更多的相关知识帮助你去解决问题掌握技术。

既然ChatGPT都能接入WX,那么它和旭日X3派一定也能「chat」一下!不妨我们直接询问ChatGPT,该如何使得旭日X3派和ChatGPT联系起来!它给了我们这样的一个答案:

6.png

模型部署

1、部署基本环境

进入旭日X3派,执行以下命令(此处使用的是OriginBot v1.0.2的镜像):

pip3 install openai

2、学习OpenAI API如何使用

7.png

import openai # 将OpenAI访问令牌设置为环境变量 openai.api_key = "YOUR_API_KEY" # 调用OpenAI GPT-3模型,生成回答 response = openai.Completion.create( engine="text-davinci-002", prompt="你好!", max_tokens=1024, # 最大1024个标记 temperature=0.7, n=1, stop=None, ) # 输出生成的回答 print(response.choices[0].text)

3、书写节点代码

import rclpy from rclpy.node import Node from std_msgs.msg import String import openai class OpenAINode(Node): def __init__(self): super().__init__('openai_node') self.publisher_ = self.create_publisher(String, 'openai_text', 10) self.subscription = self.create_subscription( String, 'user_input', self.listener_callback, 10) self.subscription # 防止被Python垃圾回收机制删除 def listener_callback(self, msg): # 处理从ROS话题订阅到的输入 input_text = msg.data # 调用OpenAI的GPT-3模型生成文本 openai.api_key = 'YOUR_API_KEY' response = openai.Completion.create( engine="davinci", prompt=input_text, max_tokens=60, n=1, stop=None, temperature=0.7 ) # 将生成的文本发布到ROS话题 self.publisher_.publish(response.choices[0].text) def main(args=None): rclpy.init(args=args) openai_node = OpenAINode() rclpy.spin(openai_node) openai_node.destroy_node() rclpy.shutdown() if __name__ == '__main__': main()

4、部署到旭日X3派中

此处,即可按照古月老师的ROS2 21讲的方式来创建一个基于python的功能包。

5、程序运行

8.png

可以看到,此处运行状态与理想情况有较大出入。回到这一段代码:

import openai # 将OpenAI访问令牌设置为环境变量 openai.api_key = "YOUR_API_KEY" # 调用OpenAI GPT-3模型,生成回答 response = openai.Completion.create( engine="text-davinci-002", prompt="你好!", max_tokens=1024, # 最大1024个标记 temperature=0.7, n=1, stop=None, ) # 输出生成的回答 print(response.choices[0].text)

当前,engine使用的模型,此处是”text-davinci-002“,prompt是指输入文本,max_tokens指的是最大输出文字。首先,打印出所有的模型,示例代码如下:

import openai # 将OpenAI访问令牌设置为环境变量 openai.api_key = "YOUR_API_KEY" # 获取OpenAI最新的语言模型名称 models = openai.Model.list() latest_model = models['data'][0].id print("最新的OpenAI语言模型是:", latest_model) print("\n") printf("所有的模型如下:", models)

与当前WX接入ChatGPT方式进行对照发现,可将其理解为Transformer模型,直接把当前和之前所有的问题和回答都当成输入,生成最终的代码:

import rclpy from rclpy.node import Node from std_msgs.msg import String import openai class OpenAINode(Node): def __init__(self): super().__init__('openai_node') self.publisher_ = self.create_publisher(String, 'chatgpt_node', 10) self.subscription = self.create_subscription( String, 'user_input', self.listener_callback, 10) self.history = "" def listener_callback(self, msg): # 处理从ROS话题订阅到的输入 input_text = msg.data self.history += input_text self.history += " " # 调用OpenAI的GPT-3模型生成文本 openai.api_key = 'KEY' #models = openai.Model.list() #latest_model = models['data'][0].id #print(models) response = openai.Completion.create( engine="text-davinci-003", prompt=self.history+input_text, max_tokens=1024, n=1, stop=None, temperature=0.7 ) # 将生成的文本发布到ROS话题 msg = String() msg.data = response.choices[0].text print(msg.data) self.history += msg.data self.history += " " def main(args=None): rclpy.init(args=args) chatgpt_node = OpenAINode() rclpy.spin(chatgpt_node) chatgpt_node.destroy_node() rclpy.shutdown() if __name__ == '__main__': main()

效果如下:

9.png

本文转自地平线发者社区
原作者:Lxxxb

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 人工智能
    +关注

    关注

    1821

    文章

    50547

    浏览量

    267925
  • 开发板
    +关注

    关注

    26

    文章

    6525

    浏览量

    121404
  • OpenAI
    +关注

    关注

    9

    文章

    1263

    浏览量

    10344
  • ChatGPT
    +关注

    关注

    31

    文章

    1609

    浏览量

    10446
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    半年参与3万辆宝马X3生产,人形机器人“进厂打工”真成了

    了其人形机器人“进厂打工”的最新成果。   Figure 02:半年参与3万辆宝马X3生产,进入退役阶段   根据Figure AI的说法,在过去的六个月内,其第二代人形机器人Figure 02已经在宝马集团斯帕坦堡工厂参与生产了3
    的头像 发表于 11-24 08:25 8372次阅读
    半年参与<b class='flag-5'>3</b>万辆宝马<b class='flag-5'>X3</b>生产,人形机器人“进厂打工”真成了

    探索HMC - XTB110:GaAs MMIC被动x3倍频器的卓越性能与应用

    探索HMC - XTB110:GaAs MMIC被动x3倍频器的卓越性能与应用 在电子工程领域,频率倍频器是实现特定频率转换的关键组件。今天,我们将深入探讨HMC - XTB110这款GaAs
    的头像 发表于 05-29 15:10 76次阅读

    安谋科技“周易”X3 NPU R2升级,最高算力翻倍+算力密度跃升

    近日,安谋科技Tech Talk AI技术开放麦第二期,NPU高级产品经理Benjamin Ye分享了“周易”X3 NPU IP R2版本升级亮点,详解该版本在算力、算力密度方面的提升,以及“周易
    的头像 发表于 05-18 15:02 132次阅读
    安谋科技“周易”<b class='flag-5'>X3</b> NPU R2升级,最高算力翻倍+算力密度跃升

    FT 5000 Smart Transceiver与FT - X3 Communications Transformer:智能网络新选择

    关注的重点。今天,我们就来详细探讨一下Echelon公司推出的FT 5000 Smart Transceiver和FT - X3 Communications Transformer,看看它们能为智能
    的头像 发表于 03-31 09:10 233次阅读

    汇川PLC遇上施耐德变频器,疆鸿智能EtherNet/IP转Modbus TCP给它俩翻译

    汇川PLC遇上施耐德变频器,疆鸿智能EtherNet/IP转Modbus TCP给它俩翻译 去年秋天,我们在苏州一个固体制剂车间里遇到了一台“固执”的干法制粒机和一台“自闭”的微创
    的头像 发表于 03-19 14:53 277次阅读
    <b class='flag-5'>当</b>汇川PLC<b class='flag-5'>遇上</b>施耐德变频器,疆鸿智能EtherNet/IP转Modbus TCP给它俩<b class='flag-5'>当</b>翻译

    顶流Clawdbot遇上AIMO,个人AI Agent迎来“实体化”革命!

    “对话”的局限,通过连接本地系统与多终端工具,实现从信息交互到物理执行的跨越,让“个人AI管家”从概念走向现实。而这场AI执行革命遇上高算力AI模组领军者美格智能
    的头像 发表于 02-02 12:42 790次阅读
    <b class='flag-5'>当</b>顶流Clawdbot<b class='flag-5'>遇上</b>AIMO,个人AI Agent迎来“实体化”革命!

    华为路由 X3 Pro火了!业界首发Wi-Fi7+和透明天线,1299元起

    电子发烧友原创 章鹰 11月25日,在华为 Mate 80 系列 / Mate X7 及全场景新品发布会上,华为消费者BG CEO何刚宣布,首款艺术路由——华为路由 X3 Pro日照金山发布。这款
    的头像 发表于 11-30 00:46 8000次阅读
    华为路由 <b class='flag-5'>X3</b> Pro火了!业界首发Wi-Fi7+和透明天线,1299元起

    安谋发布“周易”X3 NPU,破局AI算力,智绘未来蓝图

    2025年11月13日,国内领先的芯片IP设计与服务提供商安谋科技Arm China,正式揭开了新一代NPU IP“周易”X3的神秘面纱。通过其创新的专为大模型设计的DSP+DSA混合架构与软硬协同
    的头像 发表于 11-17 11:47 497次阅读
    安谋发布“周易”<b class='flag-5'>X3</b> NPU,破局AI算力,智绘未来蓝图

    EtherCAT遇上PROFINET:我们的“协议小翻译”让矿井安全手拉手

    EtherCAT遇上PROFINET:我们的“协议小翻译”让矿井安全手拉手 炎夏的钢铁车间里,巨型轧机正以精确的节奏吞吐着赤红的钢坯。就在今晨,这条产线刚刚完成了一场静默的变革——我们
    的头像 发表于 10-22 10:00 482次阅读
    <b class='flag-5'>当</b>EtherCAT<b class='flag-5'>遇上</b>PROFINET:<b class='flag-5'>我们</b>的“协议小翻译”让矿井安全手拉手

    如何在香橙5 Plus上移植deepin 25操作系统

    开源生态遇上极客硬件,会碰撞出怎样的火花? deepin 25 遇上香橙 5 Plus 开发板,又会带来什么样的实践体验?
    的头像 发表于 10-11 10:29 1475次阅读

    奇瑞风云X3系列双车上市

    8月16日,奇瑞汽车旗下风云品牌全新方盒子产品序列——风云X3与风云X3 PLUS正式宣告上市。风云X3系列基于iCAR 03系列焕新升级而来,在造型设计、动力性能、智能科技、功能配置及工艺品质等维度实现全方位跃升。
    的头像 发表于 08-19 11:48 1342次阅读

    声智科技与蚂蚁集团共探声学AI前沿技术

    声学AI遇上金融科技,会碰撞出怎样的火花?声学AI模型赋AI硬件产品,又将如何重塑人机交互的边界?近日,声智科技受邀参加蚂蚁集团《AI圆桌
    的头像 发表于 07-24 10:18 1275次阅读

    20个任何人都能完成的树莓酷炫项目!

    不知道如何利用你买的树莓?这个小设备真的台式电脑用吗?服务器吗?
    的头像 发表于 07-03 17:10 4968次阅读
    20个任何人都能完成的树莓<b class='flag-5'>派</b>酷炫项目!

    用树莓“揪出”家里的耗电怪兽!

    在本应用中,我们将使用树莓设置一个CE电流监测器,并通过网页界面显示电路的电流读数。本项目使用的组件硬件组件树莓2ModelBx112通道20安培电流监测控制器x1项目背景介绍在本
    的头像 发表于 06-04 15:33 2313次阅读
    用树莓<b class='flag-5'>派</b>“揪出”家里的耗电怪兽!

    树莓与EthernetHat:用ChatGPT实现的MQTT智能家居项目!

    我们使用Pico、WIZnetW5100S和PicoBricks开发板开发了MQTTRGB灯,通过ChatGPT4.0生成和优化代码。项目所需组件硬件组件PicoBricks扩展板x1WIZnetW5100S-EVB-Picox
    的头像 发表于 06-03 15:29 2.1w次阅读
    树莓<b class='flag-5'>派</b>与EthernetHat:用<b class='flag-5'>ChatGPT</b>实现的MQTT智能家居项目!