基于 F5 TTS + FastAPI

语音克隆 API 服务 简单易用

基于 F5 TTS 的语音克隆 API,支持实时流式输出,提供简单的 HTTP 接口。 自动下载模型,开箱即用。

核心特性

简单、快速、强大的语音克隆服务

实时流式输出

支持流式语音生成,实时返回音频数据,提供流畅的用户体验。

自动模型管理

首次运行自动下载和加载模型,无需手动配置。模型缓存到容器内部,支持 Docker 部署。

简单 API 接口

提供直观的 HTTP GET 接口,只需传递文本参数即可生成语音,易于集成到任何应用。

Docker 部署

提供 GPU 和 CPU 两种 Docker 部署方案,一键启动,快速部署到生产环境。

可定制音色

支持下载和使用自定义参考音色,让语音克隆效果更加个性化和专业。

稳定可靠

基于成熟的 F5 TTS 模型和 FastAPI 框架,确保服务稳定性和高可用性。

快速开始

三步即可启动语音克隆服务

1

下载参考音色

下载预制的参考音色文件到项目目录:

chmod +x scripts/download_maker_tts.sh
sh scripts/download_maker_tts.sh
2

启动服务

使用 Docker 快速启动 API 服务:

docker compose -f docker/docker-compose-gpu.yml
-p f5ttsapi up -d --build
3

调用 API

访问 API 端点生成语音:

curl "http://localhost:17781/infer
?gen_text=你好,欢迎使用语音克隆服务"

常见问题

快速找到您关心问题的答案

首次运行需要多长时间?
首次运行时会自动下载模型文件(约 2GB)和加载模型,这个过程可能需要 5-15 分钟,具体时间取决于网络速度和系统性能。模型下载后会缓存到 /root/.cache 目录,后续启动会更快。
支持哪些部署方式?
支持 Docker 部署(推荐)和本地开发两种方式。Docker 部署提供 GPU 和 CPU 两种配置,GPU 版本推理速度更快。本地开发可以使用 VS Code 的 Dev Container 进入容器环境。
如何使用自定义音色?
您可以下载或录制自己的参考音色文件,放置在项目根路径下的 .cache/.music 目录中。服务会自动使用这些音色进行语音克隆。请确保音频文件格式为支持的格式(WAV/MP3 等)。
API 参数如何使用?
API 主要参数包括:
  • gen_text - 要生成的文本内容(必需)
  • seed - 随机种子,控制生成的一致性
  • stream - 是否使用流式输出(1=是,0=否)
  • refresh - 是否刷新模型(1=是,0=否)