10分钟把小爱音箱接入ChatGPT:MiGPT免费AI语音助手部署指南
2026/9/14 15:50:45 网站建设 项目流程

10分钟把小爱音箱接入ChatGPT:MiGPT免费AI语音助手部署指南

【免费下载链接】mi-gpt🏠 将小爱音箱接入 ChatGPT 和豆包,改造成你的专属语音助手。项目地址: https://gitcode.com/GitHub_Trending/mi/mi-gpt

MiGPT 是一个把小爱音箱接入 ChatGPT、豆包等大模型的开源项目。这篇指南带你走通 Docker 三步部署、关键配置参数和常见报错速查,零基础也能在 10 分钟内让音箱变成会连续对话的 AI 语音助手。

🎙️ 小爱音箱接上 MiGPT 后能干什么

有没有遇到过音箱回答简单问题像"装聋作哑"?接上 MiGPT 后,小爱同学不再受限于内置知识库。

  • AI 问答:"小爱同学,请问地球为什么是圆的",大模型直接回答,不再"我不太清楚"
  • 角色扮演:几行配置调教出专属人设,音箱变成有记忆、能听你倾诉的搭子
  • 长短期记忆:记住你们的每一次对话,越聊越默契
  • 流式响应:边生成边播放,不用等整段答完
  • 换音色:接入第三方 TTS,用上豆包同款音色

🐳 MiGPT Docker三步部署步骤

不想装 Node 环境?Docker 是最省事的路径,全程 10 分钟内。

第一步:获取代码

git clone https://gitcode.com/GitHub_Trending/mi/mi-gpt cd mi-gpt

项目支持大部分小爱音箱型号,推荐小爱音箱 Pro(运行最稳),不支持小度、天猫精灵。MiGPT 走的是云端接口,不需要和音箱在同一局域网。

先在米家中搜一下你的音箱型号,确认兼容:

第二步:准备两个配置文件

.env.example重命名为.env,填入大模型密钥:

OPENAI_MODEL=gpt-4o-mini OPENAI_API_KEY=你的密钥

想接通义千问、DeepSeek 等模型,只需改OPENAI_BASE_URL和模型名,不用改代码。

再把.migpt.example.js重命名为.migpt.js,填入小米账号和音箱信息:

❌ 错误:用手机号或邮箱当小米 ID ✅ 正确:在小米账号「个人信息」页查看纯数字的小米 ID

音箱名did要和米家中的名称一字不差,错别字、多余空格、大小写不一致,是"找不到设备"的三大元凶。

第三步:一条命令启动

docker run -d --env-file $(pwd)/.env -v $(pwd)/.migpt.js:/app/.migpt.js idootop/mi-gpt:latest

Windows 终端里请把$(pwd)换成文件绝对路径。控制台看到"服务已启动"即成功:

之后有三种召唤方式:

  • "小爱同学,请 xxx"、"小爱同学,你 xxx":单次问答
  • "小爱同学,召唤 xxx":进入唤醒模式,可以连续对话,不用每句都唤醒
  • 唤醒模式 30 秒没说话会自动退出;想让小爱闭嘴,直接说"小爱同学,请你闭嘴"

⚡ 让它更好用:3个提速与个性化优化

第一次跑通后觉得小爱反应慢?默认参数偏保守,先试这 3 项优化。

1. 去掉提示语的等待

AI 回答前默认会说"让我先想想",结束后说"我说完了",每次多出 1-2 秒。设成空数组即可关闭:

speaker: { onAIAsking: [], onAIReplied: [], }

2. 用小爱自带 TTS

tts设为"xiaoai",由音箱直接播报,少一次网络合成,首响应明显变快。

3. 缩短连续对话的停顿

speaker: { checkInterval: 500, // 播放状态检测间隔,最低 500ms }
优化项改前改后
提示语回答前后多等 1-2 秒直接开始回答
TTS 引擎第三方联网合成小爱自带,少一次请求
检测间隔默认 1 秒0.5 秒,停顿感更弱

如果还是慢,把.env里的OPENAI_MODEL换成gpt-3.5-turbogpt-4o这类响应更快的模型。改完.migpt.js记得重启 docker 容器才生效。

个性化方面,改.migpt.js里的bot.namebot.profile就能换人设,callAIKeywordswakeUpKeywords可换触发词。注意"小爱同学"这个唤醒词是音箱固件写死的,改不了。

🛠️ MiGPT 常见报错速查表

启动失败或 AI 不响应,先对表自查,多数问题都在这里:

报错/现象原因处理
70016 登录验证失败账号密码错,或拿手机号当小米 ID换成纯数字小米 ID
触发异地登录保护在不同网络环境登录同网络下登录小米官网验证,等约 1 小时
找不到设备:xxxdid 与米家名称不一致核对错别字、空格、大小写
ERR_MODULE_NOT_FOUND.migpt.js缺失或有错检查挂载路径,Windows 用绝对路径
LLM 异常 401API 密钥无效验证OPENAI_API_KEY是否可用
LLM 连接异常模型服务访问不通设置HTTP_PROXY或换国内模型
回复不播放该型号 TTS 指令不匹配查设备指令,改ttsCommand
话说一半就停查不到播放状态playingCommand或关闭streamResponse

"不播放""戛然而止"基本都是设备指令配置问题,可以按型号查指令规格:

还找不到原因,按这个流程走:

启动失败 → 看控制台报错 ├─ 账号类(70016/异地登录)→ 查小米 ID、登录网络 ├─ 设备类(找不到设备)→ 查 did,或开调试模式定位 └─ 配置类(MODULE_NOT_FOUND)→ 查文件挂载 AI 异常(4xx)→ 按 key、模型名、网络顺序排查

.migpt.js里设debug: true可以输出详细日志,帮助定位。

另外"小爱会在 AI 回答前抢话"是轮询机制的已知限制,存在约 1-2 秒延迟,可以缓解但无法彻底消除。

🧩 还能玩出什么花样

基础对话跑通了,想更进一步?

  • 豆包同款音色:接入第三方 TTS,在.env里填TTS_BASE_URL,教程见 docs/tts.md
  • 本地模型:用 Ollama 等部署,自带 OpenAI 兼容接口,改环境变量即可接入
  • 多音箱:每个账号/设备建一个 docker 容器
  • 深挖实现:核心服务代码在 src/services/,从音箱控制到大模型调用都能看懂

进阶人设改配置里的系统提示词模板systemTemplate,想让它怎么说话都由你定。

写在最后

剩下的就是慢慢调教:换人设、换音色、接国内模型。现在就去拉下项目,填好两个配置文件,10 分钟后让小爱答上第一个大模型问题。

参数细节看 docs/settings.md,遇到问题先翻 docs/faq.md,答案大概率在那里。

【免费下载链接】mi-gpt🏠 将小爱音箱接入 ChatGPT 和豆包,改造成你的专属语音助手。项目地址: https://gitcode.com/GitHub_Trending/mi/mi-gpt

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询