当GPT与MCU深度融合……

全文2189字,阅读约需7分钟,帮我划重点

划重点

01OpenAI发布了可在Linux和32位MCU上使用的Realtime API SDK,引发工程师热议。

02该SDK基于OpenAI最新WebRTC技术开发,能提供极低延迟的语音对话体验。

03目前,该SDK主要在ESP32S3和Linux平台上开发和测试,开发者无需物理硬件即可直接在Linux上使用。

04除此之外,OpenAI还提供了一个可在以ESP32为代表的微控制器上使用Open Realtime API的SDK。

05由于ESP32价格便宜、集成度高,且已集成Wi-Fi、蓝牙和语音处理功能,使其成为实现语音对话AI玩具的控制芯片的理想选择。

以上内容由腾讯混元大模型生成,仅供参考

生命不止,折腾不息。有很多工程师,都尝试过将MCU与OpenAI的ChatGPT结合,做出聊天机器人、语音助手和自然语言界面。

前几天,在OpenAI正式发布o3模型时,同时也宣布了一个可以在Linux和32位MCU上使用的Realtime API SDK,引发一片工程师的热议。


OpenAI给32位MCU做了个SDK



近期,OpenAI在其官方GitHub仓库中发布了一个可在以ESP32为代表的微控制器上使用 Open Realtime API的SDK,该项目已在ESP32-S3和Linux上开发并测试,开发者可以直接按照指引使用。

图片

这个SDK主要为嵌入式硬件设计,目前只验证了乐鑫ESP32S3。这个SDK基于OpenAI最新WebRTC技术开发,能提供极低延迟的语音对话体验。

OpenAI在发布会上展示了一个圣诞主题的AI玩具,里面MCU用到了ESP32。在demo中,工程师与AI玩具进行了四五轮对话,基本上是自然的聊天,没有明显的延迟或反应时间,与之前的网页demo表现一致。

图片


Github上有什么东西



根据Github页面显示(https://github.com/openai/openai-realtime-embedded-sdk),openai-realtime-embedded-sdk 是为微控制器量身定制的 SDK,使开发者能够在 ESP32 等微控制器上实现实时API功能。

该SDK主要在ESP32S3和Linux平台上开发和测试,因此开发者无需物理硬件即可直接在 Linux 上进行使用。

若要在硬件上使用此SDK,请购买以下任一款微控制器。其他MCU可能也能兼容,但该SDK基于以下设备开发:

  • Freenove ESP32-S3-WROOM;

  • Sonatino - ESP32-S3 Audio Development Board。

不过,我们发现,在examples文件夹,可以看到除了ESP32,也有一个通用和一个树莓派的例子,在树莓派文件夹中,硬件选用了Raspberry Pi 4B、Camera Module、ReSpeaker 2-Mics Pi HAT和Speaker。所以,也许嵌入式设备可能也会慢慢也会支持这个SDK。

图片

通过配置 Wi-Fi SSID、密码和 OpenAI API 密钥,用户可以轻松设置设备并运行程序。该 SDK 的关键优势在于为微控制器提供与强大 API 交互的能力,拓展了微控制器在实时数据处理和决策等场景中的应用潜力。

需求人群:目标受众包括嵌入式系统开发者、物联网设备制造商以及需要在微控制器上实现智能决策的科研人员。该 SDK 因其易于集成和使用的特性,特别适合那些寻求在资源受限设备上实现高级数据处理能力的用户。

使用场景示例:

  • 智能家居:在ESP32上使用SDK实现语音控制功能;

  • 工业自动化:通过SDK使微控制器实时响应传感器数据;

  • 科研领域:利用SDK进行机器学习模型的实时推理。

根据工程师的分析,demo基本是一个工程实现,最大优点在于WebRTC协议的API大大简化开发者调用API的流程。众所周知,嵌入式开发基本都用C/C++,这种老旧语言特别麻烦,尤其是涉及到实际业务场景时,要手动处理的case多得让人头大。用了WebRTC后,几百行C代码就能搞定这demo。

具体来看,repo结构只有一个commit,demo代码文件只有六个文件。项目引用了几个开源库,分别是:libopus(用于音频编码解码)、esp-protocols(操控ESP集成的硬件,连接Wi-Fi,录音等)、libpeer(用于WebRTC通信)。

主程序基本没有什么复杂的内容,就是调用一下包,开 Wi-Fi,开始录音,播放,连接 Wi-Fi,再连接WebRTC到OpenAI的API。每个函数实现不到100行,整个demo去掉和PC 兼容的部分,开发者实际编译到芯片上运行的代码也就300行。

图片


为什么OpenAI选择ESP32



工程师分析,根据产品需求,做语音对话 AI 玩具的控制芯片有两个基本要求:

  • 联网功能,无论是Wi-Fi还是蓝牙;

  • 语音处理,支持录音和播放。

这两个是硬性需求,其他功能就不那么重要了,尤其是在Arm领域擅长的视频处理,例如大屏显示等,AI玩具恰好不需要这些。

与传统单片机相比,ESP32在智能家居时代崭露头角的新玩家,恰好能完美满足这些需求。

第一,ESP32价格便宜,集成度高,单颗芯片成本仅几美元;

第二,ESP32 的设计本身就针对低功耗场景,搭配电池后可以实现数周甚至数月的续航;

第三,ESP32 已经集成了 Wi-Fi、蓝牙和语音处理功能,避免了外接模块的需求,进一步降低了电路板设计的复杂性和成本,同时提升了产品的续航表现。

相比其他常见的单片机解决方案,虽然实现方式多种多样,但最简便、最省力的方案就是使用 ESP32。试问哪个硬件工程师能拒绝只用一颗芯片的设计呢?


更多嵌入式SDK在路上



“2024 火山引擎冬季 Force 原动力大会”上,多个硬件厂商展示了基于RTC技术的产品 demo。而在此次大会上,字节的产品经理提到嵌入式SDK,虽然并未详细透露支持的硬件型号,但毋庸置疑的是,SDK正在路上。

Apex.AI也在做这个工作。根据Apex.AI介绍,Apex.Grace产品增强了ROS 2,Apex.Ida增强了Eclipse iceoryx。通过用于微处理器的Apex.AI SDK,我们在开源项目的基础上提供更多特性、改进的功能和附加的安全认证。随着新的微控制器Apex.AI SDK推出,将在开源项目的基础上继续这一成功之路。据了解,目前Apex.AI已将Xilinx Ultrascale+ MPSoC 和Infineon AURIX TC399作为内部项目添加到新平台中。根据经验,添加一个新平台只需几周时间。

· END ·



欢迎将我们设为“星标”,这样才能第一时间收到推送消息。


和电子工程师们面对面交流经验