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

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

3天内不再提示

Arduino IoT Cloud开始与ChatGPT联机运作

jf_cVC5iyAO 来源:易心Microbit编程 2023-07-13 16:19 次阅读

Arduino IoT Cloud开始与ChatGPT联机运作

近期ChatGPT如雷贯耳,已经不用笔者多解释,但ChatGPT与创客的最爱Arduino扯上关系,倒是值得关注一下,是怎样扯上关系呢?

这主要是有人发起一个项目,项目就放在Arduino官方的Project Hub上,该项目可以让Arduino IoT Cloud云端服务与ChatGPT沟通互动,中间则透过一片开发板转介讯息,开发板可以是任何已经与Arduino IoT Cloud云端服务兼容的板子,例如Arduino Nano RP2040 Connect、Arduino MKR WiFi1010或任何以ESP32/ESP8266为主控芯片的开发板。

一步一步建立联机

要让Arduino IoT Cloud与ChatGPT沟通互动,还要一些前置准备,首先要到OpenAI公司的网站上申请一个账号,进而建立一组API密钥,然后在线刷信用卡付费储值,储存一些等待被耗用的token(有时翻译成令牌),一旦跟ChatGPT文字对话就会开始耗,印象中1,000个token需要0.002美元。

接着,Arduino IoT Cloud网站上要有账号可以登入,然后建立一个装置(Device)、建立一个事物(Thing)、设定变量等,而后把装置与事物关联起来,以及把装置设成可透过Wi-Fi联机。

dc824e3e-2153-11ee-962d-dac502259ad0.jpg

在Arduino IoT Cloud上设定变量

再来,开发板上要执行程序(sketch),程序其实已经有范例可用,在项目网站上可以找到,但有一些地方需要改,例如与API密钥相关的部份要改,进一步的细部修改则可以限定ChatGPT回答的最多字数,以免token的耗用速度失控,这需要改范例程序中的maxTokens变量。

关于token,无论是问(人工打字输入)或答(ChatGPT回复)都会耗用的,但输入既然是人,人可以自我克制来节约使用token,但ChatGPT的回话可能一长串,导致过度耗用token,故需要事先限制。

如果想连输入的文字也先行计算会使用多少token,其实OpenAI也提供一个在线工具Tokenizer可以试算,例如笔者打:如何买彩券?Tokenizer就回复我共计用了6个字符,等同于14个token;或笔者打:台湾今年有没有台风来?则为11个字符、28个token。token涉及ChatGPT如何拆字解析等机理,在此难以详述。

dcac45e0-2153-11ee-962d-dac502259ad0.jpg

OpenAI提供Tokenizer工具供人事先计算输入的问句会耗去多少个token

或者,也可以改用其他的API端点,这需要改apiEndpoint变量;或者也可以改变使用的语言模型,这需要调整OpenAImodel变量。另外Arduino IoT Cloud上也要建立一个仪表板(dashboard)好用来观看问答信息

附注:上述的相关工作,例如建立装置、事物、仪表板等,觉得逐一手动操作完成很累,也可以用Arduino CLI命令行方式来完成。

dcd1f48e-2153-11ee-962d-dac502259ad0.jpg

Arduino IoT Cloud上的仪表板观看ChatGPT问答记录

附带一提,也不一定要死守在桌机笔电前用浏览器来对ChatGPT打字,Arduino官方过往即有一个手机App,即Arduino IoT Cloud Remote,将App安装于AndroidiPhone手机上就可以用手机输入文字,然后获得ChatGPT回复。

此外,范例程序其实也刻意设计成开发板上的LED灯号每2秒闪烁一次,好告诉使用者板子还活着、还在动作,而不是挂掉无响应(有时问跟答都需要一段反应时间,过久没响应会真的以为停摆了),如果嫌这个灯号碍眼,也可以事先修改范例程序,将这段功能关闭。

目前只是打地基

讲到这里,各位可能觉得上述作法有点脱裤子放屁,干脆让Arduino IoT Cloud直通OpenAI的ChatGPT就好,毕竟两套服务系统都在云端,中间何必又经过一片Arduino开发板呢?

其实这是个布局,这个项目目前把Arduino IoT Cloud云端服务,当成是开发板暂时借用的输出输入界面,输入是在云端上打字,观看回复的输出也是在云端上观看,而更下一步是在开发板上建立更亲和的输入方式,例如接上麦克风与配置语音识别软件,如此就可以用发话方式,将语音转成文字传给ChatGPT。

反过来,开发板后续可以接上显示器,ChatGPT的回复可以透过显示器输出,不一定要再透过笔电或手机观看。或者,也可以透过喇叭与文字转语音功能,直接用发话方式告知询问者,如此就形同打造一个Amazon Echo系列智能喇叭,只是连到云端的部份不是使用Alexa,而是ChatGPT。同理,也类似使用Google Nest系列喇叭与Google Assistant,或者Apple的HomePod mini与Siri。

事实上确实已有其他项目具备显示器来显示ChatGPT回复的信息,运用一片128 x 64分辨率的OLED显示器来显示,开发板则是一片GIGA R1 WiFi,控制程序则用MicroPython撰写成。

dcf1005e-2153-11ee-962d-dac502259ad0.gif

用SSD1315的OLED显示器来显示ChatGPT回复的文字

最后,笔者估计未来会有愈来愈多项目用类似的发展手法,只要不是很严格要求立即反应的输入与输出,都会先用Arduino IoT Cloud或类似的云端服务来暂时充当开发的输出入接口,先得到概念验证(POC),等确实可行后,再给开发板装配上真的输出入硬件、人机互动接口等设计,类似的云端先行开发验证手法也已经用于一些芯片设计、车用信息系统设计,看来往后云端服务与技能对创客而言将愈来愈重要。

审核编辑:汤梓红

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

    关注

    119

    文章

    6198

    浏览量

    224121
  • Arduino
    +关注

    关注

    188

    文章

    6469

    浏览量

    186962
  • IOT
    IOT
    +关注

    关注

    187

    文章

    4204

    浏览量

    196704
  • Cloud
    +关注

    关注

    0

    文章

    67

    浏览量

    5353
  • ChatGPT
    +关注

    关注

    29

    文章

    1560

    浏览量

    7604

原文标题:Arduino IoT Cloud也搭上了ChatGPT热潮!

文章出处:【微信号:易心Microbit编程,微信公众号:易心Microbit编程】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    为什么arduino连接电脑后电脑就重启了?

    如题,用arduino控舵机,将程序烧入arduino UNO板中,舵机运作。两三秒后电脑自动重启,此后再次将USB线连接电脑时电脑再次自动重启。 一开始怀疑是供电不足导致的,提供了1
    发表于 10-22 19:59

    STM32参考设计之 Cloud & NB-IoT应用

    本帖最后由 kuailesuixing 于 2018-2-5 16:06 编辑 Cloud基于STM32L4 IoT探索套件的百度天工Wifi接入方案 百度天工物联网平台IoT Edge
    发表于 02-05 13:44

    如何使用Google Cloud评估板来连接到Google Cloud IoT平台?

    如何使用Google Cloud评估板作为物联网传感器端点,来连接到Google Cloud IoT平台?
    发表于 06-15 08:03

    Arm Keil Studio Cloud用户指南

    、工具和服务。 Keil Studio Cloud展示了CMSIS的下一代IDE威廉希尔官方网站 和新概念项目的格式。我们支持一系列软件示例,展示Keil RTX, FreeRTOS和IoTAmazon AWS IoT
    发表于 08-02 08:34

    基于Processing与Arduino有线OTG联机方法

    大家都知道Google公司2011年推出了命名为 ADK的开发工具,可以与Arduino硬件进行有线联机,但是Arduino硬件必须具备ADK功能,一般用的型号为Arduino Meg
    发表于 09-19 17:41 9次下载

    基于Cloud Connected Zigbee IoT ThermostatSensing的参考设计

    查看有关Cloud Connected Zigbee IoT恒温器的参考设计。 //www.obk20.com/soft/有成千上万的参考设计,可帮助您使项目栩栩如生。
    发表于 01-11 19:25 5次下载
    基于<b class='flag-5'>Cloud</b> Connected Zigbee <b class='flag-5'>IoT</b> ThermostatSensing的参考设计

    使用Alexa和Arduino IoT Cloud完全控制您的电视

    电子发烧友网站提供《使用Alexa和Arduino IoT Cloud完全控制您的电视.zip》资料免费下载
    发表于 11-02 09:48 0次下载
    使用Alexa和<b class='flag-5'>Arduino</b> <b class='flag-5'>IoT</b> <b class='flag-5'>Cloud</b>完全控制您的电视

    使用 AVR-IoT WG 评估板连接到 Google Cloud IoT

    使用 AVR-IoT WG 评估板连接到 Google Cloud IoT
    的头像 发表于 01-03 09:45 666次阅读

    使用 Renesas AE-CLOUD2 将 GPS 数据发送到 Google Cloud IoT

    使用 Renesas AE-CLOUD2 将 GPS 数据发送到 Google Cloud IoT
    的头像 发表于 01-04 11:17 682次阅读

    Arduino IoT Cloud的帮助下创建植物通讯器

    电子发烧友网站提供《在Arduino IoT Cloud的帮助下创建植物通讯器.zip》资料免费下载
    发表于 01-31 14:44 0次下载
    在<b class='flag-5'>Arduino</b> <b class='flag-5'>IoT</b> <b class='flag-5'>Cloud</b>的帮助下创建植物通讯器

    IoT ONE Nixie Clock Arduino Cloud背光控制

    电子发烧友网站提供《IoT ONE Nixie Clock Arduino Cloud背光控制.zip》资料免费下载
    发表于 06-14 14:33 0次下载
    <b class='flag-5'>IoT</b> ONE Nixie Clock <b class='flag-5'>Arduino</b> <b class='flag-5'>Cloud</b>背光控制

    GuessMe:为Arduino Cloud Games挑战而打造的游戏开源

    电子发烧友网站提供《GuessMe:为Arduino Cloud Games挑战而打造的游戏开源.zip》资料免费下载
    发表于 06-14 11:32 0次下载
    GuessMe:为<b class='flag-5'>Arduino</b> <b class='flag-5'>Cloud</b> Games挑战而打造的游戏开源

    使用Arduino Cloud随时随地了解您家的温度

    电子发烧友网站提供《使用Arduino Cloud随时随地了解您家的温度.zip》资料免费下载
    发表于 06-19 15:38 0次下载
    使用<b class='flag-5'>Arduino</b> <b class='flag-5'>Cloud</b>随时随地了解您家的温度

    Arduino IoT Cloud ESP32 Alexa Control智能家居

    电子发烧友网站提供《Arduino IoT Cloud ESP32 Alexa Control智能家居.zip》资料免费下载
    发表于 06-26 14:49 0次下载
    <b class='flag-5'>Arduino</b> <b class='flag-5'>IoT</b> <b class='flag-5'>Cloud</b> ESP32 Alexa Control智能家居

    告别繁琐的云平台开发!IoT_CLOUD之 百度云

    ​众所周知,市面上有很多云平台,并且每家云平台都有自己的协议,工程师要移植不同的SDK代码或基于各家的手册文档对接不同的协议,看着都头大!!! 为解决繁琐的云平台开发困扰, IoT_CLOUD
    的头像 发表于 10-31 07:23 182次阅读
    告别繁琐的云平台开发!<b class='flag-5'>IoT_CLOUD</b>之 百度云