VITS练习手册

轩辕暗神 1月前 ⋅ 32 阅读

1.准备好系统环境

windwos系统 1,安装好Visual Studio 这一步主要是需要安装windows所需要要的编码程序 1,下载源码 这里是去gitHub官方下载的,官方链接 下载好以后使用开发工具打开,这里使用的是pyCharm,然后使用Conda创建了一个虚拟环境

#创建虚拟环境
conda create --prefix D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\vitsEnvs python=3.9.13
#激活虚拟环境
conda activate D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\vitsEnvs

2,下载依赖

pip install -r requirements_win.txt -i https://pypi.doubanio.com/simple/

这个时候我这里执行python webUI.py报错

(D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs) PS D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable> python webUI.py        
Traceback (most recent call last):
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\webUI.py", line 14, in <module>
    import gradio as gr
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\gradio\__init__.py", line 3, in <module>
    import gradio._simple_templates
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\gradio\_simple_templates\__init__.py", line 1, in <module>
    from .simpledropdown import SimpleDropdown
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\gradio\_simple_templates\simpledropdown.py", line 6, in <module>     
    from gradio.components.base import FormComponent
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\gradio\components\__init__.py", line 1, in <module>
    from gradio.components.annotated_image import AnnotatedImage
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\gradio\components\annotated_image.py", line 13, in <module>
    from gradio import processing_utils, utils
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\gradio\processing_utils.py", line 21, in <module>
    from gradio import utils, wasm_utils
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\gradio\utils.py", line 49, in <module>
    from gradio.data_classes import FileData
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\gradio\data_classes.py", line 12, in <module>
    from fastapi import Request
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\fastapi\__init__.py", line 5, in <module>
    from .applications import FastAPI
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\fastapi\applications.py", line 3, in <module>
    from fastapi import routing
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\fastapi\routing.py", line 6, in <module>
    from fastapi import params
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\fastapi\params.py", line 4, in <module>
    from pydantic import Schema
ImportError: cannot import name 'Schema' from 'pydantic' (D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\lib\site-packages\pydantic\__init__.p
y)

解决办法:

pip uninstall -y starlette fastapi pydantic gradio
pip install starlette fastapi pydantic gradio

然后再次执行python webUI.py报错如下:

Traceback (most recent call last):
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\webUI.py", line 14, in <module>
    import gradio as gr
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\vitsEnvs\lib\site-packages\gradio\__init__.py", line 3, in <module>
    import gradio._simple_templates
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\vitsEnvs\lib\site-packages\gradio\_simple_templates\__init__.py", line 1, in <module>  
    from .simpledropdown import SimpleDropdown
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\vitsEnvs\lib\site-packages\gradio\_simple_templates\simpledropdown.py", line 6, in <mod
ule>
    from gradio.components.base import FormComponent
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\vitsEnvs\lib\site-packages\gradio\components\__init__.py", line 40, in <module>        
    from gradio.components.multimodal_textbox import MultimodalTextbox
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\vitsEnvs\lib\site-packages\gradio\components\multimodal_textbox.py", line 28, in <modul
e>
    class MultimodalTextbox(FormComponent):
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\vitsEnvs\lib\site-packages\gradio\component_meta.py", line 198, in __new__
    create_or_modify_pyi(component_class, name, events)
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\vitsEnvs\lib\site-packages\gradio\component_meta.py", line 92, in create_or_modify_pyi 
    source_code = source_file.read_text()
  File "D:\workspace\MyWorkspace\vits\softwareCode\so-vits-svc-4.1-Stable\envs\vitsEnvs\lib\pathlib.py", line 1267, in read_text
    return f.read()
UnicodeDecodeError: 'gbk' codec can't decode byte 0xb2 in position 1972: illegal multibyte sequence

这里的解决办法比较粗暴,找到pathlib.py文件第1267行,把原本的 \\with self.open(mode='r', encoding=encoding, errors=errors) as f: 改为 with self.open(mode='r', encoding='utf-8', errors=errors) as f:\
此时再启动就可以正常启动了,浏览器会自动跳转到http://127.0.0.1:7860页面 参考第三方 下载编码器: 📥 预先下载的模型文件 以下编码器需要选择一个使用 这里第一次操作,使用推荐的编码器: 1. 若使用 contentvec 作为声音编码器(推荐) vec768l12与vec256l9 需要该编码器 contentvec :checkpoint_best_legacy_500.pt 放在pretrain目录下 或者下载下面的 ContentVec,大小只有 199MB,但效果相同: contentvec :hubert_base.pt 将文件名改为checkpoint_best_legacy_500.pt后,放在pretrain目录下 整合百度云下载地址:链接:https://pan.baidu.com/s/1BHoAXc5IaUe0UYGPnnWSSQ 提取码:kj4c

# contentvec
wget -P pretrain/ https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/hubert_base.pt -O checkpoint_best_legacy_500.pt
# 也可手动下载放在 pretrain 目录

(强烈建议使用)

预训练底模文件: G_0.pth D_0.pth
  • 放在logs/44k目录下 扩散模型预训练底模文件: model_0.pt
  • 放在logs/44k/diffusion目录下

从 svc-develop-team(待定)或任何其他地方获取 Sovits 底模

扩散模型引用了 Diffusion-SVC 的 Diffusion Model,底模与 Diffusion-SVC 的扩散模型底模通用,可以去 Diffusion-SVC 获取扩散模型的底模 虽然底模一般不会引起什么版权问题,但还是请注意一下,比如事先询问作者,又或者作者在模型描述中明确写明了可行的用途

NSF-HIFIGAN

如果使用NSF-HIFIGAN 增强器或浅层扩散的话,需要下载预训练的 NSF-HIFIGAN 模型,如果不需要可以不下载

预训练的 NSF-HIFIGAN 声码器 :nsf_hifigan_20221211.zip 解压后,将四个文件放在pretrain/nsf_hifigan目录下

# nsf_hifigan
wget -P pretrain/ https://github.com/openvpi/vocoders/releases/download/nsf-hifigan-v1/nsf_hifigan_20221211.zip
unzip -od pretrain/nsf_hifigan pretrain/nsf_hifigan_20221211.zip
# 也可手动下载放在 pretrain/nsf_hifigan 目录
# 地址:https://github.com/openvpi/vocoders/releases/tag/nsf-hifigan-v1

RMVPE

如果使用rmvpeF0预测器的话,需要下载预训练的 RMVPE 模型

  • 下载模型rmvpe.zip,目前首推该权重。 解压缩rmvpe.zip,并将其中的model.pt文件改名为rmvpe.pt并放在pretrain目录下
  • 下载模型 rmvpe.pt 放在pretrain目录下

FCPE(预览版)

你说的对,但是FCPE是由svc-develop-team自主研发的一款全新的F0预测器,后面忘了 FCPE(Fast Context-base Pitch Estimator)是一个为实时语音转换所设计的专用F0预测器,他将在未来成为Sovits实时语音转换的首选F0预测器.(论文未来会有的)

如果使用 fcpe F0预测器的话,需要下载预训练的 FCPE 模型

  • 下载模型 fcpe.pt 放在pretrain目录下

综合参考

计划参考:

解决报错查询ChatGpt,Sider

conda下载
pydantic
数据集


全部评论: 0

    我有话说: