IndexTTS 开源项目使用教程
1. 项目介绍
IndexTTS 是一个基于 GPT 风格的文本到语音(TTS)的开源模型,主要基于 XTTS 和 Tortoise。它能够通过拼音纠正中文汉字的发音,并通过标点符号控制任意位置的停顿。该系统经过多个模块的优化,包括提升说话人条件特征表示和整合 BigVGAN2 以优化音频质量。训练在数万小时的数据上进行,IndexTTS 达到了业界领先的性能,超过了当前流行的 TTS 系统,如 XTTS、CosyVoice2、Fish-Speech 和 F5-TTS。
2. 项目快速启动
环境配置
首先,克隆这个仓库:
git clone https://github.com/index-tts/index-tts.git
然后,安装依赖:
conda create -n index-tts python=3.10
conda activate index-tts
pip install -r requirements.txt
apt-get install ffmpeg
下载模型:
wget https://huggingface.co/IndexTeam/Index-TTS/resolve/main/bigvgan_discriminator.pth -P checkpoints
wget https://huggingface.co/IndexTeam/Index-TTS/resolve/main/bigvgan_generator.pth -P checkpoints
wget https://huggingface.co/IndexTeam/Index-TTS/resolve/main/bpe.model -P checkpoints
wget https://huggingface.co/IndexTeam/Index-TTS/resolve/main/dvae.pth -P checkpoints
wget https://huggingface.co/IndexTeam/Index-TTS/resolve/main/gpt.pth -P checkpoints
wget https://huggingface.co/IndexTeam/Index-TTS/resolve/main/unigram_12000.vocab -P checkpoints
运行测试脚本:
请将你的提示音频文件放在 test_data 目录下,并重命名为 input.wav:
PYTHONPATH=. python indextts/infer.py
Web 演示
运行以下命令启动 Web 界面:
python webui.py
然后在浏览器中访问 http://127.0.0.1:7860 查看演示。
3. 应用案例和最佳实践
以下是一个简单的使用案例:
from indextts.infer import IndexTTS
tts = IndexTTS(
model_dir="checkpoints",
cfg_path="checkpoints/config.yaml"
)
voice = "reference_voice.wav"
text = "大家好,我现在正在体验 AI 科技,说实话,来之前我绝对想不到!AI 技术已经发展到这样匪夷所思的地步了!比如说,现在正在说话的其实是我的数字分身,简直就是平行宇宙的另一个我了。如果大家也想体验更多深入的 AIGC 功能,可以访问 bilibili studio,相信我,你们也会吃惊的。"
tts.infer(voice, text, output_path="output.wav")
这段代码会根据提供的参考声音和文本生成语音输出。
4. 典型生态项目
IndexTTS 作为文本到语音的开源项目,可以与其他开源项目结合,例如:
- wenet:一个开源的自动语音识别(ASR)系统。
- icefall:一个开源的语音识别工具包。
- Tortoise 和 XTTS:其他文本到语音的框架。
这些项目可以共同构建一个完整的语音处理生态系统,从语音识别到语音合成,提供端到端的语音处理解决方案。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



