想让你的毛绒玩具或公仔会说话、带点情感?现在的方案要么贵得离谱、复杂到头大,要么得一直连着手机,用起来超级麻烦。
GitHub 上的开源项目 ElatoAI 带来了一个超棒的解决方案!它用 ESP32 微控制器和 OpenAI Realtime API 打造,让你的玩具秒变聪明又贴心的 AI 小伙伴。不仅能连续聊上10分钟以上,语音识别和回应还特别自然流畅,感觉就像真人在陪你唠嗑!
为什么我爱上了 ElatoAI
ElatoAI 不只是个技术玩具,它能真正改变我们与玩具互动的方式。想象一下,你家里的泰迪熊突然能用不同的声音和性格与你聊天,讲故事,甚至教你新知识!
我最喜欢的应用场景:
· 给孩子的智能伙伴:孩子毛绒恐龙现在会讲恐龙知识和睡前故事
· 老人的贴心伴侣:给老人做一个会聊天的毛绒猫,每天陪她聊天
· 语言学习助手:自己用它练习日语,比单纯的语言 APP 有趣多了
动手实现你自己的 AI 玩具
硬件准备
你需要这些组件(在网上大约花了60美元买齐):
· ESP32-S3 开发板
· INMP441 MEMS 麦克风
· MAX98357A 扬声器放大器
· 小型扬声器
· 按钮和 RGB LED(可选)
软件设置步骤
我按照以下步骤成功搭建了系统:
- 克隆代码库并设置 Supabase
git clone https://github.com/akdeb/ElatoAI.git
cd ElatoAI
brew install supabase/tap/supabase
supabase start
- 配置前端
cd frontend-nextjs
npm install
cp .env.example .env.local
在 .env.local 文件中,你需要设置:
NEXT_PUBLIC_SUPABASE_ANON_KEY = 你的 Supabase 密钥
OPENAI_API_KEY = 你的 OpenAI API 密钥
然后启动前端服务:
npm run dev
- 启动 Deno 服务器
cd ../server-deno
cp .env.example .env
同样在 .env 文件中设置你的密钥,然后:
deno run -A --
env-file
=
.env main.ts
- 配置 ESP32 固件
这是最关键的部分。在 firmware-arduino/src/Config.cpp 文件中,你需要设置你的本地 IP 地址:
将这里的 IP 地址改为你电脑的 IP 地址(可以通过 ifconfig 命令查看)。
然后使用 PlatformIO 上传固件到 ESP32 设备。上传后,ESP32 会创建一个名为 ELATO-DEVICE 的 WiFi 热点,连接它并访问 http://192.168.4.1 来配置设备连接到你的家庭 WiFi。
创建自定义 AI 角色的代码实例
这是我最喜欢的部分!通过前端界面,你可以创建各种有趣的 AI 角色。以下是创建角色的核心代码: BuildDashboard.tsx:113-136
这段代码允许你设置AI角色的声音特征和情感基调。我创建了一个"海盗船长"角色,设置了粗犷的声音和冒险的情感基调,效果超赞!
你还可以通过情感选择器来设定角色的情感色彩: BuildDashboard.tsx:390-408
实际使用体验
设置完成后,使用非常简单:
-
将设备固定在玩具上(我用了魔术贴)
-
在网页应用中选择你创建的 AI 角色
-
按下设备上的按钮开始对话
系统的工作流程如下图所示:
实际使用中,全球范围内的延迟不到1秒,音质清晰(使用 24kbps 的 Opus 编解码器),对话体验非常流畅!
调整设备设置
连接设备后,你可以通过设置页面调整音量等参数: AppSettings.tsx:169-185
懒人选择:直接购买成品
如果你不想自己动手,也可以直接购买现成的产品:
-
Elato AI 设备:55美元,可以附加到任何玩具上
-
Elato AI 开发套件:45美元,包含所有必要组件,适合开发者
使用小贴士
-
电池选择:我使用了 3.7V 的锂电池,续航能力约4-5小时
-
外壳设计:我用 3D 打印做了一个小巧的外壳,完美隐藏在玩具内部
-
麦克风位置:尽量将麦克风放在玩具前部,提高拾音效果
-
网络要求:确保 WiFi 信号良好,这对实时对话至关重要
为什么值得推荐给朋友
我已经向几位朋友推荐了这个项目,他们都被深深吸引。对于开发者朋友,这是学习现代技术栈的绝佳项目;对于有孩子的朋友,这是创造独特玩具体验的好方法;对于照顾老人的朋友,这能提供贴心的陪伴。
最让我惊喜的是,一个设计师朋友(技术小白)在开源项目和文档的帮助下,也成功设置了自己的 AI 玩具,并且每天都在使用!
小结
ElatoAI 真的改变了我对玩具的看法。它不仅是一个技术项目,更是一种创造个性化 AI 伴侣的方式。无论你是技术爱好者还是普通用户,都能从中获得乐趣和价值。
动手试试吧,你会爱上这个项目的!如果遇到问题,欢迎在 GitHub 上提问或贡献代码。
注意事项
本文介绍了如何使用 ElatoAI 开源项目创建 AI 交互玩具,包括硬件组装、软件配置和实际使用体验。项目支持 DIY 构建和购买成品两种方式。主要技术包括 ESP32 硬件、OpenAI API、WebSocket 通信和 Next.js 前端。
Github 项目地址: