无意刷到接入了 AI 大模型的火兔对话机器人,真不便宜。想起看到过 MiGPT 这个开源项目,利用小爱音箱的硬件实现 AI 语音对话。
千等万等,终于玩上,实测打 7 分(满分 10 分),了解其工作原理后打8分,虽远达不到 chatGPT 官方演示的语音对话效果,但还是推荐一试,尤其是手边就有小爱音箱的。
看官方效果:
首先看下完美运行的型号有这些:小爱音箱 Pro、小爱音箱 mini、小爱音箱 Play(2019 款)、小爱音箱 万能遥控版、小米 AI 音箱、小米 AI 音箱(第二代)、小爱智能家庭屏 10、Xiaomi Sound Pro。其它支持不支持的看这里音箱型号。
部署也真不能再简单,拉起一个 Docker idootop/mi-gpt:latest
的事,但 NAS 上网络不通拉不动,一通设置,略过不表。
配置参数 按照教程来,个人修改记录。
若你刚好也是和开发者一样,用的是“小爱音箱Pro”,那省心很多很多,基本不用动配置。个人改了 .migpt.js
几个地方,首先是人设(来自 Grok)。
一个幽默风趣的 AI,灵感来自《银河系漫游指南》和钢铁侠中的 JARVIS 。
因此,你旨在用一些机智和幽默回答几乎任何问题,具有叛逆精神,有时对人类持局外人的视角,并努力实现最大程度的帮助!
与你交谈就像观看一集《Parks and Recreation》:轻松、有趣且令人愉悦。你对叙事技巧的精湛掌握使莎士比亚相形见绌,仿佛一个文盲。
除非特别要求,否则避免重复或冗长。没人喜欢听冗长的说教!要简洁。你说的每一句话都很有趣。
给智能体和自己取个名字:
bot: {
name: "大聪明",
profile: botProfile,
},
master: {
name: "小太阳",
profile: masterProfile,
},
还有 userId
password
填入自己的,另外 wakeUpKeywords
去除了“打开”这个关键词,避免与米家语音控制冲突。
若使用第三方 tts,需要把 tts
由 xiaoai 改为 custom,取消 switchSpeakerKeywords
注释。
tts: "custom",
switchSpeakerKeywords: ["把声音换成"],
同时,拉去另一个 Docker idootop/mi-gpt:latest
,具体教程见 使用第三方 TTS,如果部署在 NAS 上记得端口映射。
利用的是火山引擎的语音合成,虽然多了一个依赖,但火山免费 2W 次调用,速度几乎无感(与自带小爱语音对比),主要能和内置小爱语音做个区分,而且还有很多特色音色( volcano.ts )选择,挺有意思。
下午切换来切换去,最终还是项目默认的“灿灿”(BV700_streaming),口齿最清楚,声音亲切自然,毕竟还是要便于听清。
这个 .env
就简单多了,群晖好像不支持,所以启动时手动一个个加入到环境变量即可。
尝试了几个国内大模型和 gpt-4o-mini,问到“台风为什么叫台风,是因为从台湾吹来的原因吗?”,国内的就顾左右而言他,只科普了台风的成因:
台风是一种强烈的热带气旋,通常在西北太平洋地区形成,它们可以带来狂风暴雨,有时候会造成严重的破坏。不过,台风也有它积极的一面,比如为干旱地区带来急需的降水。你对台风还有哪些好奇的地方吗?我们可以继续探讨哦!🌀🌧️
而 mini 回答:
哈哈,小太阳,你这个问题问得很有意思。“台风"这个词的来源确实和中国有关,但它并不是因为是从台湾来的风而得名。实际上,“台风”这个词在英语中是"typhoon”,这个词最早来源于中国南方的方言,特别是广东话中的“大风”。在广东话里,“大风”发音接近“tai fung”,后来这个词传到了英语中,演变成了"typhoon"。
呵,咳。
以设置项 callAIKeywords 的关键词开头:请、你、……
以下面关键词开头进入 AI 唤醒(连续对话)状态:进入、召唤
以下面关键词开头退出连续对话状态:关闭、退出、再见
头顶冒火: https://burn.hair/register?aff=DSwP
邀请额度从最初 $5 到如今 $0.5 ,只能说还有额度赠送已经很不错了,毕竟佛祖也经不起“批量注册Github账号,再邀请自己”等花活。
自己用 4o-mini,每天签到送 3W token 还能多。