转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn]
如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~
项目地址:https://github.com/idootop/mi-gpt
MiIOT:小米小爱音箱Play 增强版 - 产品规格 - Xiaomi Miot Spec
实现效果图:
1、安装pnpm
sudo apt-get install -y nodejs
sudo npm install -g pnpm@latest
2、下载工程源码
git clone https://kkgithub.com/idootop/mi-gpt.git
3、修改配置文件
- 把 .migpt.example.js 改为 .migpt.js
- 把 .env.example 改为 .env
在 .env.json 中填写OpenAI Key:
OPENAI_MODEL=gpt-3.5-turbo
OPENAI_API_KEY=sk-SOxxxx
# 注意URL后面不需要带 chat/completions
OPENAI_BASE_URL=xxxxxx
在 .migpt.js中填写小米ID等信息:
speaker: {// 小米 ID// 注意这里改成你的!!!userId: "xxxx", // 注意:不是手机号或邮箱,请在「个人信息」-「小米 ID」查看// 账号密码// 注意这里改成你的!!!password: "xxxx",// 小爱音箱 ID 或在米家中设置的名称did: "小爱音箱Play增强版",// 当消息以下面的关键词开头时,会调用 AI 来回复消息callAIKeywords: ["请", "你", "傻妞"],// 当消息以下面的关键词开头时,会进入 AI 唤醒状态wakeUpKeywords: ["打开", "进入", "召唤"],// 当消息以下面的关键词开头时,会退出 AI 唤醒状态exitKeywords: ["关闭", "退出", "再见"],// 进入 AI 模式的欢迎语onEnterAI: ["你好,我是傻妞,很高兴认识你"],// 退出 AI 模式的提示语onExitAI: ["傻妞已退出"],// AI 开始回答时的提示语onAIAsking: ["让我先想想", "请稍等"],// AI 结束回答时的提示语onAIReplied: ["我说完了", "还有其他问题吗"],// AI 回答异常时的提示语onAIError: ["啊哦,出错了,请稍后再试吧!"],// 无响应一段时间后,多久自动退出唤醒模式(默认 30 秒)exitKeepAliveAfter: 30,// TTS 指令,https://home.miot-spec.com/spec/xiaomi.wifispeaker.l05c// 注意改成这个!!!ttsCommand: [5, 3],// 设备唤醒指令,https://home.miot-spec.com/spec/xiaomi.wifispeaker.l05c// 注意改成这个!!!wakeUpCommand: [5, 1],// 是否启用流式响应,部分小爱音箱型号不支持查询播放状态,此时需要关闭流式响应// 注意不要开启!!!streamResponse: false,// 查询是否在播放中指令// 注意不要开启!!!// playingCommand: [3, 1, 1],},
4、编译项目
cd mi-gpt
pnpm install && pnpm build
5、启动项目
node --env-file=.env app.js
保持程序运行,可参考使用nohop或者screen。
6、用法(语音命令顺序):
- 小爱同学
- 你 在干什么
- 小爱同学
- 召唤傻妞
7、注意事项:
- Windows上运行可能会有点问题。
- Docker需要魔法,反正我是一直没pull下来。
- 小爱同学会抢答一两个字,属于正常情况,刷机可解决这个问题。