news 2026/9/13 12:21:57

小爱音箱接入 MiGPT:从部署到自定义角色的完整实战

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
小爱音箱接入 MiGPT:从部署到自定义角色的完整实战

小爱音箱接入 MiGPT:从部署到自定义角色的完整实战

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

向小爱提问"讲个笑话",回答往往来自预设话术。用 MiGPT 把它接上大模型后,回答改由大语言模型生成。本文以 MiGPT 部署为主线,覆盖型号兼容、账号与模型配置、语音验证,以及记忆和音色定制,按步骤操作即可跑通。

小爱音箱 AI 改造后能做什么

变化在于回答的来源:

  • 闲聊:从固定话术变成能接住话题、随时展开,接近和朋友聊天的状态
  • 角色扮演:在配置文件里写好人物设定,小爱按对应身份说话
  • 知识问答:"地球为什么是圆的"这类问题交给大模型作答,不再套模板
  • 连续对话:进入唤醒模式后连续提问,不用每句都说"小爱同学"

确认小爱音箱型号兼容并获取 MiGPT 代码

先对照兼容型号清单核对你的设备。小爱音箱 Pro、小米 AI 音箱(第二代)等主流型号都在支持范围内,清单同时给出各型号的命令参数;小度、天猫精灵等其他品牌不在支持之列。

需要注意:项目 README 标注已停止维护、不再更新,使用前请留意版本与参数是否匹配你的环境。

获取代码:

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

进入mi-gpt目录后开始配置。如果型号不在清单里,可先到 MIoT 规格网站按型号搜索,确认是否具备改造所需指令:

小爱音箱接入大模型:两个配置文件

在仓库根目录重命名两个模板文件:

cp .migpt.example.js .migpt.js cp .env.example .env

.migpt.js管账号和设备,.env管模型。关键字段含义:

.migpt.js

字段含义
userId小米 ID,在"个人信息-小米 ID"处查询,不是手机号或邮箱
password小米账号密码
did米家中显示的设备名或设备 did,注意错别字、空格与大小写
ttsCommand"朗读文本"对应的 MIoT 指令编号,随型号不同
wakeUpCommand"唤醒"对应的 MIoT 指令编号,随型号不同
callAIKeywords消息以这些词开头时,才由大模型回复
streamResponse连续对话开关,无法正确查询播放状态的型号需关闭

.env

  • OPENAI_API_KEY:大模型服务的密钥
  • OPENAI_MODEL:使用的模型名
  • OPENAI_BASE_URL:服务地址。通义千问、DeepSeek、Moonshot 等一切兼容 OpenAI API 格式的服务,只改地址和模型名即可接入,字段名保持不变

完整参数说明见 docs/settings.md。

MiGPT 部署教程:一条 Docker 命令启动

Docker 是打包好的运行环境,无需自行安装 Node.js。确认两个配置文件无误后,在仓库根目录执行:

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

Windows 终端下$(pwd)不可用,请改为配置文件的绝对路径。

启动后用三句口令验证:

  1. "小爱同学,请告诉我地球为什么是圆的"——能正常作答说明模型已接通
  2. "小爱同学,你是谁"——回答应与配置的人物设定一致
  3. "小爱同学,召唤傻妞"——进入连续对话模式,等它说"我说完了"后继续提问

语音收不到或流程中断时,先到常见问题里检索。

进阶玩法:长短期记忆与小爱音箱语音定制

  • 长短期记忆:默认开启,每次回复时系统 Prompt 会带入最近 10 条消息和长短期记忆,跨次对话也能接得上。想省 token 可在模板中删掉记忆部分,模板写法见 docs/prompt.md。
  • 音色定制:默认由小爱内置 TTS 朗读;想要豆包同款音色,需配置TTS_BASE_URL环境变量并把speaker.tts改为custom,之后说"小爱同学,把声音换成 xxx"即可切换,详见 docs/tts.md。
  • 连续对话streamResponse对能正确查询播放状态的型号才有效,开启后会话 30 秒内免唤醒词连续提问。

小爱音箱语音断续等常见问题排查

现象可能原因处理方式
启动报"70016 登录验证失败"userId误填手机号或邮箱到个人信息处查询小米 ID 后更正
提示"找不到设备"did与米家不一致直接复制米家中的设备名;仍失败则填设备 did
AI 有回复但不出声ttsCommand与该型号不匹配按型号查指令编号后更新配置
语音说到一半中断播放状态查询不到,流被打断配置playingCommand,或关闭streamResponse
回复时 Connection error、401模型服务不通或密钥无效检查网络代理与 API 密钥,或改用国内模型

指令编号的查法:在 MIoT 规格网站搜索你的型号,"朗读文本"方法的 AIID 与 SIID 组合即为ttsCommand

到这里改造就通了:模型决定回答质量,人设决定说话方式,记忆决定话题能延续多久。后续调整主要修改.migpt.js.env两个文件,再重启容器即可。

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

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

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

GoFr 内置 Cron 任务调度完全指南:从调度表达式到运行指标

GoFr 内置 Cron 任务调度完全指南:从调度表达式到运行指标 【免费下载链接】gofr An opinionated GoLang framework for accelerated microservice development. Built in support for databases and observability. 项目地址: https://gitcode.com/GitHub_Trendi…

作者头像 李华
网站建设 2026/9/13 12:19:45

基于Spring Boot的宠物商城系统设计与实现

简介:基于SpringBoot的宠物商城网站源码包,面向计算机、电子信息工程等专业的毕业生与课程设计学习者,可无缝用于JavaWeb方向的高分毕业设计项目、课程设计或期末大作业。压缩包约20.83MB,内部是完整的SpringBootMaven工程结构&am…

作者头像 李华
网站建设 2026/9/13 12:19:42

Flutter表单开发实战:剧本杀组队功能实现

1. 项目概述与需求分析在剧本杀组队App中,发起组队功能是核心交互场景之一。这个表单需要收集玩家组队所需的所有关键信息,包括剧本选择、店铺位置、游戏时间、参与人数、价格预算以及额外说明。作为Flutter for OpenHarmony系列教程的第四部分&#xff…

作者头像 李华
网站建设 2026/9/13 12:19:09

RT-Thread生态下嵌入式芯片选型实战指南

1. 这不是一场普通线上会:它解决的是嵌入式工程师每天都在撞墙的“选型焦虑”你有没有过这样的经历:项目刚立项,硬件方案还没定,光是芯片选型就卡了三周?查 datasheet 查到凌晨两点,对比十几个型号的 GPIO …

作者头像 李华
网站建设 2026/9/13 12:18:29

Spark与Flask构建淘宝用户行为分析系统

1. 项目背景与核心价值淘宝作为国内最大的电商平台之一,每天产生海量的用户行为数据。这些数据蕴含着用户偏好、商品热度、消费趋势等宝贵信息,但原始数据往往杂乱无章,需要通过专业工具进行挖掘和分析。本项目采用Spark大数据处理框架结合Fl…

作者头像 李华