本帖最后由 ptbsare 于 2025-5-11 11:44 编辑
项目地址: https://github.com/ptbsare/home-assistant-addons/tree/main/sherpa-onnx-tts-stt
我是项目作者,欢迎PR,欢迎提出宝贵意见。
一个addon集成了TTS及STT两个服务。
纯图形界面操作,官方原生支持Wyoming自动发现集成,无需安装HACS插件,无需修改配置文件。至少需要1.5G内存,建议使用强劲的CPU或者docker部署到性能较强的服务器上。支持kokoro-TTS/matcha-TTS/paraformer-STT。
纯离线,所有模型均在本地部署运行,不向云端发送任何数据。
使用:
1、HASSOS添加addon repo:点击↓
添加到我的Homeassistant
https://my.home-assistant.io/red ... me-assistant-addons或者 手动添加如下repo到你的addon 加载项商店右上角三个点-仓库:https://github.com/ptbsare/home-assistant-addons
2、启动addon,正常会自动发现Wyoming,点击添加Wyoming集成即可。
3、在语音助手里面选择相应TTS及STT引擎。
备选:
如果你不是使用HASSOS,可以直接使用docker镜像,支持amd64及aarch64两种构架,直接启动镜像即可,也可配置环境变量:
docker pull ghcr.io/ptbsare/home-assistant-addons/amd64-addon-sherpa-onnx-tts-stt:latest
docker pull ghcr.io/ptbsare/home-assistant-addons/aarch64-addon-sherpa-onnx-tts-stt:latest
然后点击设备页面添加Wyoming集成:host填服务器或docker的IP,port填10400,提交保存即可。
详细说明:目前默认参数即可运行,下面是详细参数配置说明,可自定义模型、语言、语速等,具体可见项目主页。
演示视频:
语音助手配置截图:
更新:
v0.2.6:已经支持kokoro-tts(内部集成),速度相对默认的matcha-tts略慢。
v0.2.8:实验性支持高阶用户自定义Sherpa Onnx 模型的类型、名字、参数,高阶用户可以自行指定模型及参数,插件会自动下载相应STT/TTS模型,完整模型列表详见:
STT: https://github.com/k2-fsa/sherpa-onnx/releases/tag/asr-models
TTS: https://github.com/k2-fsa/sherpa-onnx/releases/tag/tts-models
具体配置详见文档。https://github.com/ptbsare/home- ... on-custom_stt_model
普通用户暂时使用v0.2.6版本,编程爱好者欢迎使用v0.2.8反馈不同模型的效果。
v0.2.9:
* 实验性支持GPU运行!方便docker用户提速,详见github repo Dockerfile.gpu,因CUDA镜像较大(10G+),请GPU用户自行本地使用该Dockerfile.gpu文件自行构建运行镜像。
* 新增内置STT模型:sherpa-onnx-paraformer-zh-small-2024-03-09(默认paraformer模型的微缩版本)供性能较差小主机STT使用提速,效果也非常不错,更加快速,内存占用更低;
* 新增内置TTS模型:vits-melo-tts-zh_en,这是一个中英文模型,可以同时说中文与英语,速度介于matcha-icefall-zh-baker与kokoro-multi-lang-v1_0之间。
v0.2.10: 升级kokoro-TTS到v1.1。
v0.3.0: 添加Openai兼容格式 TTS/STT 实验性支持,实现了两个接口 IP:10500/v1/audio/speech IP:10500/v1/audio/transcriptions
v0.3.1: 修复STT结果为空导致语音助手阻塞的bug
v0.3.2: 支持不重启addon直接在wyoming集成选择不同的模型内置朗读者Speaker0-Speaker100(sid)
v0.3.3:
* 新增选项设置STT_BUILTIN_AUTO_CONVERT_NUMBER=True以启用内置STT模型汉字数字一二三到阿拉伯数字123的转换更好适应内置Hass Intent;举例:三十分钟后关闭主卧灯,现在可以由TTS自动生成为:30分钟后关闭主卧灯 以被官方Hass Intent直接识别,此外形如两万一千三百一十五也会被TTS直接输出为21315阿拉伯数字;需要手动开启此特性:STT_BUILTIN_AUTO_CONVERT_NUMBER=True(默认False)
* 固定TTS生成比特率为44100以与微信聊天机器人astrbot机器人语音输出兼容
v0.3.4: 统一CPU & GPU docker构建
v0.3.5: 增添addon勾选选项stt_builtin_auto_convert_number(默认False不勾选)
不一定长时间在论坛在线,如有问题请在Github反馈;最新更新内容请前往Github项目主页查看。
|