IndexTTS 是一个基于 XTTS 和 Tortoise 的 GPT 风格文本到语音(TTS)模型。该项目主要针对中文场景进行了优化,并引入了多项改进,使其在发音准确性、音色相似度和音频质量方面表现出色。根据项目页面的描述,该系统经过数万小时数据训练,在性能上超越了当前流行的 TTS 系统,如 XTTS、CosyVoice2、Fish-Speech 和 F5-TTS。
核心特性:
中文发音纠正 :
- 引入了 “字符 - 拼音混合建模” 方法,可以通过拼音来快速纠正中文生僻字或易错字的发音问题。
增强的模型架构 :
灵活控制语句节奏 :
大规模训练数据 :
开源与评测集发布 :
技术亮点总结:
| 改进点 | 描述 |
| 字符 - 拼音混合建模 | 提高中文发音准确性,支持快速纠正错误发音 |
| Conformer Conditioning Encoder | 提升语音特征表示能力 |
| BigVGAN2 解码器 | 显著提高音频质量和合成稳定性 |
| 多样化测试集公开 | 包括主观、客观及多音字测试集,方便评估 |
Index-TTS 高级参数推荐表
| 参数名 | 说明 | 建议值 | 使用建议 |
temperature | 控制采样随机性,数值越高语音越 “创造性”,越低越稳定 | 0.6 ~ 1.2 | <br>・低值(0.6<sub>0</sub>.8)适合正式播报 <br>・高值(1.0<sub>1</sub>.2)适合富有表现力的语气(如讲故事) |
length_penalty | 控制语音长度,影响语速和停顿 | 0.8 ~ 1.2 | <br>・>1:语速变慢,适合抒情 / 缓慢语气 < br>・<1:语速加快,适合快节奏内容 |
repetition_penalty | 抑制重复发音,避免语音中的卡顿或重复现象 | 1.0 ~ 1.5 | <br>・提高该值可减少语音重复问题 < br>・值过高可能导致语音不自然 |
top_p | 核采样(nucleus sampling)概率阈值,用于限制采样范围 | 0.8 ~ 0.95 | <br>・较高值保留更多候选词,增强多样性 < br>・较低值更保守,语音更稳定 |
top_k | 从 top-k 个最可能的 token 中采样 | 50 ~ 100 | <br>・控制生成语音的多样性和稳定性 < br>・数值过小容易导致语音单调 |
prompt_temperature | 控制参考语音(prompt)的风格提取强度 | 0.3 ~ 0.7 | <br>・高值提取更多风格特征(适合模仿特定语气)<br>・低值保持通用音色 |
prompt_length_penalty | 调整参考语音对整体语速的影响 | 0.9 ~ 1.1 | <br>・接近 1 表示完全保留原语速 < br>・稍微调整可用于适配不同文本长度 |
phoneme_level | 是否启用拼音 / 音素级别控制(用于纠正发音) | False / True | <br>・True 可手动输入拼音以修正生僻字 < br>・适合中文发音复杂场景 |
emotion | 情感标签(实验性),指定语音情感类别 | "neutral", "happy", "sad", "angry" 等 | <br>・当前为实验功能,需配合训练数据使用 < br>・可尝试切换情绪表达 |
speaker_id | 多说话人支持,选择不同的预训练音色 | int, 如 0, 1, 2... | <br>・不同 ID 对应不同性别 / 年龄 / 口音 < br>・查看模型文档获取具体音色描述 |
speed | 整体语速控制(非实时倍速) | 0.8 ~ 1.2 | <br>・类似 length_penalty,但更直接 < br>・适合与播放器同步使用 |
noise_scale | 添加语音噪声,增加自然度 | 0.3 ~ 0.7 | <br>・增加轻微波动使语音更真实 < br>・过大会引入杂音 |
noice_w | 控制语音波形的随机扰动程度 | 0.8 ~ 1.2 | <br>・影响语音的 “呼吸感” 和自然度 < br>・默认值即可满足多数场景 |
正常语音合成(默认配置)
{
"temperature": 0.8,
"length_penalty": 1.0,
"repetition_penalty": 1.2,
"top_p": 此内容 登录 或 注册 后可见