hf rvc

VC/VC++ 2025-08-11

hf rvc

hf rvc是使用HuggingFace的Transformers实现基于检索的气换转换(RVC)的软件包,以及从原始不安全模型转换的功能。库易于使用,并提供了执行语音转换任务的有效方法。

原始实施

可以在以下GitHub存储库中找到基于检索的Voice-Conversion(RVC)的原始实现:https://github.com/rvc-project/retrieval-lasieval opent-lasieval-lase-voice-voice-conversion-webui。

安装

支持的Python版本:3.8、3.9、3.10(建议)

要安装库,您可以使用以下命令:

 pip install git+https://*gith*ub.c*om/esnya/hf-rvc.git#egg=hf-rvc

基本用法

这是如何将软件包用作库的示例:

 from hf_rvc import RVCFeatureExtractor , RVCModel

feature_extractor = RVCFeatureExtractor . from_pretrained ( model_name )
# feature_extractor.set_f0_method("harvest")

model = RVCModel . from_pretrained ( model_name )

input_features = feature_extractor (
    audio [ "array" ],
    sampling_rate = audio [ "sampling_rate" ],
    f0_up_key = key ,
    return_tensors = "pt" ,
)
output = model ( ** input_features ). numpy ()

命令行工具

hf rvc还提供了多种命令行工具。您可以使用-HELP检查可用命令:

python -m hf_rvc --help

有关每个工具的更详细用法,您可以检查特定命令的-HELP选项。

模型转换

由于模型尚未在HuggingFace上可用,因此您可能需要将原始.pth模型文件或原始的hubert_base.pt模型转换为与hf rvc兼容。可以使用convert-***命令行工具完成。转换不仅将模型调整到不同的框架中,而且默认情况下,还可以确保与安全模型共享的SafetEnsor格式兼容。

当使用命令行工具加载hubert_base.pt模型时,您必须提供--unsafe选项,以确认您已从受信任的来源获得该模型。您还需要安装fairseq软件包以转换原始.pth模型文件。您可以用后缀[convert]与此软件包一起安装它。

例子:

python -m hf_rvc convert-rvc --hubert-path < path_to_hubert_base.pt > --unsafe < path_to_original_vits_model.pth >

实时语音转换

一种实时的语音转换工具,可让您直接执行语音转换。要使用此功能,只需运行以下命令:

 python -m hf_rvc realtime-vc path/to/converted_or_hugging_face/model

该工具接受各种参数,包括模型,功能提取器,缓冲设置,F0方法,输入和输出设备索引等等。它使用户可以调整转换参数,从而提供更大的控制和自定义。

 python -m hf_rvc realtime-vc --help

有关每个参数的详细说明,请按照上面的方式运行--help命令。

归因

hf_rvc/models/vits中的代码基于MIT许可版权(C)2023 Liujing04发布的原始实现。该代码已由ESNYA稍作修改。

贡献

我们欢迎对包装的捐款!如果您发现任何问题或有改进的建议,请随时在GitHub存储库上开发问题或提交拉动请求。

执照

hf rvc已获得MIT许可证的许可。

下载源码

通过命令行克隆项目:

git clone https://github.com/esnya/hf-rvc.git