成了!将小爱音箱接入ChatGPT

您所在的位置:网站首页 蓝牙如何连接小爱音箱 成了!将小爱音箱接入ChatGPT

成了!将小爱音箱接入ChatGPT

2024-07-05 22:47| 来源: 网络整理| 查看: 265

成了!将小爱音箱接入ChatGPT 发布于:2024-4-12 分享发现 1条评论 2,915 views 本站提供Linux服务器运维,自动化脚本编写等服务,如有需要请联系博主微信:xiaozme

xiaoz在一个朋友推荐下了解到xiaogpt这个项目,xiaogpt可以将家里的小爱音箱接入ChatGPT、ChatGLM等大模型,从而让小爱音箱变得更加智能。

1264da806ff51a87.png

目前xiaoz已成功将家里的小米AI音箱一代接入到ChatGPT,大家可以通过下方的B站链接查看效果,如果有用,别忘记一键三联哦。

开始之前

此教程略微复杂,不适合新手小白,推荐有一定开发基础的IT从业人员尝试,开始之前,您需要准备:

小爱音箱并开启蓝牙功能魔法上网工具ChatGPT或ChatGLM API SK一台长期运行的内网服务器,比如NAS设备一台内网Windows电脑熟悉基本的Python编程语言获取小米音响DID

xiaogpt需要依赖小米音响DID,这样才能控制和通讯,我们要先用到miservice_fork这个工具,该工具使用Python开发,因此您的电脑需要先安装Python 3,xiaoz是在自己Windows电脑上操作(任意内网电脑设备均可),至于如何安装Python 3建议通过网络搜索。

# 安装miservice_fork pip install miservice_fork # 设置小米用户名 set MI_USER=xxxx # 设置小米账号的密码 set MI_PASS=xxx # 得到DID micli list

结果如下图所示,找到小爱音箱的DID号码,并记录下来。

74355bf72401c977.png

Docker安装xiaogpt

在安装之前,我们需要先创建xiaogpt配置文件config.json,xiaoz使用的配置文件如下:

{ "openai_key":"sk-xxx", "api_base":"https://xxx.com/v1", "hardware":"S12A", "mute_xiaoai": true, "account": "xxx", "password":"xxx.", "mi_did":"xxx", "bot": "chatgptapi", "tts": "mi", "prompt": "你的名字叫xxx,今年18岁,是一个人工智能助手,你的主人叫xiaoz,你的回答尽量简明扼要,回答总数不能超过150字。", "keyword": [ "请" ], "stream": true }

配置参数含义如下:

openai_key:OpenAI提供的SK,由于国内网络无法直接访问OpenAI API,可尝试使用第三方的OpenAI API中转服务api_base:由于xiaoz使用的第三方OpenAI API中专服务,所以这里的接口域名需要改成第三方的域名,末尾需要带上v1hardware:在小爱音箱屁股上有型号,输入进来,如果在屁股上找不到或者型号不对,可以用 micli mina 找到型号mute_xiaoai:启用中断服务,就是不让小爱自身的回答说完,然后让ChatGPT去接管,不启用的话每次都要等小爱先回答完毕account:小米账户的用户名password:小米账户的密码mi_did:上面得到的DIDbot:使用哪个API接口tts:默认mi就是小爱原生音色回答,也可以使用Edge TTS,但是xiaoz测试Edge TTS非常不稳定prompt:提示词,可以自己修改keyword:触发的关键词stream:开启后效率更好

关于hardware的获取

xiaoz使用的小米音箱一代,底部显示的是MDZ-25-DA,这个型号xiaogpt是识别不了的。

60a483db0c73b50c.png

您可能需要修改为S12A/S12/L07A,总之挨个修改尝试一下。

然后继续使用Docker Compose进行安装,推荐安装到NAS上,xiaoz的完整的docker-compose.yaml内容如下:

version: '3.8' services: xiaogpt: image: yihong0618/xiaogpt volumes: - ./config:/config ports: - "9527:9527" restart: always command: --config=/config/config.json container_name: xiaogpt

./config自己改成您配置文件的目录,比如您的配置文件位于./config/config.json,那么就填写./config,然后输入docker-compose up -d进行启动。

如果一切顺利,尝试唤醒小爱同学后,加上请字就可以触发ChatGPT,如上面的视频所示。

接入ChatGLM

如果您无法解OpenAI访问问题,并且也没找到合适的OpenAI中转服务,可以尝试接入国内大模型ChatGLM:https://open.bigmodel.cn/,在智谱AI后台获取SK后填写到配置文件中,使用ChatGLM的配置参考如下:

{ "glm_key":"xxx", "hardware":"S12A", "mute_xiaoai": true, "account": "xxx", "password":"xxx.", "mi_did":"xxx", "bot": "glm", "tts": "mi", "use_glm": true, "prompt": "回答不能超过200字", "keyword": [ "请" ], "stream": true }错误排查

如果触发小爱同学后,加上“请”字没效果,可使用docker logs xiaogpt查看容器日志,如果出现Exception: we have no hardware: S12A please check这样的错误,可能并不是hardware写错了,也可能是其他配置参数错误,总之按个参数都检查下。

实际体验

目前来说通过xiaogpt将小爱音箱接入ChatGPT并不算很完美,但却扩展了小爱音箱的玩法,让小爱音箱变得更加有趣和智能,有条件的朋友还是值得一试。

xiaoz实际体验后发现存在以下问题:

每次对话,小爱会先抢答部分,然后再由ChatGPT接管如果启用Edge TTS,会非常不稳定,经常无法输出音频或或者响应慢的情况,建议默认用小爱内置语音连续对话存在BUG,可能导致无法完全退出连续对话总结

在使用xiaogpt将小爱音箱接入ChatGPT过程中,注意以下问题:

小爱音箱需要开启蓝牙安装miservice_fork获取正确的DID号码通过查看音箱底部获取hardware编号,如果是一代设备,可尝试填写:S12A/S12/L07A国内网络无法正确访问OpenAI API,可以考虑第三方OpenAI中转服务,或者接入ChatGLM

xiaogpt项目地址:https://github.com/yihong0618/xiaogpt ,感谢作者的贡献。

另外xiaoz建了一个NAS用户交流群,有兴趣的可微信扫码加入。

4d46cac8d56d7b26.png

标签: ChatGLM, ChatGPT, xiaogpt, 小爱同学, 小爱音箱

老薛主机,快速免备案,下单享7.5折优惠 上一篇:快速入门:用Alist打造终极看片神器,改变你的观影体验 下一篇:推荐一个Jellyfin第三方安卓客户端Findroid 赞 0 打赏


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3