fish-speech
基于 LLM + VQ-VAE 混合架构的开源多语言 TTS,支持 10-30 秒参考音频零样本克隆
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
基于 LLM + VQ-VAE 混合架构的开源多语言 TTS,支持 10-30 秒参考音频零样本克隆
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下这样的场景:你是一家出海游戏公司的音频策划,最近需要为海外版本的 NPC 对话配上本地化配音。传统做法是找配音演员、进录音棚、反复修改——整个流程耗时数周、耗费数万。而现在,你只需要准备几段目标音色的参考音频,加上几分钟时间,就能生成数百条自然流畅的多语言配音。这一切的背后,就站着一个来自中国团队的开源项目——Fish Speech(鱼 Speech)。
Fish Speech 的背后是一家叫 Fish Audio 的初创公司,其创始人曾在剑桥大学研究语音合成方向。2023 年前后,团队注意到一个行业痛点:市面上的商业 TTS(Text-to-Speech)方案要么价格昂贵,要么在中文等非英语语种上质量堪忧,而开源社区虽然有 VITS、GPT-SoVITS 等项目,但在多语言支持、克隆自然度方面仍有明显短板。
于是,这支团队决定自己动手。基于对 VITS2、Bert-VITS2、GPT VITS 等前辈项目的深入研究,结合团队在 LLM 时代的积累,他们从零构建了一套全新的语音合成架构,并在 2024 年 11 月发布了 v1.4 版本,一举冲上 GitHub Trending。2026 年 3 月,团队再接再厉,推出代号 S2 的 v2.0 大版本,在语音质量、多语言能力和推理效率上实现了全面超越。
到今天,Fish Speech 已累积超过 30,000 颗 GitHub Stars,成为开源 TTS 领域毫无争议的标杆项目。它的 HuggingFace 模型下载量突破百万次,产品官网 speech.fish.audio 日均处理数十万次推理请求。
如果用雷达图来衡量一个 TTS 系统的能力,通常会看六个维度:音质、自然度、多语言支持、克隆相似度、推理速度、部署便捷性。Fish Speech 在每一个维度上都做到了第一梯队,没有明显短板。
音质层面,S2 模型采用了 LLM(大语言模型)+ VQ-VAE(向量量化变分自编码器)的混合架构。简单类比一下:LLM 负责「理解」文字背后的语义和情感,就像一个懂多国语言的同声传译员;VQ-VAE 负责「说出」这些语义,就像一个技艺精湛的声音演员。两者配合,生成的语音既有语义准确性,又有音色表现力。相比纯自回归模型(如 GPT-SoVITS),Fish Speech 的离散 token 预测方式大幅提升了推理速度,同时避免了自回归漂移(error accumulation)问题。
多语言支持是 Fish Speech 的核心优势。不同于很多 TTS 系统需要针对每种语言单独训练或做复杂的音素预处理,S2 模型在单一模型中自然习得了 50+ 语言的理解和生成能力。日语、英语、中文作为 Tier 1 语言效果最佳;韩语、西班牙语、葡萄牙语、阿拉伯语等 Tier 2 语言质量可靠;其余语言也做到了可用级别。这种「一站式」的多语言能力,对于需要快速做本地化的游戏、电商、客服等场景来说,是真正的效率利器。
克隆相似度方面,S2 仅需 10-30 秒的参考音频,就能捕捉说话人的音色、语速、情感倾向,实现高保真克隆,且无需额外的微调训练。这一点对于需要快速克隆特定 IP 音色(明星、虚拟主播、品牌代言人)的商业场景极具吸引力。当然,这也意味着必须遵守 Fish Audio Research License,禁止用于未经授权的语音克隆。
原生多说话人是 S2 版本新增的杀手锏特性。传统 TTS 系统在单次生成中切换说话人需要反复调用 API 或上传多段参考音频,而 S2 通过 <|speaker:i|> token 直接控制说话人身份,一张嘴就能实现多个角色的对话——这对有声读物、游戏配音、自动客服等场景是质的飞跃。
多轮对话生成能力则解决了长文本合成中的一致性难题。S2 的扩展上下文窗口能够「记住」前文的说话风格,让后续生成的内容与之前保持连贯自然,特别适合播报、讲解、对话类长音频场景。
从代码组织来看,Fish Speech 的架构分为几个关键模块:
fish_speech/models/:核心模型定义,包含 LLM 主干(类似 Qwen 风格)和 VQ-VAE 解码器fish_speech/train.py:基于 PyTorch Lightning 的训练框架,配合 Hydra 做超参数管理fish_speech/text/:多语言文本预处理,包括Tokenizer、音素转换、语种检测tools/:推理工具集,包含 API Server(gRPC 高性能推理)、WebUI 启动器awesome_webui/:独立的前端项目(TypeScript + Vite),通过 gRPC 与后端通信,提供 Gradio 风格的 Web UI训练层面,项目使用了 Lightning Fabric 做分布式训练,支持多节点多卡扩展;实验追踪集成了 WandB;数据集管理基于 HuggingFace Datasets;模型权重托管在 HuggingFace Hub(fishaudio/s2-pro)和 ModelScope 上。
推理层面,项目提供了两条路径:轻量的 WebUI 模式(Gradio 前端,适合快速体验)和高性能的 API Server 模式(gRPC,适合生产部署)。API Server 还支持 SGLang 推理引擎集成,能够进一步提升吞吐。
代码质量方面,项目使用 pyproject.toml 标准化依赖管理,配置系统采用 Hydra(支持命令行覆盖参数),完整的预提交检查(pre-commit hooks),Pyright 静态类型检查,以及详细的文档(多语言 README)。整体来看,这不是一个「能跑就行」的实验项目,而是一个面向生产环境的工程化产品。
对于普通用户,Web UI 模式是最简单的起点。克隆仓库、启动 docker compose --profile webui up,几分钟后就能在浏览器里上传参考音频、输入文字、生成语音。Gradio 界面直观友好,不需要写一行代码。
对于开发者或需要集成到自有系统的用户,API Server 模式是更好的选择。通过 docker compose --profile server up 启动 gRPC 服务,然后调用官方提供的 Python 客户端(tools/api_client.py)或直接发 HTTP/gRPC 请求即可。SGLang 集成方式也有官方文档支持,适合高并发场景。
硬件方面,S2 模型的推荐配置是 NVIDIA GPU + 6GB+ VRAM(fp16 推理),CPU 也能运行但速度较慢。模型权重约 5-10GB,建议准备 15GB+ 存储空间。
Fish Speech 同样面临一些值得关注的问题。
许可风险是最大的隐患。项目采用自研的 Fish Audio Research License,并非标准的 Apache 2.0 或 MIT 开源许可,其中对商业使用有明确限制。这意味着任何计划将 Fish Speech 用于商业产品的人,都需要仔细审查许可条款,避免侵权。
克隆伦理同样不可忽视。S2 的零样本克隆能力虽然技术上令人振奋,但也意味着任何人只要有几秒音频就能克隆他人的声音。Fish Audio 官方明确声明对非法使用概不负责,但技术本身的中立性与实际应用中的滥用风险之间的张力,是整个行业都需要面对的问题。
GPU 依赖对没有独显的用户不够友好。虽然可以通过 CPU 推理运行,但速度会显著下降,这在一定程度上限制了项目的可及性。
Fish Speech 的崛起折射出一个更大的趋势:开源 TTS 正在快速缩小与商业方案的差距。2023 年之前,高质量语音合成几乎是商业厂商的专属领地;而到了 2026 年,Fish Speech、Bert-VITS2 等开源项目已经能在很多场景下与之匹敌。
对于中国 AI 社区而言,Fish Speech 还有一个特殊意义:它证明了中国团队在语音 AI 领域不仅能跟跑,更能在某些方向(如多语言统一建模、LLM 驱动的语音生成)领跑。项目代码库本身的工程水准也值得称道——Hydra 配置系统、Lightning 训练框架、多语言文档(7 种语言)、完整的 Docker 化部署——这些都是可以直接借鉴到其他项目上的工程最佳实践。
总的来看,Fish Speech 是一个技术深度与工程完成度兼备的开源项目。无论你是想快速克隆一个音色、构建一个多语言客服机器人,还是深入研究 LLM + 语音的融合架构,它都值得花时间深入了解。唯一的门槛是:你得有一块 NVIDIA 显卡。