238C2BB095E1E9ED62ECD0B00264D4B2.jpg

前沿

最近deepseek太火了,万物都要想着智能化,小爱音箱本身就是AI音箱,如果要是能接入大模型,那岂不是要“起飞”。

之前小爱触屏音箱刷机安装第三方软件(想了解的看这里,小爱触屏音响刷机安装第三方应用),手头正好有一个设备,还有一个小爱音箱mini,于是乎折腾起来,开搞。

需要准备部署Docker的电脑或服务器,还有各种AI开发平台账号,提前注册准备好。

由于本地要一直启动一个服务,所以我拿出了我的n1盒子刷的iStoreOS,然后用它的docker部署服务。直接用balenaEtcher工具,烧录下载好的iStoreOS固件,然后U盘启动刷机就可以了。这里不做细说,总之你有安装服务的机器就可以了。

视频教程

本次教程设计相关开源项目:

核心开源项目:https://github.com/idootop/mi-gpt 

👋 项目简介

在这个数字化的世界里,家已不仅仅是一个居住的地方,而是我们数字生活的延伸。

MiGPT 通过将小爱音箱、米家智能设备,与 ChatGPT 的理解能力完美融合,让你的智能家居更懂你。

MiGPT 不仅仅是关于设备自动化,而是关于:打造一个懂你、有温度、与你共同进化的家。

设备要求

MiGPT 支持大部分的小爱音箱型号,推荐使用小爱音箱 Pro(完美运行)

👉 查看更多兼容的小爱音箱型号和配置参数

支持型号.png

正常运行.png

注意:本项目暂不支持小度音箱、天猫精灵、HomePod 等智能音箱设备,亦无相关适配计划。

前提须知

小爱音箱必须是自己账号接入米家的设备,如果你是网上淘的机器,刷机过,无法接入米家的,是无法使用的。

部署miGPT-Server

我这里使用docker部署,iStoreOS拉去镜像失败,可以用小雅的工具,筛选出可用的镜像源,总之保证能拉去成功镜像,拉取成功后,在使用下方命令启动。

1.下载镜像

Markup
docker pull lmk123/migpt-server

2.终端中运行

Markup
docker run -d --name migpt-server -p 36592:36592 lmk123/migpt-server

3. 打开 http://localhost:36592

如果你是部署在服务器里的 Docker,请使用服务器的 IP 地址替换 localhost,例如 http://192.168.X.X:36592

项目配置

人设:自己根据喜好设置,机器人,主人名字。

人设.png

音箱:选择自己型号的音箱。

小米账户 ID 获取:https://account.xiaomi.com/fe/service/account/profile 

设备 ID:用小米音箱 APP 中获取

音箱设置.png

AI 服务:配置相应的大模型。

AI 服务.png

硅基流动-配置:https://migptgui.com/docs/apply/siliconflow 

DeepSeek-配置:https://migptgui.com/docs/apply/deepseek 

豆包-配置:https://migptgui.com/docs/apply/doubao 

其他模型配置:https://migptgui.com/docs/apply/ 

在线配置工具:https://migptgui.com/gui 


全部配置完,启动服务,有错误,先排查错误,没问题进行测试


原理补充:

    AI 唤醒状态的运行流程大致如下:

  1. 通过唤醒词进入唤醒模式,比如:打开豆包,召唤豆包等。

  2. 当 AI 开始流式响应时,根据合适的长度 chunk 句子片段,调用 TTS 指令播放句子。

  3. 下发完 TTS 指令后,默认会等待 3s ,然后轮询查询接口检查当前设备是否在播放中。

  4. 当设备停止播放时,说明上一句已经 TTS 结束了,继续 TTS 播放下一句 AI 回复。

  5. 当在播放 AI 回复时,如果收到了新的用户消息,则终止当前的后续回复,处理新的用户消息。

  6. 当全部回复播放完毕后,会调用 wakeUpCommand 主动唤醒小爱,使其可以持续对话,省去了每一句都需要以“小爱同学”开头唤醒的麻烦。不过需要注意的是,这个唤醒是有时效的,当小爱回复说完了的时候,大概 10s 之内都可以正常继续回答,时间过久小爱也会自己取消唤醒状态。

  7. 如果当前 AI 没有正在回复,则通过循环播放静音音频 mute 小爱可能会随时会出现的回复。

  8. 当超过一段时间没有新对话产生时,会自动退出唤醒状态(也可以通过退出关键词手动触发)。