不到1.5秒出声的ChatGPT小爱音箱:MIGPT 新手完整上手指南
2026/8/23 15:23:27 网站建设 项目流程

不到1.5秒出声的ChatGPT小爱音箱:MIGPT 新手完整上手指南

【免费下载链接】MIGPT基于API流式对话的低延迟版MIGPT项目地址: https://gitcode.com/gh_mirrors/mi/MIGPT

MIGPT 是小米小爱音箱接入 ChatGPT 的低延迟方案,它用 OpenAI 官方 API 的流式传输,回答边生成边播放,实测提问到出声不到 1.5 秒。

它解决什么问题

MIGPT 是个"接线员":一头连着你的小爱音箱,一头连着 ChatGPT,负责把两边对话无缝对接。

普通 GPT 接入方案要等完整回答生成完才播报,音箱干等十几秒,体验像打电话转接。MIGPT 用流式传输,GPT 每吐出一句话就立刻播,等待时间最多只剩一两秒。

适合手里有小爱音箱、有小米账号和 OpenAI API Key、想让客厅音箱"开口聊 GPT"的用户。

环境与快速上手:5 分钟跑通

先把环境要求过一遍:

  • Python 3.8 及以上
  • 4 个依赖:aiohttp、requests、urllib3、tiktoken(见 requirements.txt)
  • 一个小米账号 + 一台已联网的小爱音箱
  • 一个 OpenAI API Key

按顺序做四步就行:

  1. git clone https://gitcode.com/gh_mirrors/mi/MIGPT
  2. pip install -r requirements.txt
  3. 打开 MIGPT.py,文件开头填 4 个配置:小米账号、密码、API Key、音箱型号
  4. python MIGPT.py,看到"正在运行 MiGPT"就成功了

下面这段演示要改哪 4 行,它们都在 MIGPT.py 顶部:

MI_USER = "你的小米账号" # 手机号 MI_PASS = "你的小米账号密码" OPENAI_API_KEY = "你的API KEY" SOUND_TYPE = "LX06" # 音箱型号,须匹配

填错任一项,启动时会直接抛ValueError拦住你,不会偷偷跑错。

核心功能拆解

小米账号登录与音箱定位

一句话定义:用小米账号登录,找到你名下对应型号的音箱设备。

操作方式:启动时自动执行,登录成功的 token 会缓存到用户主目录的.你的账号.mi.token文件,下次启动免登录。

关键模块:miaccount.py 负责登录和 token 存取;minaservice.py 的device_list按型号找到设备 ID。

这块是整条链路的"门禁",登录不通,后面全白搭。

流式对话:低延迟的真正来源

一句话定义:请求 GPT 时开启stream,响应流被切成短句,逐句推给音箱。

操作方式:无需额外操作。MIGPT.py 里的循环会把攒好的句子按",。?!"断句,每断出一句就发一次 TTS,所以前四句甚至在逗号处就能出声。

关键模块:V3.py 的Chatbot.ask_stream负责收流,主循环负责断句分发。

这就是"边说边播",是延迟从十几秒压到 1.5 秒的核心。

语音指令与打断控制

一句话定义:用普通话控制 GPT 开关,还能随时打断。

操作方式:说"打开/关闭高级对话"切 GPT 开关(默认开),说"闭嘴"或"停止"暂停当前回答,直接问新问题也会强制打断旧回答。

关键模块:MIGPT.py 的run_forever轮询新指令并分发。

相当于给音箱装了一个"对讲机模式",不用碰任何按钮。

关键配置速查:最省事的改法

配置项默认值作用
MI_USER / MI_PASS / OPENAI_API_KEY占位符,必填小米账号密码、API Key,缺一个都跑不了
SOUND_TYPE占位符,必填音箱型号,不在 MIGPT.py 的型号字典里会直接报错
PROMPT"请用100字以内回答…"追加到每次提问后的提示词,控制回答长度和语速
SWITCHTrueGPT 回答总开关
HARDWARE_COMMAND_DICTLX06 等 12 款型号型号到 TTS 音色命令的映射,改它影响发音音色
enginegpt-3.5-turbo用的 GPT 模型,见 V3.py
temperature0.5回答随机性,调高更发散
max_tokens3000上下文 token 上限,不能超 4000

日常最值得动的是 PROMPT:想让它答得短一点,直接改那句提示词。

新手常见坑 + 下一步

三个高频坑,都给你方向:

  1. 型号不支持:LX04、L05B、L05C 因流式机制暂不支持,启动会提示型号不在列表,只能换支持的音箱。
  2. Windows 装依赖报错:没有 C++ 编译环境时pip install tiktoken会失败,去 PyPI 下载对应平台的 whl 文件,再本地安装。
  3. 运行中频繁掉线:多半是 token 过期,删掉主目录下的.账号.mi.token文件让它重新登录。

下一步建议:把 MIGPT.py 完整读一遍,重点看run_forever怎么把"收问题、断句、播报、打断"串成一条流水线,再对着 README 的"使用技巧"实测一遍打断效果。

【免费下载链接】MIGPT基于API流式对话的低延迟版MIGPT项目地址: https://gitcode.com/gh_mirrors/mi/MIGPT

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

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

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

立即咨询