bark
Suno 开源的 Transformer 文本转音频模型,支持多语言语音、音乐和音效生成,GitHub 超 39K star。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
Suno 开源的 Transformer 文本转音频模型,支持多语言语音、音乐和音效生成,GitHub 超 39K star。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。

"你好,我叫 Suno,我喜欢披萨。"——这句话不是真人说的,是 Bark 根据文字提示生成的。2023 年 4 月,Suno 公司开源了这款完全生成式的文本转音频模型,一经发布便在 GitHub 上掀起热潮,一个月内狂揽近 2 万 star,震惊了整个 AI 圈。
在 Bark 诞生之前,AI 生成音频的主流方案是"传统 TTS"——即先把文字转成音素(phoneme),再让模型朗读这些音素。过程就像翻译一篇文章:先把中文转成英文,再让老外念英文——中间多了一层"翻译",失真不可避免。
Bark 的出现彻底改变了这一范式。它将文字直接映射为音频,跳过了音素这一步——就像雇了一个会中文的人直接说中文,没有中间商赚差价。这种"端到端"的思路,让 Bark 生成的语音更自然、更富有表现力,甚至还能模拟笑声、叹息、哭泣等非语言声音。
Bark 的三位作者 Mikey Shulman、Georg Kucsko 和 Tony Tong 均来自 Suno 公司。公司联合创始人 Shulman 在接受 Latent Space 播客采访时透露,Bark 的诞生源于一个朴素的判断:音频生成是 AI 的最后一块拼图——文字有 GPT,图片有 Diffusion,音频却迟迟没有突破。Suno 想在这个领域"先发制人"。
项目发布后,AI 社区反应热烈。有开发者用它做有声书,有创作者用它生成播客配音,还有人在 Discord 社区里分享各种语言的语音样本(从韩语到德语应有尽有),有人甚至用 Bark 实现了"语音克隆"——输入一段参考音频,Bark 就能用相似的音色说话。
Bark 的核心架构深受 Karpathy 的 NanoGPT 启发,采用三个串联的 Transformer 模型,每段负责不同的音频生成任务:
| 模型 | 参数量 | 注意力类型 | 输出词表大小 |
|---|---|---|---|
| Text → Semantic | 80M(完整版 300M) | Causal | 10,000 |
| Semantic → Coarse | 80M(完整版 300M) | Causal | 2×1,024 |
| Coarse → Fine | 80M(完整版 300M) | Non-causal | 6×1,024 |
第一阶段(Text to Semantic): 输入文本通过 Hugging Face 的 BERT Tokenizer 分词,输出语义 tokens。这些 tokens 不是简单的音素,而是包含了语调、情感、停顿等高层语义的离散表示。
第二阶段(Semantic to Coarse): 将语义 tokens 转换为 EnCodec 音频编码器的前两个 codebook。EnCodec 是 Meta(原 Facebook)开源的高质量音频编解码器,将音频压缩为离散的 token 序列。这里用到的是其最低比特率层,保留了语音的主要结构信息。
第三阶段(Coarse to Fine): 利用 EnCodec 的全部 8 个 codebook 生成高保真音频。不同于前两段的因果注意力(Causal),这阶段使用非因果注意力,能同时参考前后上下文,实现更精细的音频重建。
最终 8 个 codebook 合并后,通过 EnCodec 解码器还原为波形音频,采样率为 24kHz。
技术栈一览: PyTorch 是主力深度学习框架;Transformers 库(HuggingFace)封装了 Bark 的推理接口;EnCodec 来自 Meta;boto3 用于模型权重的 S3 存储。代码结构清晰,主要模块包括 api.py(高阶 API)、generation.py(核心生成逻辑)和 model.py(Transformer 架构,受 NanoGPT 启发)。
多语言语音生成是 Bark 的招牌能力。它支持包括中文、英语、日语、韩语、德语在内的数十种语言,且语言识别是自动的——你只需要输入对应语言的文字即可。有趣的是,Bark 还能"语言混搭":用中文提示词 + 英文参考音频,生成的是带英语口音的中文语音。
语音克隆通过 history_prompt 参数实现。上传一段参考音频,Bark 就能模仿其中的音色说话。这既是亮点也是争议点——团队在免责声明中特别强调:"Bark 不是传统 TTS,它可能以意外方式偏离给定脚本。Suno 不对任何生成内容负责,请负责任地使用。"
音乐和音效生成是 Bark 区别于普通 TTS 的独特之处。在提示词中加个 [sings] 标签,模型就会用歌唱的方式表达。还有 [laughs]、[sighs]、[gasps] 等语义标签,能生成笑声、叹息、喘息等非语言声音——这些在传统 TTS 中几乎不可能实现。
HuggingFace Spaces 在线体验让没有 GPU 的用户也能尝鲜。访问 huggingface.co/spaces/suno/bark,输入文字即可生成音频,完全免费。Colab 笔记本也提供了完整的 Jupyter 环境演示。
Bark 的安装非常简单:
pip install git+https://github.com/suno-ai/bark.git
或者借助 HuggingFace Transformers(更推荐,依赖更少):
pip install transformers scipy
Python 使用示例:
from transformers import pipeline
import scipy
synthesiser = pipeline("text-to-speech", "suno/bark")
speech = synthesiser("[laughs] 大家好,我是一个会笑的 AI!", forward_params={"do_sample": True})
scipy.io.wavfile.write("bark_out.wav", rate=speech["sampling_rate"], data=speech["audio"])
命令行模式:
python -m bark --text "你好,世界" --output_filename hello.wav
硬件要求: 推荐 NVIDIA GPU(4GB+ 显存),无 GPU 的 CPU 环境也能运行,但速度会慢很多——生成一段 10 秒音频可能需要几分钟,而 GPU 只需几秒。首次运行需要联网下载模型文件(约 10GB)。
⚠️ 注意: 官方仓库明确警告"不要用 pip install bark",因为 PyPI 上存在同名但非官方的包,会导致安装错误。
语音克隆风险是最大争议。虽然 Bark 的语音克隆效果不如 Vall-E 那样精确,但足以以假乱真。团队也承认这一点,并在仓库中附带了一个"AI 生成音频检测器",以期降低滥用风险。
文本理解能力有限是技术局限。Bark 是生成式模型而非理解式模型,它的任务是"续写"音频,而非严格遵循文字指令。有用户反映,生成内容有时与输入文字存在偏差——尤其在长文本场景下,"幻觉"现象明显。
生成速度偏慢在 CPU 环境下尤为突出。此外,由于是完全生成式模型,每次生成结果都不完全相同(除非固定随机种子),这对需要稳定输出的场景不太友好。
不支持流式推理,即无法边生成边播放,必须等待完整音频生成完毕才能输出。
Bark 的发布在 AI 音频领域具有标志性意义。它是首个完全开源的 Transformer 文本转音频模型,打破了商业 TTS 服务的垄断格局。在其发布后,围绕 Bark 诞生了大量社区项目:有人用它做多语言有声书,有人开发了 WebUI 界面,还有人在 Discord 上建立了数千人的 Suno 社区。
从数据上看,Bark 在 GitHub 拥有超过 39,000 star、4,600+ forks,是音频生成领域 star 数最高的开源项目之一。其设计理念——将 GPT 架构引入音频生成——也影响了后续一系列工作(如 MusicGen、AudioLM 等)。
Bark 还推动了 AI 音频民主化进程。在此之前,高质量语音合成是 ElevenLabs、OpenAI 等付费服务的专属能力;而 Bark 让任何有 GPU 的开发者都能在本地跑出一个相当不错的 TTS 系统。
总结: Bark 是一款"出道即巅峰"的生成式音频模型,技术创新性强、社区活跃度高、应用场景广泛。虽然存在克隆风险和生成可控性等争议,但其开源精神和出色的生成效果使其成为 2023 年最值得关注的 AI 项目之一。