小爱音箱接入 ChatGPT 完整指南MiGPT 双方案部署30 分钟跑通语音助手【免费下载链接】mi-gpt 将小爱音箱接入 ChatGPT 和豆包改造成你的专属语音助手。项目地址: https://gitcode.com/GitHub_Trending/mi/mi-gptMiGPT 可以把家里的小爱音箱接入 ChatGPT、豆包等大模型让音箱从只会播歌变成能连续对话、有长期记忆、还能扮演角色的专属语音助手。这篇指南不走线性流水账而是先帮你判断该走哪条部署路径再给出每一步的命令、预期输出和失败信号照做即可。做完后你会看到音箱听到小爱同学召唤 xxx就进入 AI 模式之后连续追问不用每句都喊唤醒词回答由大模型生成支持角色扮演比如你现在是数学老师它还会记录你们的对话历史越聊越像认识你。如果你正被音箱答非所问每次都要重新唤醒这类体验困扰下面的流程就是针对这些痛点写的。先花 10 秒选路Docker 和源码构建怎么选两条路径最终效果完全一致区别只在你对运行环境的容忍度决策条件Docker 一键式Node.js 源码构建适合人群新手、只想跑起来想改代码、二次开发的开发者最低环境任意能跑 Docker 的 Linux/Windows/群晖Node.js 16pnpm 7推荐环境4GB 内存20GB SSDNode.js 20pnpm 9能否改源码不能改配置文件可以可以数据库初始化镜像内置无需处理需要手动pnpm db:gen✅ 拿不准就选 Docker。下面两条路径都从克隆仓库开始仓库地址是https://gitcode.com/GitHub_Trending/mi/mi-gpt。Docker 一键部署从克隆仓库到音箱应声克隆仓库并复制配置模板# 克隆仓库并进入目录 git clone https://gitcode.com/GitHub_Trending/mi/mi-gpt cd mi-gpt # 复制两个配置模板 cp .env.example .env cp .migpt.example.js .migpt.js预期输出目录里多出.env和.migpt.js两个文件。失败信号如果cp报 No such file说明你没进到 mi-gpt 目录重新cd一次。填写小米账号与音箱信息编辑.migpt.js只需改speaker下的四个字段speaker: { userId: 987654321, // 小米 ID在 account.xiaomi.com 的「个人信息-小米 ID」查看不是手机号 password: 你的密码, // 小米账号密码 did: 小爱音箱Pro, // 米家 APP 里设置的设备名注意空格和大小写 // 指令参数按你的型号查见下方对照表其余参数保持默认 }指令参数按型号查以 docs/compatibility.md 中的完整清单为准常用型号摘录如下支持等级设备名称型号连续对话ttsCommandwakeUpCommand完美运行小爱音箱 ProLX06支持[5, 1][5, 3]完美运行小米 AI 音箱第二代L15A支持[7, 3][7, 1]完美运行小爱智能家庭屏 10X10A支持[7, 3][7, 1]正常运行小米小爱音箱 Play 增强版L05C不支持需关streamResponse[5, 3][5, 1]正常运行小爱触屏音箱LX04不支持[5, 1][5, 2]❌ 不支持小米小爱音箱 HDSM4---型号不确定时在米家 APP 设备详情页查看或去 MIoT 设备数据库按型号搜索指令。配置大模型 API编辑.env只填你要用的那一个模型另一个保持注释# OpenAI二选一填了就用它 OPENAI_API_KEYsk-xxxxxxxxxxxxxxxxxxxx OPENAI_MODELgpt-4o # OPENAI_BASE_URL 一般不用动默认就是官方地址豆包、通义千问这类兼容 OpenAI 接口的模型改OPENAI_BASE_URL、OPENAI_MODEL、OPENAI_API_KEY三个值即可接入详细说明见 docs/faq.md。启动容器并确认运行# 启动容器挂载两个配置文件 docker run -d --env-file $(pwd)/.env -v $(pwd)/.migpt.js:/app/.migpt.js idootop/mi-gpt:latest # 验证状态 docker ps | grep mi-gpt # 预期输出一行包含 Up 状态的记录预期输出docker ps里出现Up X minutes。失败信号容器反复重启或日志里报70016 登录验证失败说明账号密码或小米 ID 填错了Windows 终端下$(pwd)不生效需替换成.env和.migpt.js的绝对路径。源码构建部署装依赖建库开发环境一步到位准备 Node 环境并装依赖# 克隆并进入仓库 git clone https://gitcode.com/GitHub_Trending/mi/mi-gpt cd mi-gpt # 安装依赖postinstall 会自动初始化数据库 pnpm install预期输出依赖安装完成node_modules生成且没有报错。失败信号ERR_MODULE_NOT_FOUND或构建报错通常是 Node 版本低于 16升到 20 再试。初始化数据库并复制配置# 初始化 Prisma 数据库首次运行必做 pnpm db:gen # 同 Docker 路径复制配置模板 cp .env.example .env cp .migpt.example.js .migpt.js预期输出prisma/app.db文件生成。配置填写方式与上一节完全相同.migpt.js改speaker四字段.env填模型 API。失败信号提示找不到 bot启动失败是本地数据库重建后映射不匹配跑一次pnpm db:reset再重启即可。开发模式启动# 直接启动等价于 pnpm build pnpm start 的常驻开发态 pnpm dev预期输出终端打印 Mi Service 初始化成功、开始轮询设备消息。失败信号提示初始化 db 失败检查项目路径是否含中文或空格只保留英文字母、数字和下划线。想改代码调试的话流程详见 docs/development.md。三分钟验收唤醒、问答、角色扮演服务跑起来后按这个顺序验证每步都有明确的成功标志语音唤醒说小爱同学召唤傻妞。成功标志音箱先播欢迎语随后进入 AI 模式接下来的问题不用再喊小爱同学直接问就行。基础问答说小爱同学请告诉我北京今天天气。成功标志等待让我先想想提示语后听到 AI 用语音回答完整问题。角色扮演说小爱同学你是数学老师解释什么是勾股定理。成功标志AI 以老师口吻作答人设即时生效。如果第 1 步没反应先确认你说的是请/你等callAIKeywords开头的话且必须先喊小爱同学再跟指令直接对着音箱说话它收不到。进阶长短期记忆已经内置.migpt.example.js里的systemTemplate默认就注入了短期记忆和长期记忆两个上下文槽位源码在 src/services/bot/memory/无需额外开启。想让越聊越默契更明显可以调大长期记忆携带的上下文长度想缩短唤醒模式的空闲退出时间改exitKeepAliveAfter默认 30 秒即可全部参数说明见 docs/settings.md。进阶换掉小爱自带的声音不想听小爱 TTS 的话可以接第三方音色服务火山引擎提供豆包同款音色.env里填TTS_BASE_URL指向你的 TTS 服务.migpt.js里把tts改为custom就能用小爱同学把声音换成 xxx语音切换音色完整教程在 docs/tts.md。出问题先看这张排障表现象先查这里报70016 登录验证失败小米 ID 填错要的是小米 ID 不是手机号或账号触发了异地登录保护先在小米官网手动过一遍安全验证报找不到设备xxxdid与米家设备名不一致重点检查错别字音响/音箱、空格、大小写名称对不上就开debug: true从日志里找miotDID填进去AI 没响应、日志报Connection errorAPI Key 失效或 OpenAI 接口访问不通在.env配HTTP_PROXY或把OPENAI_BASE_URL换成国内可达的聚合服务报401 Invalid AuthenticationKey 无效或未生效注意改完.env后 Docker 容器要重启才加载新值语音断断续续、句子被截断你的型号查不到正确播放状态指令按 MIoT 数据库补playingCommand仍不行就把streamResponse设为false代价是失去连续对话唤醒时音箱自己放歌唤醒词被识别成歌名换个wakeUpKeywords比如召唤改打开指令参数的查法可以参考下面两张图先在 MIoT 数据库搜你的设备型号再取 TTS、唤醒、播放状态对应的动作参数填进.migpt.js。后续资源官方资料去哪找参数逐项说明docs/settings.md兼容型号完整清单docs/compatibility.md工作原理轮询 MiNA 消息 MiOT 指令下发docs/how-it-works.md本地开发与构建自有镜像docs/development.md官方配套 PDFassets/pdf/MiGPT官方教程.pdf、assets/pdf/Unraid部署MiGPT.pdf更多疑难问题docs/faq.md升级时 Docker 用户执行docker pull idootop/mi-gpt:latest重建容器源码用户git pull后重新pnpm install即可。【免费下载链接】mi-gpt 将小爱音箱接入 ChatGPT 和豆包改造成你的专属语音助手。项目地址: https://gitcode.com/GitHub_Trending/mi/mi-gpt创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考