MOSS-Audio-Tokenizer
基于纯Transformer Cat架构的1.6B参数音频分词器,300万小时训练数据,实现极低码率
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
基于纯Transformer Cat架构的1.6B参数音频分词器,300万小时训练数据,实现极低码率
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你有没有想过,当你对手机说一句话,它是如何把你的声音变成文字、再理解你的意图的?这背后有一个关键的"翻译官"——音频 Tokenizer(音频分词器)。它的任务是把连续的声音波形,翻译成 AI 模型能理解的离散"词块",就像把一本书拆成一个个单词。
2026 年 2 月,来自模思智能(OpenMOSS)团队的 MOSS-Audio-Tokenizer 在 GitHub 开源,一跃成为音频 AI 领域最受关注的项目之一。这个 16 亿参数的大模型,基于团队提出的 Cat(Causal Audio Tokenizer with Transformer) 架构,在 300 万小时多样化音频数据上训练,能以极低的码率实现无损音质重建,同时保持丰富的语义信息——这意味着它不只是"听见"声音,更是"听懂"声音。
传统的音频分词器,如 SoundStream、Encodec、HiFi-Codec,几乎都采用 CNN(卷积神经网络) 作为骨干。这类架构在音频建模上表现不错,但存在明显的瓶颈:CNN 的感受野受限于固定卷积核的大小,难以捕获音频中跨秒级甚至跨分钟的长程依赖关系。此外,CNN 的局部特性使其难以实现端到端的全局优化,在面对极端压缩(4kbps 以下)时性能下降明显。
另一个限制是"语义鸿沟"。传统方法将音频编码为声学 Token,这些 Token 高度忠实于原始音频波形,但缺乏语义信息——也就是说,它们记录了"声音长什么样",却没有告诉 AI"这段声音在说什么"。下游的语音识别(ASR)或语音合成(TTS)任务,仍需要额外的语义编码器来弥补这个鸿沟。
MOSS 团队认为,要解决这两个问题,需要从根本上重新思考音频分词器的架构设计。
Cat 架构的核心思想异常简洁:用纯因果 Transformer 替代 CNN 作为骨干网络。这意味着整个模型由一系列自注意力机制堆叠而成,没有卷积层,理论上能捕获任意距离的依赖关系。
音频信号首先被分块(patching)成 240 个采样点(约 10ms,24kHz 采样率下),每个 patch 通过线性映射进入隐藏空间。编码器由 12 层因果 Transformer 组成,每层包含多头自注意力(12 头,维度 768)和前馈网络。这种设计让编码器能充分理解音频在时间维度上的上下文关系。
编码后的表示通过一个 32 层残差矢量量化器(RVQ) 进行离散化。RVQ 的每一层维护一个 codebook,通过最近邻搜索将连续表示映射到离散的 code 序列。不同层捕获不同粒度的信息:前几层负责捕捉粗糙的音高/音色特征,后几层补充高频细节。
这种设计最巧妙之处在于可变码率:只需使用前 8 层(~1kbps)就能获得可接受的音质;使用全部 32 层(~4kbps)则可实现接近透明的音质重建。这让下游应用可以在"压缩率"和"质量"之间自由权衡。
解码器采用与编码器对称的结构,通过 32 层 Transformer 将离散 code 序列重建为音频波形。团队还引入了对抗训练(Multi-scale STFT Discriminator)来提升重建音质。
Cat 架构的一个关键优势是全链路可微分。编码器、RVQ、解码器和判别器在一个统一的训练流程中联合优化,没有蒸馏、没有预训练 encoder,真正从零开始学习音频表示。这与依赖 HuBERT 或 Whisper 等预训练模型的方法形成鲜明对比。
团队在多个公开数据集上对 MOSS-Audio-Tokenizer 进行了评估,结果令人印象深刻:
模型族目前包括四个版本:
| 版本 | 采样率 | 声道 | 参数量 | 适用场景 |
|---|---|---|---|---|
| MOSS-Audio-Tokenizer | 24kHz | 单声道 | 1.6B | 通用音频、语音 |
| MOSS-Audio-Tokenizer-v2 | 48kHz | 立体声 | 更大 | 高保真音乐 |
| MOSS-Audio-Tokenizer-Nano | 48kHz | 立体声 | ~20M | 边缘设备 |
| ONNX Runtime 版本 | 24kHz | 单声道 | — | 高性能推理 |
MOSS-Audio-Tokenizer 的使用方式非常 Pythonic。安装依赖后,通过 Hugging Face Transformers 加载模型,三行代码即可完成音频编码:
import torch
from transformers import AutoModel
import torchaudio
model = AutoModel.from_pretrained(
"OpenMOSS-Team/MOSS-Audio-Tokenizer",
trust_remote_code=True
).eval()
wav, sr = torchaudio.load("audio.wav")
wav = torchaudio.functional.resample(wav, sr, model.sampling_rate).unsqueeze(0)
# 编码:音频 → 离散 Token
codes = model.encode(wav, return_dict=True)
# 解码:Token → 音频
reconstructed = model.decode(codes.audio_codes, return_dict=True)
torchaudio.save("output.wav", reconstructed.audio.squeeze(0), model.sampling_rate)
除了 PyTorch 原生实现,仓库还提供了 ONNX Runtime 和 TensorRT 加速后端,可以在没有 PyTorch 依赖的环境中实现高性能推理。这使得 MOSS-Audio-Tokenizer 能够被集成到各种生产系统中。
流式推理也是亮点:设置 chunk_duration 参数即可实现流式编解码,适合实时语音交互场景(如实时 TTS、语音对话)。
这是一款面向研究与生产的工具,而非消费级应用。使用门槛包括:
对于只想体验音质的非技术用户,可以直接访问团队提供的 MOSS-TTS 在线 Demo,感受基于该 Tokenizer 的语音合成效果。
MOSS-Audio-Tokenizer 并非完美无缺,以下几点值得注意:
MOSS-Audio-Tokenizer 的出现,标志着音频分词器正式进入千亿参数时代。在此之前,音频分词器多被视为"辅助模块",服务于下游的 TTS 或 ASR 任务。而 Cat 架构证明了:只要数据和算力足够,音频分词器本身就能成为一个强大的语义-声学统一表示学习器。
这一方向与 Meta 的 Audiobox、OpenAI 的 GPT-4o 音频能力不谋而合——都在追求让 AI 不仅能"处理"音频,更能"理解"音频。MOSS 团队的开源实践,为中文 AI 社区提供了一个高性能、免费可商用的音频分词基础设施,有望催生出更多高质量的语音生成、语音交互和音乐生成应用。
相关链接: