Retrieval-based-Voice-Conversion-WebUI模型构建指南

2024-09-09 17:04

本文主要是介绍Retrieval-based-Voice-Conversion-WebUI模型构建指南,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、模型介绍

Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。

具有以下特点

  • 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了解复杂的语音处理技术,即可实现语音转换。
  • 低延迟与高效能:RVC 模型在实时语音转换中表现出低延迟的特点,同时能够在相对较差的显卡上也能快速训练,提高了模型的普及性和实用性。
  • 少量数据训练:使用少量数据(推荐至少 10 分钟低底噪语音数据)进行训练,即可得到较好的语音转换效果,降低了数据收集的难度和成本。
  • 音色克隆:RVC 模型支持克隆说话。
  • 对人的声音,包括歌曲的翻唱和实时的变声,都具有优秀的变声效果。
  • 杜绝音色泄漏:通过 top1 检索替换输入源特征为训练集特征,有效杜绝了音色泄漏的问题。
  • 可以通过模型融合来改变音色(借助 ckpt 处理选项卡中的 ckpt-merge)。
  • 可调用 UVR5 模型来快速分离人声和伴奏。

二、容器构建

环境要求

  • PyTorch:2.0
  • CUDA:11.8
  • python>3.8

1. 克隆

git clone https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI.git

2. 环境配置

(1)通过 pip 安装依赖

①安装Pytorch其核心依赖。参考自:https: //pytorch.org/get-started/locally/

pip install torch torchvision torchaudio

②如果是 win 系统 + Nvidia Ampere 架构(RTX30xx),根据 #21 的经验,需要指定 pytorch 对应的 cuda 版本

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117

③根据自己的显卡安装对应依赖

pip install -r requirements.txt
  • A 卡 / I 卡
pip install -r requirements-dml.txt
  • A 卡 ROCM(Linux)
pip install -r requirements-amd.txt
  • I 卡 IPEX(Linux)
pip install -r requirements-ipex.txt
(2)通过诗歌来安装依赖

安装 Poetry 依赖管理工具,若已安装则跳过。参考自:https: //python-poetry.org/docs/#installation

curl -sSL https://install.python-poetry.org | python3 -

通过 Poetry 安装依赖时,python 建议使用 3.7-3.10 版本,其余版本在安装 llvmlite==0.39.0 时会出现冲突

poetry init -n
poetry env use "path to your python.exe"
poetry run pip install -r requirments.txt
(3)苹果系统

可以来 run.sh 安装依赖

sh ./run.sh

3. 下载模型

下载地址:https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main

(1)下载assets

以下是一份清单,包括了所有 RVC 所需的预模型和其他文件的名称。您可以在 tools 文件夹找到下载它们的脚本。

  • ./assets/hubert/hubert_base.pt
  • ./assets/pretrained
  • ./assets/uvr5_weights

想使用 v2 版本模型的话,需要额外下载

  • ./assets/pretrained_v2
(2)安装ffmpeg

若 ffmpeg 和 ffprobe 已安装则跳过。

① Ubuntu/Debian 用户

sudo apt install ffmpeg

② MacOS 用户

brew install ffmpeg

③ Windows 用户

下载后放置在根目录。

  • 下载ffmpeg.exe
  • 下载ffprobe.exe
(3)下载 rmvpe 人声提取高算法所需文件

如果您想使用最新的 RMVPE 人声提取高算法,则您需要下载音高提取模型参数并放置在 RVC 根目录中。

  • 下载rmvpe.pt

下载 rmvpe 的 dml 环境(可选,A 卡/I 卡用户)

  • 下载rmvpe.onnx

4. 开始使用

(1)直接启动

使用以下指令来启动 WebUI

python infer-web.py

若先前使用 Poetry 安装依赖,则可以通过以下方式启动 WebUI

poetry run python infer-web.py

如图:

image.png

(2)使用集成包

下载并解压 RVC-beta.7z

① Windows 用户

双击 go-web.bat

② MacOS 用户

sh ./run.sh

③ 对于需要使用 IPEX 技术的 I 卡用户(仅限 Linux)

source /opt/intel/oneapi/setvars.sh

三、网页演示

image.png

这篇关于Retrieval-based-Voice-Conversion-WebUI模型构建指南的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1151755

相关文章

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

Redis过期删除机制与内存淘汰策略的解析指南

《Redis过期删除机制与内存淘汰策略的解析指南》在使用Redis构建缓存系统时,很多开发者只设置了EXPIRE但却忽略了背后Redis的过期删除机制与内存淘汰策略,下面小编就来和大家详细介绍一下... 目录1、简述2、Redis http://www.chinasem.cn的过期删除策略(Key Expir

基于Python构建一个高效词汇表

《基于Python构建一个高效词汇表》在自然语言处理(NLP)领域,构建高效的词汇表是文本预处理的关键步骤,本文将解析一个使用Python实现的n-gram词频统计工具,感兴趣的可以了解下... 目录一、项目背景与目标1.1 技术需求1.2 核心技术栈二、核心代码解析2.1 数据处理函数2.2 数据处理流程

SpringBoot整合Apache Flink的详细指南

《SpringBoot整合ApacheFlink的详细指南》这篇文章主要为大家详细介绍了SpringBoot整合ApacheFlink的详细过程,涵盖环境准备,依赖配置,代码实现及运行步骤,感兴趣的... 目录1. 背景与目标2. 环境准备2.1 开发工具2.2 技术版本3. 创建 Spring Boot

Python远程控制MySQL的完整指南

《Python远程控制MySQL的完整指南》MySQL是最流行的关系型数据库之一,Python通过多种方式可以与MySQL进行交互,下面小编就为大家详细介绍一下Python操作MySQL的常用方法和最... 目录1. 准备工作2. 连接mysql数据库使用mysql-connector使用PyMySQL3.

Linux中修改Apache HTTP Server(httpd)默认端口的完整指南

《Linux中修改ApacheHTTPServer(httpd)默认端口的完整指南》ApacheHTTPServer(简称httpd)是Linux系统中最常用的Web服务器之一,本文将详细介绍如何... 目录一、修改 httpd 默认端口的步骤1. 查找 httpd 配置文件路径2. 编辑配置文件3. 保存

Python FastMCP构建MCP服务端与客户端的详细步骤

《PythonFastMCP构建MCP服务端与客户端的详细步骤》MCP(Multi-ClientProtocol)是一种用于构建可扩展服务的通信协议框架,本文将使用FastMCP搭建一个支持St... 目录简介环境准备服务端实现(server.py)客户端实现(client.py)运行效果扩展方向常见问题结

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

Python中文件读取操作漏洞深度解析与防护指南

《Python中文件读取操作漏洞深度解析与防护指南》在Web应用开发中,文件操作是最基础也最危险的功能之一,这篇文章将全面剖析Python环境中常见的文件读取漏洞类型,成因及防护方案,感兴趣的小伙伴可... 目录引言一、静态资源处理中的路径穿越漏洞1.1 典型漏洞场景1.2 os.path.join()的陷