告别复杂配置!3分钟搭建你的F5-TTS语音合成系统

【免费下载链接】F5-TTS Official code for "F5-TTS: A Fairytaler that Fakes Fluent and Faithful Speech with Flow Matching" 【免费下载链接】F5-TTS 项目地址: https://gitcode.com/gh_mirrors/f5/F5-TTS

你还在为语音合成系统的繁琐配置而头疼吗?想快速拥有一个能生成流畅自然语音的工具却被技术门槛拦住?本文将带你一步到位,用最简单的方式在3分钟内搭建起F5-TTS语音合成系统,无论是中文还是英文,都能轻松实现高质量语音生成。读完本文,你将掌握环境搭建、模型部署和基本使用的全部流程,让AI语音技术触手可及。

关于F5-TTS

F5-TTS(A Fairytaler that Fakes Fluent and Faithful Speech with Flow Matching)是一个基于流匹配(Flow Matching)技术的语音合成系统,它能够生成流畅且忠实于文本的语音。项目提供了F5-TTS和E2 TTS两种模型架构,其中F5-TTS采用Diffusion Transformer与ConvNeXt V2,训练和推理速度更快;E2 TTS则是Flat-UNet Transformer,更接近原始论文实现。此外,F5-TTS还引入了Sway Sampling推理时流步采样策略,大大提升了性能。

最新版本的F5-TTS v1基础模型在训练和推理性能上有了显著提升,支持多语言合成,包括中文和英文等。项目官方文档和代码托管在README.md,你可以在这里找到最全面的信息。

环境准备

创建独立环境

首先,我们需要创建一个独立的Python环境来避免依赖冲突。推荐使用conda或virtualenv,这里以conda为例:

# 创建conda环境,Python版本需>=3.10
conda create -n f5-tts python=3.11
conda activate f5-tts

安装PyTorch

根据你的设备选择合适的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

你可以选择两种安装方式:

  1. 作为pip包(仅用于推理)

    pip install f5-tts
    
  2. 本地可编辑模式(用于训练和微调)

    git clone https://gitcode.com/gh_mirrors/f5/F5-TTS
    cd F5-TTS
    pip install -e .
    

快速开始:Gradio Web界面

最简便的使用方式是通过Gradio Web界面,它提供了直观的操作界面,支持基本TTS、多风格/多说话人生成、语音聊天等功能。

启动Gradio应用

只需一行命令即可启动:

# 启动Gradio应用
f5-tts_infer-gradio

# 自定义端口和主机
f5-tts_infer-gradio --port 7860 --host 0.0.0.0

# 生成共享链接,方便远程访问
f5-tts_infer-gradio --share

启动成功后,打开浏览器访问提示的地址(通常是http://localhost:7860),即可看到F5-TTS的Web界面。你可以上传参考音频,输入文本,然后点击生成按钮获取合成语音。

Docker部署(可选)

如果你希望使用Docker部署,可以参考以下示例docker-compose.yml文件:

services:
  f5-tts:
    image: ghcr.io/swivid/f5-tts:main
    ports:
      - "7860:7860"
    environment:
      GRADIO_SERVER_PORT: 7860
    entrypoint: ["f5-tts_infer-gradio", "--port", "7860", "--host", "0.0.0.0"]
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]

volumes:
  f5-tts:
    driver: local

将上述内容保存为docker-compose.yml,然后运行:

docker-compose up

命令行推理

如果你更喜欢命令行操作,F5-TTS也提供了CLI工具。

基本使用

# 使用默认配置
f5-tts_infer-cli

# 指定自定义配置文件
f5-tts_infer-cli -c custom.toml

# 多语音示例
f5-tts_infer-cli -c src/f5_tts/infer/examples/multi/story.toml

自定义参数

你可以通过命令行参数直接指定模型、参考音频和文本:

f5-tts_infer-cli --model F5TTS_v1_Base \
--ref_audio "path/to/reference_audio.wav" \
--ref_text "参考音频的文本内容" \
--gen_text "你想要合成的文本"

其中,--ref_text 如果留空,系统会自动使用ASR模型转录参考音频(这会增加GPU内存占用)。

模型与配置

F5-TTS提供了多种预训练模型,支持不同语言和场景。你可以在src/f5_tts/configs/目录下找到模型配置文件,如F5TTS_Base.yaml、F5TTS_Small.yaml等。

社区也贡献了许多针对特定语言的模型,例如:

  • 多语言:F5-TTS v1 Base(支持中文和英文)
  • 芬兰语:F5-TTS Base @ fi @ AsmoKoskinen
  • 法语:F5-TTS Base @ fr @ RASPIAUDIO
  • 德语:F5-TTS Base @ de @ hvoss-techfak
  • 日语:F5-TTS Base @ ja @ Jmica

更多语言模型信息可以查看src/f5_tts/infer/SHARED.md

性能表现

F5-TTS在推理速度和语音质量上都有不错的表现。根据官方基准测试,在单个L20 GPU上,使用16 NFE(噪声预测步骤),F5-TTS Base(Vocos声码器)的平均延迟为253ms,实时因子(RTF)低至0.0394,意味着它可以快速生成语音,满足实时应用需求。

详细的性能测试结果可以参考src/f5_tts/runtime/triton_trtllm/README.md

进阶使用:训练与微调

如果你需要训练自己的模型或对现有模型进行微调,可以参考src/f5_tts/train/目录下的指南。F5-TTS支持使用Hugging Face Accelerate进行分布式训练,也提供了Gradio界面方便微调操作:

# 启动微调Gradio界面
f5-tts_finetune-gradio

总结

通过本文的介绍,你已经了解了如何快速搭建F5-TTS语音合成系统,包括环境配置、Web界面使用、命令行推理等基本操作。F5-TTS作为一个功能强大且易用的开源项目,为语音合成提供了高效的解决方案。无论是普通用户还是开发者,都能从中受益。

如果你在使用过程中遇到问题,可以查阅官方文档README.mdsrc/f5_tts/infer/目录下的详细指南。也欢迎参与项目贡献,分享你的模型和经验。

现在,就动手试试吧,让F5-TTS为你生成自然流畅的AI语音!

【免费下载链接】F5-TTS Official code for "F5-TTS: A Fairytaler that Fakes Fluent and Faithful Speech with Flow Matching" 【免费下载链接】F5-TTS 项目地址: https://gitcode.com/gh_mirrors/f5/F5-TTS

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐