news 2026/9/14 17:58:57

MiGPT 从 0 到 1 部署教程:小爱音箱接入大模型,打造你的智能音箱 AI 助手

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MiGPT 从 0 到 1 部署教程:小爱音箱接入大模型,打造你的智能音箱 AI 助手

MiGPT 从 0 到 1 部署教程:小爱音箱接入大模型,打造你的智能音箱 AI 助手

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

家里的小爱音箱只会放歌、问点别的就答非所问?MiGPT 能把它接入大语言模型,让普通小爱音箱也能自然对话。这篇 MiGPT 部署教程带你从 0 到 1:装环境、配.env、选模型、调参数、排故障,一步步把它调成你的智能音箱 AI 助手。

先看它能干啥

说白了,MiGPT 就是给小爱音箱装了个"AI 大脑"。你喊"小爱同学,请 xxx",它不再只会答预设指令,而是调用大模型理解你的话,再用 TTS 念回来。装上之后,变化主要有这么几个:

  • 💬自然对话:能上知天文下知地理,问啥都能聊,不再是"人工智障"。
  • 🔁连续对话:进入唤醒模式后,不用每句都喊"小爱同学",可以连着问。
  • 🎭角色设定:一句话给它立人设("你是傻妞"),语气、性格随你定。
  • 🧠长短期记忆:它能记住你们聊过的细节,越用越懂你。
  • 🔊换音色:接第三方 TTS 后,音色不再只有小爱那一种。

你的设备在名单里吗?

先别急着装,MiGPT 只支持小米生态的小爱音箱,小度、天猫精灵、HomePod 都不在名单里,也没适配计划。不同型号支持程度差很多,核心差别在于:能不能查到设备的播放状态——能,就能开连续对话;不能,就只能整句播报。

设备支持度注意点推荐度
小爱音箱 Pro(LX06)✅ 完美运行官方首选,连续对话最稳⭐⭐⭐⭐⭐
Xiaomi 智能音箱 Pro(OH2P)、小米 AI 音箱(S12)等✅ 完美运行要配对应ttsCommand/wakeUpCommand⭐⭐⭐⭐⭐
小爱音箱 Play(L05B)、mini(LX01)等🚗 正常运行查不到播放状态,关掉streamResponse⭐⭐⭐
小米小爱音箱 HD(SM4)、蓝牙随身版❌ 不支持无适配计划
小度 / 天猫精灵 / HomePod❌ 不支持仅支持小米生态

购买前怎么查规格:打开米家看设备的名称和型号(比如LX06),对照 兼容型号列表;具体的指令参数(play-textplaying-state对应的 siid/piid)要到小米 MIoT 规格站按型号查。型号对得上,基本就稳了。

从 0 到 1:把 MiGPT 装起来

一条线走下来就行,不折腾。

1. 环境准备

  • 跑源码:装 Node 20 + pnpm。跑 Docker:装好 Docker 即可。
  • 一个小米账号(记住:登录用的是小米 ID,不是手机号/邮箱)+ 一台上面的小爱音箱。

2. 拉代码装依赖(源码方式;Docker 可直接拉镜像)

git clone https://gitcode.com/GitHub_Trending/mi/mi-gpt cd mi-gpt && pnpm install && pnpm build

3. 配账号与.env

  • .env.example复制成.env,填模型信息(国内服务示例,详见 参数设置):
OPENAI_API_KEY=你的密钥 OPENAI_MODEL=qwen-turbo OPENAI_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
  • .migpt.example.js复制成.migpt.js,配设备:
speaker: { userId: "小米ID", // 不是手机号/邮箱 password: "账号密码", did: "小爱音箱Pro", // 和米家中设备名一字不差 ttsCommand: [5, 1], wakeUpCommand: [5, 3], }

4. 启动验证

# 源码方式 pnpm dev # 或 Docker 方式 docker run -d --env-file $(pwd)/.env -v $(pwd)/.migpt.js:/app/.migpt.js idootop/mi-gpt:latest

对着音箱说"小爱同学,请 介绍一下你自己",听到它用大模型的味道回答你,就成了。

把体验调到位:模型和参数怎么选

模型怎么选,看你的网络和环境:

  • 🇨🇳国内服务(通义千问 / DeepSeek / Moonshot / 零一万物):延迟低、稳定,国内首选。本质就是把OPENAI_BASE_URL+OPENAI_MODEL换成服务商的兼容地址,OPENAI_API_KEY换成对应密钥即可。
  • 🌍OpenAI(gpt-3.5 / gpt-4o):效果好,但国内要配代理,新账号未绑卡可能用不了 4o 系列。
  • 🏠本地 Ollama / LM Studio:隐私拉满、不花钱,起一个 OpenAI 兼容服务,把OPENAI_BASE_URL指向localhost就行;但机器要给力,响应比线上慢。

关键参数怎么调(都在.migpt.js里,完整说明见 参数设置):

参数建议值作用适用场景
streamResponsetrue / false连续对话(流式响应)开关能查播放状态的机型开;查不到的关,保证整句
checkInterval500(默认 1000)连续对话的播放状态检测间隔,越低停顿越小想更跟手、网络稳
checkTTSStatusAfter3(别低于 1)下发 TTS 后多久开始检测播放状态衔接卡顿可微调
exitKeepAliveAfter30连续对话无响应多久自动退出防止一直占用
callAIKeywords/wakeUpKeywords["请","傻妞"]/["召唤"]触发 AI、进入唤醒模式的词想要更自然的召唤方式
ttsCommand/playingCommand按型号查(如[5,1]TTS 播报、查询播放状态的指令没声音 / 读一半停
systemTemplate默认带上下文+记忆系统 Prompt,控制人设与上下文想改人设、省 token 可精简

出问题了怎么修

这里有个坑:十有八九的故障,都卡在账号没声音这三类。按"现象 → 原因 → 动作"来查(更多见 常见问题):

现象可能原因解决动作
70016 登录验证失败账号密码错,或误用了手机号/邮箱小米 ID重新填
提示"异地登录保护"触发了小米安全验证同网络环境下官网登录过验证,等约 1 小时;终极方案本地登录成功后导出.mi.json挂载到容器
提示"找不到设备"did和米家不一致(错别字/空格/大小写)直接复制米家中设备名;不行就开debug+enableTrace填设备did
有回复但音箱没声音ttsCommand配错按型号到 MIoT 规格查正确指令
回答戛然而止、读一半停机型查不到播放状态playingCommand;查不到就关掉streamResponse
响应慢 /LLM Connection error网络或代理问题调小checkInterval、换快模型;配HTTP_PROXY或换国内服务

小技巧:它回答太啰嗦?直接喊"小爱同学,请你闭嘴"就能打断。

再往前走一步

装好能跑之后,这些进阶玩法可以按需上:

  • 🏠本地模型:用 Ollama 或 LM Studio 起 OpenAI 兼容服务,把OPENAI_BASE_URL指到localhost,数据完全不出门。
  • 🧠记忆机制:长短期记忆逻辑在 记忆模块,默认把最近约 10 条对话+记忆带进 Prompt。想省 token,可在systemTemplate里精简或关掉上下文。
  • 🗄️自定义存储:默认用 Prisma + SQLite(prisma/app.db),要换库改 数据层 即可。
  • 🔒安全:别把它暴露到公网,限本地访问;.env含密钥,别外传(建议 600 权限);定期清理对话历史。另外,调用小米接口存在账号封禁等风险,用前心里有数。

注意:项目目前已停止维护,升级依赖前先看 更新日志,用固定版本更稳。

🚀 下一步做什么

  • 新手:先把streamResponsecheckInterval调顺,能连续对话就算成。
  • 进阶:换国内模型 + 精简systemTemplate,把响应速度和 token 都压下来。
  • 开发者:改 记忆模块 和 数据层,做出自己的玩法。

后续更新和路线图,盯 更新日志 和 Roadmap 就行。

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

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/14 17:56:57

【C 数据结构】 树 二叉树 堆 (链式二叉树模拟实现篇)

目录 链式二叉树的模拟实现 二叉树的数据结构 基本功能实现 树初始化和销毁 遍历方式 遍历方式的概念解释: 遍历方式的代码模拟实现: 层序遍历 计算树的节点个数 二叉树叶子结点个数 二叉树k层结点个数 二叉数的最大深度 查找元素 判断是否…

作者头像 李华
网站建设 2026/9/14 17:54:19

yq Pipe 管道操作符:把一个表达式接进下一个表达式

yq Pipe 管道操作符:把一个表达式接进下一个表达式 【免费下载链接】yq yq is a portable command-line YAML, JSON, XML, CSV, TOML, HCL and properties processor 项目地址: https://gitcode.com/GitHub_Trending/yq/yq yq 是一款可移植的 YAML、JSON、XM…

作者头像 李华
网站建设 2026/9/14 17:52:49

闲鱼90元戴尔准系统改造NAS:1800元配置单与实战

上个月我蹲闲鱼的时候又刷到一台戴尔OptiPlex 7010 USFF,卖家标价90块,裸机,不带电源适配器,侧面还缺一颗螺丝。我犹豫了大概十秒钟,拍了。这种老准系统改NAS的玩法,是我这两年折腾下来觉得最划算的方案。整…

作者头像 李华
网站建设 2026/9/14 17:52:39

CentOS 7.9停服后如何换阿里源?yum仓库配置与排错全指南

1. 不换源真不行:CentOS 7.9官方仓库停服后的连锁反应接手一台CentOS 7.9服务器,我建议你第一件事先看yum源。很多人新装完系统,习惯性敲一句yum install -y vim,等了好几分钟才发现要么卡在"Loading mirror speeds from cac…

作者头像 李华
网站建设 2026/9/14 17:51:23

Flutter与OpenHarmony开发视力保护App的反馈系统实现

1. 项目背景与核心需求视力保护提醒App在数字时代显得尤为重要。随着人们每天面对电子屏幕的时间越来越长,眼睛疲劳、干涩等问题日益普遍。这款基于Flutter和OpenHarmony开发的App,核心功能是通过定时提醒帮助用户养成科学用眼的习惯。意见反馈系统作为A…

作者头像 李华