# Vits_Yunzai_Plugin **前后端分离** [![访问量](https://profile-counter.glitch.me/Vits前后端分离/count.svg)](https://gitee.com/byzp/vits_yunzai_plugin)
> [原仓库](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]