
如何把大模型接进小爱音箱从配置到开口说话的 MiGPT 实操指南【免费下载链接】mi-gpt 将小爱音箱接入 ChatGPT 和豆包改造成你的专属语音助手。项目地址: https://gitcode.com/GitHub_Trending/mi/mi-gpt问小爱一个复杂的问题它多半答不清楚。把大模型接进小爱音箱之后对话可以多轮AI 可以有人设声音还能换。本文用开源项目 MiGPT讲清大模型接入的完整操作过程。一句话看懂 MiGPTMiGPT 是一个开源项目作用是把 ChatGPT、豆包这类大语言模型接进小爱音箱让音箱具备大模型对话能力。支持 OpenAI 系列、通义千问、Moonshot、DeepSeek豆包等也能接。原理说简单点它通过小米开放接口轮询音箱的对话记录知道你问了什么把问题丢给大模型再用 TTS 把答案变成音频放回音箱里播放。不拆机不刷机音箱保持原样。准备清单小爱音箱大模型接入前查一遍项目最低要求备注小爱音箱小爱音箱 Pro 最稳其他型号见 docs/compatibility.md部分型号不支持连续对话极少数型号完全不支持服务器4GB 内存以上的电脑或 NAS需要长期运行网络稳定运行环境Docker或 Node.js 20源码方式依赖--env-fileNode 低于 20 跑不起来小米账号1 个可用账号记下「小米 ID」不是手机号和密码大模型 API1 个密钥OpenAI、通义、豆包任选其一部署实操小爱音箱接大模型的两种启动方式先拉代码建配置文件。根目录下把示例文件复制成正式文件git clone https://gitcode.com/GitHub_Trending/mi/mi-gpt cd mi-gpt cp .migpt.example.js .migpt.js cp .env.example .envDocker 方式一条命令启动小爱音箱大模型服务新手推荐这条路不用管 Node 环境docker run -d --env-file $(pwd)/.env \ -v $(pwd)/.migpt.js:/app/.migpt.js \ idootop/mi-gpt:latest两点注意Windows 终端下把$(pwd)换成绝对路径改了配置文件要重启容器才生效。源码方式从克隆到跑起来的完整命令有 Node 基础就用这条方便改代码pnpm install pnpm db:gen pnpm devdb:gen负责初始化本地数据库对话和记忆数据都存在里面。配置字段逐个说.migpt.js 与 .env.migpt.js管音箱和角色重点看这几个字段speaker.userId小米 ID在账号「个人信息」页查看。填成手机号是启动失败的第一大原因speaker.password账号密码speaker.did米家 App 里的设备名称空格、大小写、错别字都会导致找不到设备名称匹配不上时再填设备 didspeaker.ttsCommandTTS 指令小爱音箱 Pro 是[5, 1]speaker.wakeUpCommand唤醒指令小爱音箱 Pro 是[5, 3]这两条指令是一串数字编号其他型号要按自己的型号查参数表在 docs/compatibility.mdbot.name、bot.profileAI 的名字和人设master.name、master.profile你的名字和人设systemTemplate系统提示词控制回答风格、长度和上下文规则.env管模型四个变量就够OPENAI_API_KEY密钥OPENAI_MODEL模型名示例值gpt-4o-miniOPENAI_BASE_URL模型服务地址不用 OpenAI 官方时在这里切换TTS_BASE_URL第三方 TTS 接口可选变量名固定是OPENAI_前缀用通义、DeepSeek 这类兼容 OpenAI 格式的服务只改值即可。豆包等不兼容 OpenAI 格式的模型需要先经过 OneAPI 之类的聚合服务做转换再接进来。调教篇让它更像你的角色设定AI 的名字和人设把bot.profile写具体比如性别、性格、口头禅回答风格就会稳定。systemTemplate里可以直接约束「回答不超过三句」。人设写得越克制效果越稳堆长文反而容易跑偏。唤醒词与退出词自定义触发方式默认每次提问都得先喊「小爱同学」。改下面三个关键词触发方式随你定callAIKeywords: [请, 傻妞], // 以这些词开头时由 AI 回答 wakeUpKeywords: [召唤傻妞], // 进入 AI 连续对话模式 exitKeywords: [退出傻妞, 再见], // 退出 AI 模式流式对话与记忆连续对话怎么开进入 AI 模式后连续提问、不用重复唤醒靠这两个开关streamResponse: true, // 开启连续对话 exitKeepAliveAfter: 30 // 无响应 30 秒后自动退出这里有个代价部分型号查不到正确的播放状态连续对话会不稳定这类机型保持默认false就好。另外它靠轮询对话列表和检测播放状态工作所以 AI 回答前偶尔有等待这是方案层面的限制改配置也消除不掉。记忆方面不用手动配系统会自动记录对话提示词里带短期和长期记忆两个位置聊得越久越连贯。TTS 音色替换换掉默认声音默认用音箱自带音色tts: xiaoai。想换声音部署一个第三方 TTS 服务在.env里把TTS_BASE_URL指过去再用switchSpeakerKeywords配一个切换关键词就能语音切音色。具体接法见 docs/tts.md。避坑指南三个高频问题服务起不来现象启动即报错或日志出现「70016登录验证失败」原因小米 ID 填成了手机号/邮箱或账号触发了异地登录保护动作到「个人信息」页核对 ID在与服务相同的网络下手动登录小米账号过一遍安全验证再启动音箱无响应现象服务正常但音箱对 AI 提问没反应原因did与米家设备名不一致多余空格、大小写、错别字都算动作从米家直接复制设备名仍不行就打开debug和enableTrace从日志里找miotDID填进去回复慢现象提问后等很久音箱才开口原因默认参数偏保守提示语和播放状态检测都要花时间动作把onAIAsking、onAIReplied设成空数组调小checkInterval再换一个响应更快的模型收尾MiGPT 把大模型对话搬进小爱音箱部署不复杂效果是实打实的但别期待完美。三件事先知道项目已停止维护不再更新出问题要自己看日志建议跑在家庭内网小米账号和 API 密钥不要暴露公网.migpt.js、.env和prisma/下的数据库文件记得定期备份。先用便宜模型跑通全流程再折腾音色和人设顺序别反。【免费下载链接】mi-gpt 将小爱音箱接入 ChatGPT 和豆包改造成你的专属语音助手。项目地址: https://gitcode.com/GitHub_Trending/mi/mi-gpt创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考