Skip to main content

A Fast TTS toolkit

Project description


FlashTTS

基于 SparkTTS、OrpheusTTS、MegaTTS 3 等先进模型,FlashTTS 提供高质量的中文语音合成与零样本声音克隆服务。借助简洁直观的 Web 界面,您可以快速生成自然逼真的人声,满足配音、阅读、无障碍、虚拟角色等多元场景需求。

如果 FlashTTS 对你有帮助,欢迎留下一个 ⭐ Star!

✨ 功能亮点

功能 说明
🚀 多后端推理加速 支持 vllmsglangllama‑cppmlx‑lmtensorrt-llm 等多种高性能推理引擎
🎯 高并发 动态批处理与异步队列,轻松应对大流量请求
🎛️ 全参数控制 可调节音调、语速、温度、情感标签等
📱 轻量部署 基于 FastAPI,一条命令即可启动;最小依赖
🔊 长文本合成 支持超长文本,保持连续音色一致
🔄 流式 TTS 边生成边播放,降低等待,提高交互体验
🎭 多角色对话 同文本多角色合成,适合剧本配音
🎨 现代化前端 适配Web端

🖼️ 前端示例

https://github.com/user-attachments/assets/1bd9d586-fac7-4016-b955-5a58d8fb9d7e

🔈 语音演示

下列 Demo 展示了 FlashTTS 在不同模型与角色上的克隆效果。

SparkTTS 模型

Donald Trump en

Donald Trump zh

Donald Trump en

Donald Trump zh

哪吒

李靖

哪吒

李靖

余承东

徐志胜

余承东

徐志胜

MegaTTS 3 模型

蔡徐坤

太乙真人

蔡徐坤

太乙真人

OrpheusTTS (zh) 模型

长乐

白芷

长乐

白芷

快速开始

建议在 python 3.8 - 3.12 环境中使用 pip 安装 flashtts

pip install flashtts

详细安装步骤,请参考:installation.md

本地推理:

flashtts infer \
  -i "你好,欢迎使用语音合成。" \
  -o output.wav \
  -m ./models/your_model \
  -b vllm \
  [其他可选参数]

详细使用说明,请参考:quick_start.md

部署方式:

 flashtts serve \
 --model_path Spark-TTS-0.5B \ 
 --backend vllm \ 
 --role_dir data/roles \ 
 --llm_device cuda \
 --tokenizer_device cuda \
 --detokenizer_device cuda \
 --wav2vec_attn_implementation sdpa \
 --llm_attn_implementation sdpa \ 
 --torch_dtype "bfloat16" \ 
 --max_length 32768 \
 --llm_gpu_memory_utilization 0.6 \
 --host 0.0.0.0 \
 --port 8000

详细部署说明,请参考:server.md

⚡ 推理速度

测试环境:A800 GPU · 模型:Spark-TTS‑0.5B · 测试脚本:speed_test.py

场景 引擎 设备 音频长度 (s) 推理耗时 (s) RTF
短文本 llama‑cpp CPU 7.48 6.81 0.91
短文本 torch GPU 7.18 7.68 1.07
短文本 vllm GPU 7.24 1.66 0.23
短文本 sglang GPU 7.58 1.07 0.14
长文本 llama‑cpp CPU 121.98 117.83 0.97
长文本 torch GPU 113.70 107.17 0.94
长文本 vllm GPU 111.82 7.28 0.07
长文本 sglang GPU 117.02 4.20 0.04

RTF < 1 表示实时合成。

⚙️ 使用提示

  1. SparkTTS 权重需使用 bfloat16float32float16 会报错。
  2. 若遇到长时间空白音,可将 repetition_penalty 调高 (> 1.0)。
  3. OrpheusTTS 支持在文本中插入 <tag> 控制情感,标签见 orpheus_engine.pyLANG_MAP
  4. 出于安全考虑,MegaTTS 3 未公开 WaveVAE 编码器,请参考官方说明下载:参考音频

🤝 鸣谢

⚠️ 免责声明

FlashTTS 仅供学术研究、教育与合法用途,如无障碍辅助、个性化语音合成等。请勿将其用于欺诈、冒充、深度伪造等违法场景。违者自行承担法律与道德责任。

License

本项目沿用 Spark‑TTS 的协议,详情参见 LICENSE

Star History

Star History Chart

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flashtts-0.1.5.tar.gz (128.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flashtts-0.1.5-py3-none-any.whl (168.3 kB view details)

Uploaded Python 3

File details

Details for the file flashtts-0.1.5.tar.gz.

File metadata

  • Download URL: flashtts-0.1.5.tar.gz
  • Upload date:
  • Size: 128.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for flashtts-0.1.5.tar.gz
Algorithm Hash digest
SHA256 81420d528ca77dd328b2364901431f932796f6839fd1245dd3aee7e25a2ee0e9
MD5 a25127c4a5dd6aedc0062280e15c7327
BLAKE2b-256 c2806689e982b9d5eac946fb891a9e58d346287cdf9d88b2433c44878bcf841b

See more details on using hashes here.

File details

Details for the file flashtts-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: flashtts-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 168.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for flashtts-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 31765712004a25bf41962894eb61bd5658667fee52a160c2ab04a874107ee59c
MD5 4172ed6cd17e6beb246b014d3a871371
BLAKE2b-256 38a2efc5f70d2f436c1e2b994e3913ff4e2216fa5a5411584d9800ced9501191

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page