F5-TTS 使用与启动教程
1. 项目介绍
F5-TTS 是一个基于深度学习的文本到语音(Text-to-Speech, TTS)转换项目。它使用先进的扩散变换器模型和卷积NeXt V2技术,能够生成流畅且忠于原文的语音输出。项目旨在提供一种性能优越、易于使用的TTS解决方案。
2. 项目快速启动
环境准备
首先,您需要创建一个独立的Python环境,并安装PyTorch以及对应的依赖项。以下是创建Python环境的命令:
conda create -n f5-tts python=3.10
conda activate f5-tts
根据您的硬件配置,安装相应的PyTorch版本:
- 对于NVIDIA GPU用户:
pip install torch==2.4.0+cu124 torchaudio==2.4.0+cu124 --extra-index-url https://download.pytorch.org/whl/cu124
- 对于AMD GPU用户(仅限Linux系统):
pip install torch==2.5.1+rocm6.2 torchaudio==2.5.1+rocm6.2 --extra-index-url https://download.pytorch.org/whl/rocm6.2
- 对于Intel GPU用户:
pip install torch torchaudio --index-url https://download.pytorch.org/whl/test/xpu
- 对于Apple Silicon用户:
pip install torch torchaudio
安装F5-TTS
您可以通过以下两种方式之一安装F5-TTS:
- 作为pip包(如果仅用于推理):
pip install f5-tts
- 本地可编辑(如果要进行训练或微调):
git clone https://github.com/SWivid/F5-TTS.git
cd F5-TTS
git submodule update --init --recursive # 如果需要bigvgan
pip install -e .
运行Docker容器
您还可以通过Docker容器来使用F5-TTS:
- 从Dockerfile构建:
docker build -t f5tts:v1
- 从GitHub容器仓库运行:
docker container run --rm -it --gpus=all --mount 'type=volume,source=f5-tts,target=/root/.cache/huggingface/hub/' -p 7860:7860 ghcr.io/swivid/f5-tts:main
如果您只想运行Web界面,可以使用以下命令:
docker container run --rm -it --gpus=all --mount 'type=volume,source=f5-tts,target=/root/.cache/huggingface/hub/' -p 7860:7860 ghcr.io/swivid/f5-tts:main f5-tts_infer-gradio --host 0.0.0.0
推理
要使用命令行界面进行推理,请运行以下命令:
f5-tts_infer-cli --model F5TTS_v1_Base --ref_audio "path_to_prompt_wav_file.wav" --ref_text "reference_audio_content" --gen_text "text_to_generate"
如果您想要使用默认设置进行推理,可以省略所有参数:
f5-tts_infer-cli
或者,您也可以使用自己的配置文件:
f5-tts_infer-cli -c custom.toml
3. 应用案例和最佳实践
- 多风格/多说话人生成:通过指定不同的说话人或风格,可以生成具有独特个性的语音。
- 自定义推理:支持更多语言,可以通过自定义配置文件来实现。
- 性能优化:使用TRT-LLM和TensorRT进行推理时,可以获得更快的性能。
4. 典型生态项目
F5-TTS 可以与多种开源项目集成,例如:
- Hugging Face Accelerate:用于训练和微调的优化工具。
- Gradio:用于创建Web界面的库,方便展示和测试TTS模型。
- Triton和TensorRT-LLM:用于推理部署的解决方案,提供更高的性能。
以上就是F5-TTS的简要介绍和快速启动指南。希望对您有所帮助!