|
<div align="center"> |
|
|
|
# Vits_Yunzai_Plugin |
|
|
|
**前后端分离** |
|
|
|
[![访问量](https://profile-counter.glitch.me/Vits前后端分离/count.svg)](https://gitee.com/byzp/vits_yunzai_plugin) |
|
|
|
</div> |
|
|
|
> [原仓库](https://gitee.com/sumght/vits-yunzai-plugin) |
|
|
|
> [引用的其他项目](https://github.com/svc-develop-team/so-vits-svc) |
|
|
|
**虑到后端可能更注重速度,模型在内存常驻是更好的选择,所以本项目后端的内存占用比原仓库更多,至少需要2GB可用的RAM** |
|
|
|
# client 前端 |
|
|
|
- 在Yunzai根目录执行以下命令即可 |
|
|
|
``` bash |
|
git clone -b client --depth=1 https://gitee.com/byzp/vits_yunzai_plugin.git ./plugins/vits-yunzai-plugin/ |
|
``` |
|
|
|
- 安装 axios 依赖 |
|
|
|
``` js |
|
pnpm install axios -w |
|
``` |
|
|
|
- 修改 ./apps/genshinSpeak.js 的第十四行为可用地址 |
|
|
|
- 默认使用高清语音可直接发送 |
|
- 但电脑点击高清语音听不到声音 |
|
- 可开启标清语音([需要配置FFmpeg](https://gitee.com/sumght/vits-yunzai-plugin#ffmpeg%E9%85%8D%E7%BD%AE)) |
|
|
|
|
|
# server 后端 |
|
- 自行安装Python版本限制3.8-3.10 |
|
- [下载server分支](https://gitee.com/byzp/vits_yunzai_plugin/repository/archive/server.zip)随便放一个位置(不推荐放Yunzai目录内) |
|
|
|
也可以克隆server分支到本地 |
|
|
|
``` bash |
|
git clone -b server --depth=1 https://gitee.com/byzp/vits_yunzai_plugin.git |
|
``` |
|
- 创建并激活venv虚拟环境(可跳过) |
|
- 运行check.py检查依赖(需要在server目录运行,缺失会自动安装) |
|
- [两个模型](https://www.123pan.com/s/YkmlVv-bhkg3.html)都放在./vits/models文件夹内,然后选择是否运行compress_model.py删除模型不必要的信息以节省内存,新模型被命名为ys.pth.1和bh3.pth.1(原模型含有继续训练所需的数据,除掉这部分的模型仅150MB) |
|
- 安装内存分配器[google-perftools] (tcmalloc,仅用于linux,可跳过但推荐使用) |
|
- 运行main.py(默认监听65432端口) |
|
- 本地测试可使用curl发出请求 |
|
|
|
``` POST |
|
curl -X POST -H "Content-Type: application/json" -d '{"command": "python ./vits/run_new.py --text=你好 --character=0"}' -o a.wav http://127.0.0.1:65432/vits/ |
|
``` |
|
|
|
# 注意事项 |
|
- 已在ubuntu 22.04 20.04 x86_64通过测试 |
|
- 注意Python版本不可超过3.10也不可低于3.8 |
|
- 从[37aaa6d3c347c640917c558c334bb356355b2350](https://gitee.com/byzp/vits_yunzai_plugin/tree/37aaa6d3c347c640917c558c334bb356355b2350/)提交开始,运行时模型常驻于内存,不必每次请求都从硬盘加载 |
|
- 若使用Linux运行server,且跳过了venv虚拟环境,请确保python -V命令存在,若不存在请执行 |
|
|
|
``` Python |
|
alias python=python3 |
|
``` |
|
或 |
|
|
|
``` Python |
|
ln -s /usr/bin/python3 /usr/bin/python |
|
``` |
|
否则可能出现错误[python: command not found] |