HomeAssistant 语音助手对接AI大模型相关系列教程说明

HomeAssitant 本地语音控制一直是很多玩家最终期望的事情,毕竟设备已经在本地了,但是目前市面上面方案都不算完美以及目前介绍的 告别智障语音助手,迎接豆包——你的智能专属助理,带来全新体验

目前 HomeAssitant 针对语音上面的支持一直在更新迭代,目前自带的语音助手在相对明确的指令下支持还是挺不错的。目前中文的语料信息处于无人维护情况,所以一些指令信息的支持度不高。

语音助手配套服务

无论是使用HomeAssistant 自带的语音助手还是 openai 豆包 或其他智能助手都需要两个服务 stt tts

tts - 云服务

推荐直接使用 hass-edge-tts , 可以通过 hacs 进行安装或者手动安装 ,如何使用 hacs可以查看这里,HomeAssistant 安装HACS或HACS极速版

hass-edge-tts 项目github 地址: GitHub - hasscc/hass-edge-tts: 🗣️ Microsoft Edge TTS for Home Assistant, no need for app_key

stt - 本地版

语音转文字目前推荐两个服务:

  • sherpa-onnx-asr - 占用资源少(1g内存,j1900秒出结果),识别率较好
  • FunAsr - 占用资源较高(2-3g内存,j1900 需要2-3秒出结果),识别率好

FunAsr 详细教程可以查看 全网首发离线语音识别CPU版 本地化部署最佳实践

sherpa-onnx-asr docker 镜像内置了模型,所以在使用过程中只需要直接运行即可,唯一要修改的内容则是端口映射,内部端口是 5001 .

如果你是 HAOShassio 可以直接通过添加三方addon 进行安装使用,仓库地址: GitHub - knoop7/hassio-addons

如果你是 core版本也就是docker 或者其他方式 可以通过docker 方式启动:
注意:如果你是群辉,5001 端口可能不可以使用,需要改成其他的

docker run -d \
--restart=always -it --name sherpa-onnx-asr \
-p 5001:5001 \
hub.uuuadc.top/yaming116/sherpa-onnx-asr

并且支持企业微信 NodeRed 节点配合使用。

docker 知识点小提示

# 前面端口代表宿主机的端口,后面端口代表容器里面的
-p 5001:5001 

# 前面代表宿主机的文件目录,后面代表容器内的目录
# 前面目录需要自己按照实际情况修改
-v $PWD/models:/models 


custom_components

configuration.yaml 配置信息

environment_variable:
  OPENAI_BASE_URL: https://ark.cn-beijing.volces.com/api/v3

豆包注册

豆包其他信息就不介绍了,注册地址: https://www.volcengine.com ,注册完成之后一定要参加活动
新建接入点的时候模型需要选择支持 function call 版本。

千问注册

目前测试了阿里千问同样也是支持相关系列操作的,但是 token 赠送没有那么多,如果想体验相关效果也可以把 openai 的请求地址更换一下

最后的说明

对接ai之后控制设备上下文是存在了,但是控制指令目前看到的结果也各不相同,每个模型针对指令的解析支持程度也不一样,最终效果达到什么样需要各自体验。

ai 目前已经渗入我们生活的方方面面了,可能哪天国内提供了免费的服务以及收集够我们相关的控制语料信息,可能最终控制效果会达到我们想要的结果,期待到来的那一天。