
F5-TTS
几秒参考音频即可克隆音色,生成自然流畅的中英语音
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-10-25 · 当前星标 ★ 15446
使用教程
ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。
环境要求
- Python 3.10 及以上,README 示例使用 Python 3.11
- FFmpeg(音频读写依赖)
- 与硬件匹配的 PyTorch 与 torchaudio(NVIDIA CUDA / AMD ROCm / Intel XPU / Apple Silicon)
- 使用 Docker 方式时需要支持 GPU 的容器环境(如 --gpus=all)
- AMD ROCm 版本仅支持 Linux
安装与启动步骤
-
1创建 Python 环境
用 conda 建一个独立环境并激活,避免与系统 Python 冲突;也可改用 virtualenv。
conda create -n f5-tts python=3.11 conda activate f5-tts -
2安装 FFmpeg
音频处理的必需依赖,在激活的环境中通过 conda 安装即可。
conda install ffmpeg -
3安装匹配的 PyTorch
按显卡型号选择对应版本;此处为 NVIDIA CUDA 12.8 示例,其他平台见 README 折叠项。
pip install torch==2.8.0+cu128 torchaudio==2.8.0+cu128 --extra-index-url https://download.pytorch.org/whl/cu128 -
4Docker 启动网页界面
拉取官方镜像并直接运行 Gradio 网页端,映射 7860 端口,缓存卷避免重复下载权重。
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 -
5命令行零样本合成
指定参考音频与其文字内容,再给要合成的文本;ref_text 留空会调用 ASR 转写并额外占显存。
f5-tts_infer-cli --model F5TTS_v1_Base --ref_audio "/your/path/ref.wav" --ref_text "参考音频对应的文字内容" --gen_text "想要合成的文本" -
6默认配置快速推理
不带参数时读取仓库内置的 basic.toml 示例配置,适合先跑通流程再改参数。
f5-tts_infer-cli -
7启动微调界面
打开微调用的 Gradio 界面,可基于自有数据继续训练,具体流程见训练目录文档。
f5-tts_finetune-gradio
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
--model | 否 | 选择使用的预训练模型档位,默认可用 F5TTS_v1_Base。 | F5TTS_v1_Base |
--ref_audio | 是 | 参考音频路径,用于零样本克隆音色与说话风格。 | /your/path/ref.wav |
--ref_text | 否 | 参考音频的文字内容;留空则由 ASR 自动转写,会增加显存占用。 | 参考音频对应的文字内容 |
--gen_text | 是 | 希望模型合成的目标文本,支持中英混合。 | 想要合成的文本 |
--host | 否 | Gradio 服务监听地址,容器内需设为 0.0.0.0 才能对外映射。 | 0.0.0.0 |
如何确认成功
浏览器访问 http://localhost:7860 能看到 Gradio 界面即启动成功;命令行方式则检查目标目录是否生成音频文件。
常见问题
Q:没有 NVIDIA 显卡怎么办?
A:README 按 NVIDIA、AMD、Intel、Apple Silicon 分别给出 PyTorch 安装命令,按自己的硬件替换安装步骤即可,例如 Apple Silicon 直接 pip install torch torchaudio。
Q:ref_text 可以留空吗?
A:可以。留空时会调用 ASR 模型自动转写参考音频,代价是额外占用 GPU 显存。
Q:每次重启容器都要重新下载模型吗?
A:不会。示例命令把 Hugging Face 缓存目录挂到名为 f5-tts 的卷上,权重会复用缓存。
Q:只想用网页界面,不想用命令行?
A:在容器启动命令末尾加上 f5-tts_infer-gradio --host 0.0.0.0 即直接进入网页界面模式。
Q:AMD 显卡报 HIP error 怎么排查?
A:较新的 RDNA 3.5/4 架构需要 ROCm 7.x,ROCm 6.x 在这类显卡上会报 invalid device function。
注意事项
- README 节选未给出项目本体(Python 包)的安装命令,执行 f5-tts_infer-cli 等命令前请按仓库完整安装说明完成安装。
- 模型权重会自动下载并缓存在 Hugging Face 目录,首次运行耗时较长,建议保留挂载卷。
- AMD ROCm 支持仅限 Linux,Windows 与 macOS 请按对应平台的 PyTorch 安装方式操作。
核心亮点
- 零样本音色克隆效果好,短参考音频即可复刻音色与语调
- 提供完整训练与微调代码,可基于自有数据集继续训练
- 自带 Gradio 网页界面和命令行推理脚本,上手门槛低
不足之处
- 依赖较重,需 GPU 环境与较大显存,纯 CPU 推理体验差
- 长文本合成稳定性与情感控制仍有限,需分段处理
- 预训练权重与数据集下载体积大,首次部署耗时
适用场景
- 短视频与播客的批量旁白配音
- 有声书与故事朗读的多角色音色生成
- 语音交互产品原型的快速 TTS 验证
替代项目
CosyVoice、GPT-SoVITS、Fish Speech
同类项目推荐
MelNet
开源
在频域上自回归生成音频,让AI学会谱曲和说话
Implementation of "MelNet: A Generative Model for Audio in the Frequency Domain"
tiktok-tts
开源
一行代码调用 TikTok 语音合成,快速生成 MP3 音频。
Provides a simple way to generate text-to-speech audio files using TikTok's text-to-···
local11labs
开源
本地一键生成高质量语音和播客,快且私密
Local11Labs allows generating high-quality text-to-speech and podcast content using ···
OpenMusenet2
开源
复现 OpenAI 音乐生成模型,用代码生成多风格 MIDI 音乐
Open source implementation of OpenAi's musenet
YuE
开源
写句歌词就出一整首歌,人声伴奏全都有
YuE2: frontier music generation with symbolic planning, zero-shot covers, and agenti···
EDDiscovery
开源
记录你的星际航迹,用3D星图回放《精英危险》的每一段旅程。
Captains log and 3d star map for Elite Dangerous
wavegrad
开源
几步生成高保真语音,比 WaveNet 快几十倍
A fast, high-quality neural vocoder.
musical-neural-net
开源
用 LSTM 训练 AI 生成钢琴或小提琴音乐,输入 MIDI 即出作品。
Train an LSTM to generate piano or violin/piano music.
TTS-papers
开源
按图索骥,快速掌握TTS研究脉络
collection of TTS papers