微信扫码
添加专属顾问
我要投稿
探索字节跳动迷你AI硬件,体验本地实时声控AI的丝滑快感!核心内容:1. 字节跳动迷你AI硬件介绍及其功能亮点2. 详细教程:本地安装、配置AI硬件的三大步骤与11小步3. 火山引擎提供的实时TTS和STT服务,及其智能体调用方法
非常流畅、丝滑
袋鼠帝,公众号:袋鼠帝AI客栈体验完字节送的迷你AI硬件,后劲太大了...
PS:上篇文章评论区本来是置顶了AI硬件的购买链接,但是后面莫名其妙消失了,估计是被公众号官方隐藏了...
主要是上次我演示的时候使用的默认音色,确实莫得感情,然后大模型也没有经过prompt调整,就显得很话痨。但主要亮点还是在实时回复,实时打断,实时接话上面,以及客服端和服务端代码开源,支持高自由度的DIY
建议大家先看看教程,如果觉得搞不定,或者没有达到预期,就不要随便购买哦。
1.AI硬件(客户端)
2.服务端(可自己部署):可以自定义大模型的prompt,自定义配置大模型地址,比如可以切换成fastgpt智能体,OpenAI的大模型,硅基流动,n8n等等...
3.火山引擎:提供实时、丝滑的TTS(文本转语音)和STT(语音识别)服务,同时也可以提供智能体、大模型调用服务。
PS:虽然这个AI硬件很nice,但毕竟是新出的,所以安装啥的步骤忒多,比较原始,本次教程应该是目前我出的所有喂饭级教程里面,难度最高的,我愿称之为地狱级难度!
欢迎大家迎接这次挑战~
教程的内容还包含之前遇到过的一些问题,可以帮大家避避坑~
也可参考火山官方文档:
https://www.volcengine.com/docs/6348/1315561
其实Windows应该也能烧录,但是可能需要一个转接线(一头是Type-c,一头是USB)
pip3 install requests 或者 pip install requests安装依赖
2.下载并配置工程(服务端)
服务端代码是开源的,Github地址:
git clone https://github.com/volcengine/rtc-aigc-embedded-demo.git
rtc-aigc-embedded-demo/server/src/
打开服务端代码
RtcAigcConfig.py
设置如下参数
# 鉴权 AK/SK。前往 https://console.volcengine.com/iam/keymanage 获取
AK = "yzitS6Kx0x*****fo08eYmYMhuTu"
SK = "xZN65nz0CFZ******lWcAGsQPqmk"
# 实时音视频 App ID。前往 https://console.volcengine.com/rtc/listRTC 获取或创建
RTC_APP_ID = "678e1574*****b9389357"
# 实时音视频 APP KEY。前往 https://console.volcengine.com/rtc/listRTC 获取
RTC_APP_KEY = "dc7f8939d23*******bacf4a329"
# 大模型推理接入点 EndPointId 前往 https://console.volcengine.com/ark/region:ark+cn-beijing/endpoint?config=%7B%7D 创建
DEFAULT_BOT_ID = "ep-202******36-plsp5"
# 音频生成大模型-语音合成大模型 Voice_type,前往 https://console.volcengine.com/speech/service/10007 获取
DEFAULT_VOICE_ID = "zh_female******_bigtts"
# 语音识别大模型-流式语音识别大模型 APPID 前往 https://console.volcengine.com/speech/service/10011 获取
ASR_APP_ID = "274****256"
# 音频生成大模型-语音合成大模型 APPID,前往 https://console.volcengine.com/speech/service/10007 获取
TTS_APP_ID = "274****256"
# 服务端监听端口号,你可以根据实际业务需求设置端口号
PORT = 8080
大模型推理接入点
获取DEFAULT_VIOCE_ID
获取ASR_APP_ID
获取TTS_APP_ID
由于某些原因,火山的这个开源服务端代码,还未更新到最新版。所以需要把源码中的服务端代码文件(RtcAigcService.py),替换一下
在公众号后台私信:“字节硬件” 获取服务端最新RtcAigcService.py文件
然后把原来的替换掉
位置:rtc-aigc-embedded-demo/server/src/
并且需要打开RtcAigcService.py,在161行,改一个配置
将token更换成自己的token,然后保存
token在下图位置获取
python3 RtcAigcService.py
打开终端
安装 CMake 和 Ninja 编译工具
brew install cmake ninja dfu-util
clone 乐鑫ADF 框架
git clone https://github.com/espressif/esp-adf.git
进入esp-adf目录
cd esp-adf
切换到乐鑫ADF指定版本
git reset --hard 0d76650198ca96546c40d10a7ce8963bacdf820b
同步各子仓代码
git submodule update --init --recursive
安装乐鑫 esp32s3 开发环境相关依赖
./install.sh esp32s3
成功安装所有依赖后,命令行会出现如下提示
All done! You can now run:
. ./export.sh
有遇到上图问题的朋友去GitHub上面找,这是Github的截图
设置环境变量
PS:每次打开命令行窗口均需要运行该命令进行设置
. ./export.sh
2.下载并配置工程
我们需要先将实时对话式 AI 硬件示例工程 clone 到 乐鑫 ADF examples 目录下
进入 esp-adf/examples 目
cd $ADF_PATH/examples
clone 实时对话式 AI 硬件示例工程
git clone https://github.com/volcengine/rtc-aigc-embedded-demo.git
打开设备端配置文件
rtc-aigc-embedded-demo/client/espressif/esp32s3_demo/main/Config.h
设置如下参数(从服务端配置里面拿过来即可)
-
-
-
-
-
-
-
-
-
-
-
// 你的服务端地址:监听端口号
// 服务端设置的大模型 EndPointId
// 服务端设置的音频生成大模型-语音合成大模型 Voice_type
// 服务端设置的实时音视频 APPID
注意:上面填的服务端地址,如果服务端是在本地,一定要填电脑的局域网IP地址(内网地址)
接下来禁用乐鑫工程中的火山组件
进入 esp-adf 目录
cd $ADF_PATH
禁用乐鑫工程中的火山组件
git apply $ADF_PATH/examples/rtc-aigc-embedded-demo/0001-fix-disable-volc-engine-in-esp.patch
更新 AtomS3R 开发板补丁
git apply $ADF_PATH/examples/rtc-aigc-embedded-demo/0001-add-atoms3r-board.patch
3.编译固件
esp-adf/examples/rtc-aigc-embedded-demo/client/espressif/esp32s3_demo 目录下编译固件
进入 esp32s3_demo 目录
cd $ADF_PATH/examples/rtc-aigc-embedded-demo/client/espressif/esp32s3_demo
设置编译目标平台
idf.py set-target esp32s3
设置WIFI账号密码
idf.py menuconfig
进入 Example Connection Configuration
菜单,在 WiFi SSID
及 WiFi Password
中填入你的 WIFI 账号和密码,保存并退出配置菜单。
WIFI SSID,其实就是你的wifi名称
用键盘的上下键来控制选择,回车是打开,也是保存,保存最终的配置请按s,保存之后连续按键盘的esc退出。
进入 Audio HAL
菜单,在 Audio board
中选择你的开发板型号。(例如: 方舟开发板选择 M5STACK-ATOMS3R
)保存并退出配置菜单
编译固件
idf.py build
4.烧录并运行示例Demo
最后,我们需要将调整好的客户端配置和代码通过数据线传输进AI硬件中,这个过程有个专业术语叫做「烧录」
先打开乐鑫开发板电源开关
烧录固件
idf.py flash
运行示例 Demo 并查看串口日志输出
idf.py monitor
启动之后,正常会先回复一个欢迎语(带声音的)
如果想要退出日志,请按 control + 】
如果启动后发现跑不起来,可以复制红色的报错内容丢给AI(Claude、Gemini2.5 pro、DeepSeek等)
或者把Flash Size 从16MB改成8MB
还是先执行 idf.py menuconfig 进入菜单配置
然后进入Serial flasher config菜单,把Flash Size 从16MB改成8MB
保存,退出。
注意:无论是修改menuconfig还是修改客户端的Config.h,修改之后都需要保存,并重新执行编译、烧录流程
idf.py build
idf.py flash
idf.py monitor
好了,以上就是本期所有啦
由于篇幅原因,这款本地AI硬件的DIY玩法(接入coze、fastgpt、MCP等)将放在后续的文章中给大家分享。
本次分享的内容,实操起来还是挺难的,我第一次搞也花了将近2天...
我们,下期见
能看到这里的都是凤毛麟角的存在!
如果觉得不错,随手点个赞、在看、转发三连吧~
如果想第一时间收到推送,也可以给我个星标⭐
谢谢你耐心看完我的文章~
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-04-30
Browser Use - 让AI能够控制你的浏览器
2025-04-30
手搓完字节AI硬件,我做了个五一智能旅行小装置(附万字沉浸式教程)
2025-04-30
Deepseek时代,智能硬件能带来新的“GPT时刻”吗?
2025-04-30
什么?动动嘴就能让大模型帮你整理电脑桌面?!
2025-04-28
EdgeLLM:数据并行、端到端编译器与混合精度的 CPU-FPGA 加速架构
2025-04-28
Nacos 3.0 正式发布:MCP Registry、安全零信任、链接更多生态
2025-04-28
理想汽车AI新技术曝光,人工智能企业真不是李想说说而已。
2025-04-28
我见过最聪明的浏览器 Dia,别争论什么是AI Native产品了,这个就是!
2024-03-30
2024-05-09
2024-07-23
2024-07-07
2025-02-12
2024-07-01
2024-06-24
2024-06-23
2024-10-20
2024-06-08