Fish Speech:超越闭源的顶尖 TTS 系统,多语言语音合成的突破之作
Fish Speech:超越闭源的顶尖 TTS 系统,多语言语音合成的突破之作
在文本转语音(TTS)领域,开源系统一直难以超越闭源服务。然而,Fish Audio 推出的 Fish Speech S2 正在改变这一格局——这是在开源和闭源系统中都堪称最佳的 TTS 系统。
Fish Speech S2 在超过 1000 万小时的音频数据上进行训练,覆盖约 50 种语言。它结合了强化学习对齐和双自回归架构,能够生成自然、逼真且情感丰富的语音。
🏆 性能表现:全面超越对手
Fish Speech S2 在多个基准测试中展现了卓越的性能:
Seed-TTS 评测
| 指标 | Fish Audio S2 | Qwen3-TTS | MiniMax Speech-02 | Seed-TTS |
|---|---|---|---|---|
| WER(中文) | 0.54% | 0.77% | 0.99% | 1.12% |
| WER(英文) | 0.99% | 1.24% | 1.90% | 2.25% |
Audio Turing Test
Fish Audio S2:0.515(后验均值)
Seed-TTS:0.417(低 24%)
MiniMax-Speech:0.387(低 33%)
EmergentTTS-Eval
总体胜率:81.88%(最高)
副语言学(paralinguistics):91.61% 胜率
问题回答:84.41% 胜率
句法复杂性:83.39% 胜率
多语言性能
在 MiniMax 测试集的 24 种语言中:
11 种语言达到最佳 WER
17 种语言达到最佳 SIM(相似度)
🎯 核心技术特性
1. 自然语言细粒度控制
S2 通过在文本中的特定单词或短语位置嵌入自然语言指令,实现语音生成的局部控制。
不同于依赖预定义标签集的传统方法,S2 接受自由形式的文本描述:
今天天气真好[laugh],我们可以去公园玩
请小声一点说[whisper in small voice]
用专业的广播语气来说[professional broadcast tone]
提高音调[pitch up]
这意味着你可以用任何自然语言描述来控制语音表现,无需预先定义的标签系统。
2. 双自回归架构
S2 基于仅解码器的 Transformer,结合了基于 RVQ 的音频编解码器(10 个码本,约 21 Hz 帧率)。双自回归架构将生成分为两个阶段:
┌─────────────────────────────────────────────────────────────┐
│ 双自回归架构 │
├─────────────────────────────────────────────────────────────┤
│ Slow AR(慢速 AR) │
│ - 沿时间轴运行 │
│ - 预测主要语义码本 │
│ - 4B 参数 │
├─────────────────────────────────────────────────────────────┤
│ Fast AR(快速 AR) │
│ - 在每个时间步生成剩余 9 个残差码本 │
│ - 重构细粒度的声学细节 │
│ - 400M 参数 │
└─────────────────────────────────────────────────────────────┘
这种不对称设计——时间轴 4B 参数,深度轴 400M 参数——在保持音频保真度的同时,使推理高效。
3. 强化学习对齐
S2 使用群体相对策略优化(GRPO)进行后训练对齐。用于过滤和标注训练数据的相同模型直接在 RL 期间作为奖励模型使用——消除了预训练数据和后训练目标之间的分布不匹配。
奖励信号结合了:
语义准确性
指令遵循度
声学偏好评分
音色相似度
4. 生产级流式推理
由于双自回归架构在结构上与标准自回归 LLM 同构,S2 直接继承了来自 SGLang 的所有 LLM 原生服务优化:
连续批处理
分页 KV 缓存
CUDA Graph 重放
基于 RadixAttention 的前缀缓存
在单个 NVIDIA H200 GPU 上:
| 指标 | 性能 |
|---|---|
| 实时因子(RTF) | 0.195 |
| 首音频时间 | ~100 ms |
| 吞吐量 | 3000+ 声学 Token/秒,同时保持 RTF < 0.5 |
5. 多语言支持
S2 支持高质量多语言文本转语音,无需音素或特定语言的预处理。支持的语言包括:
英语、中文、日语、韩语、阿拉伯语、德语、法语...以及更多!
语言列表在不断扩展,访问 [Fish Audio](https://fish.audio/) 了解最新发布。
6. 原生多说话人生成
Fish Speech S2 允许用户上传包含多个说话人的参考音频,模型将通过 <|speaker:i|> 标记处理每个说话人的特征。
上传包含多个说话人的参考音频
ov add-speaker audiowithmulti_speakers.wav使用说话人 ID 控制生成
<|speaker:0|>你好,我是说话人 A <|speaker:1|>你好,我是说话人 B <|speaker:0|>很高兴见到你
这使得单一生成可以包含多个说话人,无需为每个说话人单独上传参考音频。
7. 多轮生成
得益于模型上下文的扩展,模型现在可以使用先前信息来提高后续生成内容的表现力,从而增加内容的自然度。
8. 快速语音克隆
Fish Speech S2 支持使用短参考样本(通常 10-30 秒)进行精确的语音克隆。模型捕获音色、说话风格和情感倾向,产生逼真且一致的克隆语音,无需额外微调。
📦 模型版本
| 模型 | 大小 | 可用性 | 描述 |
|---|---|---|---|
| S2-Pro | 4B 参数 | [HuggingFace](https://huggingface.co/fishaudio/s2-pro) | 全功能旗舰模型,最大质量和稳定性 |
🚀 快速开始
安装
使用官方文档轻松上手:
[安装指南](https://speech.fish.audio/install/)
[命令行推理](https://speech.fish.audio/inference/#command-line-inference)
[WebUI 推理](https://speech.fish.audio/inference/#webui-inference)
[服务器推理](https://speech.fish.audio/server/)
[Docker 设置](https://speech.fish.audio/install/#docker-setup)
命令行推理
安装 Fish Speech
pip install fish-speech运行 TTS
fish-speech --text "你好,世界" --output output.wav --speaker-reference speaker.wav
WebUI 推理
启动 WebUI
fish-speech-webui访问 http://localhost:7860
Docker 部署
拉取 Docker 镜像
docker pull fishaudio/fish-speech运行容器
docker run -p 7860:7860 fishaudio/fish-speech
SGLang 服务器
对于生产级流式推理,使用 SGLang 服务器:
安装 SGLang-Omni
pip install "sglang-omni[fishaudio]"启动服务器
python -m sglangomni.serve.fishaudios2_pro \
--model-path fishaudio/s2-pro \
--port 8000调用 API
curl http://localhost:8000/v1/audio/speech \
-H "Content-Type: application/json" \
-d '{
"text": "你好,世界",
"speaker": "speaker_id"
}'
详细使用方法请参考 [SGLang-Omni README](https://github.com/sgl-project/sglang-omni/blob/main/sglangomni/models/fishaudios2_pro/README.md)。
🎨 高级功能示例
情感控制
text = "今天是个好日子[super happy],阳光明媚,微风不燥"
fish_speech.generate(text, speaker="speaker.wav")
语速控制
text = "请慢一点说[slow down],让我听清楚每一个字"
fish_speech.generate(text, speaker="speaker.wav")
音调变化
text = "注意听我说[pitch up],这很重要[serious]"
fish_speech.generate(text, speaker="speaker.wav")
多角色对话
text = """ <|speaker:0|>你好,请问有什么可以帮你的吗? <|speaker:1|>我想查询一下我的订单状态 <|speaker:0|>好的,请提供您的订单号
"""
fishspeech.generate(text, speakerrefs=["speaker0.wav", "speaker1.wav"])
📚 技术细节
RVQ 编解码器
Fish Speech 使用残差向量量化(RVQ)编解码器:
10 个码本:分层量化音频
21 Hz 帧率:平衡质量和效率
高效压缩:显著降低模型输入大小
Transformer 架构
仅解码器架构:与 GPT 类似
注意力机制:高效处理长序列
位置编码:支持长上下文
强化学习对齐
GRPO 算法:群体相对策略优化
多目标奖励:语义、指令、声学、音色
数据重用:训练数据作为奖励模型
🌟 应用场景
1. 有声读物制作
使用 Fish Speech 快速生成高质量的有声读物,支持多种语言和情感表达。
2. 游戏角色配音
为游戏角色生成自然、生动的语音,支持多角色对话和情感控制。
3. 视频配音
自动为视频内容添加配音,支持同步生成多语言版本。
4. 虚拟助手
为虚拟助手提供自然、流畅的语音交互能力。
5. 无障碍服务
为视障用户提供文本转语音服务,改善访问体验。
6. 语言学习
帮助语言学习者练习听力,提供标准发音示例。
🎯 性能优化建议
GPU 选择
| GPU | 推荐场景 | 预期性能 |
|---|---|---|
| NVIDIA H200 | 生产环境 | RTF < 0.2 |
| NVIDIA A100 | 高性能需求 | RTF < 0.3 |
| NVIDIA 4090 | 开发测试 | RTF < 0.5 |
| NVIDIA 3090 | 基础需求 | RTF < 0.8 |
批处理优化
使用 SGLang 的连续批处理功能
合理设置批大小以提高吞吐量
使用前缀缓存减少重复计算
内存优化
使用 KV 缓存减少显存占用
合理设置上下文长度
使用半精度浮点数(FP16)推理
📖 许可证声明
> 许可证声明
>
> 本代码库及其关联的模型权重在 [FISH AUDIO RESEARCH LICENSE](LICENSE) 下发布。详细信息请参考 [LICENSE](LICENSE) 文件。我们将对任何违反许可证的行为采取行动。
>
> 法律免责声明
>
> 我们不对代码库的任何非法使用承担任何责任。请参考当地法律关于 DMCA 和其他相关法律的规定。
🔗 相关资源
项目资源
[GitHub 仓库](https://github.com/fishaudio/fish-speech)
[HuggingFace 模型](https://huggingface.co/fishaudio/s2)
[官方文档](https://speech.fish.audio/)
[在线演示](https://fish.audio/)
技术论文
[ArXiv 论文](https://arxiv.org/abs/2411.01156)
[技术报告 PDF](https://github.com/fishaudio/fish-speech/blob/main/FishAudioS2TecReport.pdf)
[博客文章](https://fish.audio/blog/fish-audio-open-sources-s2/)
社区
[Discord 社区](https://discord.gg/Es5qTB9BcN)
[QQ 频道](https://pd.qq.com/s/bwxia254o)
[Docker Hub](https://hub.docker.com/r/fishaudio/fish-speech)
🏆 致谢
Fish Speech 站在巨人的肩膀上,感谢以下项目的贡献:
[VITS2](https://github.com/daniilrobnikov/vits2)
[Bert-VITS2](https://github.com/fishaudio/Bert-VITS2)
[GPT VITS](https://github.com/innnky/gpt-vits)
[MQTTS](https://github.com/b04901014/MQTTS)
[GPT Fast](https://github.com/pytorch-labs/gpt-fast)
[GPT-SoVITS](https://github.com/RVC-Boss/GPT-SoVITS)
[Qwen3](https://github.com/QwenLM/Qwen3)
🎯 总结
Fish Speech S2 是一个革命性的开源 TTS 系统:
✅ 顶尖性能:在多个基准测试中超越所有闭源和开源系统
✅ 自然控制:使用自然语言指令实现细粒度控制
✅ 多语言支持:覆盖 50+ 种语言,无需特定预处理
✅ 生产级性能:RTF < 0.2,适合实时应用
✅ 开源可用:FISH AUDIO RESEARCH LICENSE 下开源
如果你正在寻找一个性能卓越的开源 TTS 系统,Fish Speech 绝对是你的最佳选择。
---
本文由 cnbugs.com 发布,转载请注明出处。







