简介

Bert-VITS2是一个创新的文本转语音合成项目,它将VITS2骨干网络与多语言BERT模型相结合。这种集成使其具有增强的语音合成能力,特别是在多语言环境中。该项目特别值得注意的是其专门针对中文语言处理的特化版本"Extra: 中文特化版本"。这一发展代表了语音合成领域的重大进步,满足了多样化的语言需求。

本教程将讨论如何在Mac平台上使用CPU运行此项目。


本教程基于以下网站的视频和实践。
以下是参考视频和文档:

  1. 如何优雅地制作Bert-VITS2数据集

    https://www.bilibili.com/video/BV1rj411v7w1

  2. [Bert-vits2]标注好即可使用的云镜像训练教程

    https://www.bilibili.com/video/BV15r4y1f7bZ


  • 暂时不要考虑在Mac上训练,能够预处理和推理就已经很好了。运行LLM可能是可行的,但如果有人在Mac上(使用MPS)成功训练过,请告诉我。
  • 本教程主要讨论训练后和将模型下载到本地后的推理过程。我已经测试过,都能正常工作。
  • 训练相关信息可以在上面的参考视频中找到,非常详细。数据集是关键,训练需要耐心。
  • 使用一键包更容易,我个人测试过Bert-Vits2,在中文方面效果相当不错。

项目链接:https://github.com/fishaudio/Bert-VITS2


本教程仅供交流学习使用。请勿用于非法、不道德或不道德的目的。

请确保您自行解决与数据集相关的任何授权问题。对于使用未经授权的数据集进行训练而产生的任何问题以及由此产生的后果,您需承担全部责任。仓库及其维护者、svc开发团队不承担任何相关责任。

严禁将其用于任何政治相关目的。

软件要求:

  1. Homebrew https://brew.sh/
  2. VScode(可选)
  3. Python3

我使用的是Bert-Vits2击文特化版本,其他版本注意训练和推理的版本要一致 https://github.com/fishaudio/Bert-VITS2/releases/tag/Extra

Bert-Vits2 Mac推理

1. 创建虚拟环境

创建一个虚拟环境

1
python3 -m venv myenv #将'myenv'改为其他名称

2. 进入虚拟环境

1
cd myenv 
1
source bin/activate 

3. 下载项目

1
https://github.com/fishaudio/BertVITS2/archive/refs/tags/Extra.zip

下载后自行解压
使用cd进入项目目录

4. 安装包

1
pip install -r requirements.txt
1
pip install torch torchvision torchaudio

5. 启动WebUI

启动WebUI查看报错

1
python webui.py

在我的测试中主要是缺少文件和使用CPU推理

6. 修改config.yml

84b8a03b318e4898a41a4cc8eb2331bf238256624.webp

ba3f0222bea86fa0e569529088b62f05238256624.webp

7. 修改其他文件

我会把我测试过的文件放在github上供参考
https://github.com/One-CloseX/Bert-Vits2-Mac-Changed-File

文件是几天前改的,具体改了什么我也不记得了。如果能跑就不要动它。

根据报错替换其他文件
Erlangshen-MegatronBert-1.3B-Chinese和Emotion击件夹,先解压。

Shots create mockups.webp

8. 重启WebUI

1
python webui.py

这就是结果!

Screenshot 2024-01-14 at 11.24.05 PM.webp

总结

  • Mac本地推理:我测试后MPS还是有一些问题,仍然是在CPU上运行。但至少能跑起来了。我不是很擅长这个,所以目前只能做到这样。手头有Windows和N卡会舒服很多。
  • 模型:训练效果还是很好的。不需要训练很多步,在服务器上跑几个小时就够了(当然还是要看数据集)

感谢阅读。如果教程中有任何问题或更好的方法,请指出。