A 120M tiny model is training
VAE-DiT TTS v1.0 Preview
基于 Diffusion Transformer (DiT)、Flow Matching 与 VAE latent 建模 的多语言 Zero-Shot 文本到语音(TTS)模型。只需提供一小段参考音频,即可快速克隆目标说话人的音色,并生成自然流畅的语音。
当前版本为 v1.0 Preview:在早期版本基础上,重点优化了 Duration Predictor(时长预测器),并引入了 GAN-based latent optimization,以进一步提升生成语音的节奏稳定性、清晰度与整体自然度。
💬 开源代码仓库:Light-yzc/F5_like_TTS
试听
- Language: ja
- Text: ありがとうございます!なんだか、すごく嬉しいです、先輩!わたし、今日この時の気持ちをずっと忘れません。
🔔 v1.0 Preview 更新内容
相比先前版本,v1.0 Preview 主要包含以下改进:
✅ 优化 Duration Predictor
- 改善长句与复杂文本下的时长预测稳定性
- 减少语速异常、提前截断、漏音等问题
- 提升多语言场景下的节奏一致性
✅ 新增 GAN-based latent optimization
- 在 VAE latent 空间中引入额外对抗式优化目标
- 提升生成结果的细节表现与音质还原
- 改善高频细节、发音边界与整体听感自然度
✅ 整体推理效果增强
- 更稳定的长文本合成体验
- 更自然的停顿、韵律与句间过渡
- 更好的说话人相似度与可懂度平衡
⚠️ Preview 阶段说明 / Known Limitations
尽管 v1.0 Preview 已对 Duration Predictor 做了明显优化,但在超长句子、复杂混合语言文本或标点稀少的输入上,自动时长预测仍可能出现偏差。
如果在合成长句时遇到以下情况:
- 声音偏快
- 局部漏音
- 结尾被提前截断
- 停顿节奏不理想
建议在推理时手动指定 duration 参数。
例如如果你预估目标输出约为 10 秒,可传入 duration=10.0,以获得更稳定的生成结果。
✨ 特性
- 🌏 多语言支持:中文 (ZH)、日文 (JA)、英文 (EN)
- 🎙️ Zero-shot 声音克隆:只需 3-10 秒参考音频
- 🏗️ 约 500M 参数量:基于 DiT 主干与交叉注意力机制
- ⚡ 30 步快速推理:使用带 Classifier-Free Guidance 的 Sway Sampling
- 🎵 48kHz 高保真输出:基于 Oobleck VAE 的高质量音频解码
- ⏱️ 增强的时长控制能力:优化后的 Duration Predictor 带来更稳定的节奏建模
- 🎚️ GAN latent optimization:进一步改善 latent 质量与最终音频表现
📊 模型架构
| 组件 | 详情 |
|---|---|
| 主干网络 (Backbone) | DiT (30 层, 1024 维度, 16 头) |
| 文本编码器 | F5 风格的字符级 Tokenizer + ConvNeXt (14 层) |
| 音频编码器 | AutoencoderOobleck (64 维隐空间, 25fps) |
| 时长预测器 | 改进版 Duration Predictor(ConvNeXt + Transformer + 多尺度池化) |
| latent 优化 | GAN-based latent optimization / refinement |
| 采样方法 | Flow Matching + Sway Sampling (coef=-1.0) |
| 训练损失 | CTC 对齐损失 + Flow Matching 损失 + 对抗式 latent 优化目标 |
🚀 快速开始
1. 安装依赖
pip install torch torchaudio transformers diffusers phonemizer pykakasi pypinyin rjieba huggingface_hub
apt install espeak-ng # Linux 系统必需,用于 G2P 音素转换
# brew install espeak-ng # macOS
- Downloads last month
- 7