LongCat-Audio-Codec:为语音大语言模型设计的音频标记化与解标记解决方案
在语音大语言模型快速发展的今天,如何在低比特率下实现高质量音频重建成为了技术发展的关键瓶颈。美团LongCat团队开源的音频编解码器给出了一个令人惊艳的答案。
什么是音频编解码器,为什么它在语音大语言模型中如此重要?
如果你使用过语音助手、在线会议软件或者任何语音处理工具,那么你已经间接使用了音频编解码技术。简单来说,音频编解码器就像是音频数据的“压缩包”,它能够将庞大的原始音频信号压缩成更小的数据包,便于存储和传输,然后在需要时再解压还原。
在语音大语言模型领域,编解码器的作用更加关键。传统的大语言模型如GPT系列处理的是文本标记,而语音大语言模型需要处理的是语音信号。这就带来了一个核心挑战:如何将连续的语音信号转换成离散的标记序列,同时保留足够的语义和声学信息?
这正是LongCat-Audio-Codec要解决的核心问题。它是一个专门为语音大语言模型设计的音频标记化与解标记解决方案,能够在极低的比特率下实现高质量的音频重建,为语音大语言模型的发展提供了强有力的基础设施支持。
LongCat-Audio-Codec的核心创新点
分离的语义-声学标记化架构
传统的音频编解码器通常只关注声学细节的重建,而忽略了语义信息的保留。LongCat-Audio-Codec采用了一种创新的双路径架构,分别处理语义信息和声学信息。
想象一下,当你在听一个人说话时,你的大脑会同时处理两个层面的信息:一是对方在说什么(语义),二是对方是怎么说的,包括音色、语调、节奏等(声学特征)。LongCat-Audio-Codec模拟了这一过程:
-
语义编码器:专注于提取语音中的语言学内容,类似于理解“说话的内容” -
声学编码器:专注于捕捉语音的细节特征,类似于识别“说话的方式”
这种分离的架构带来了显著的优势。语义标记确保了语音内容的准确传递,而声学标记则保证了语音的自然度和真实感。在实际应用中,这种分离还允许用户根据具体需求灵活调整声学标记的数量,在比特率和重建质量之间找到最佳平衡点。
超低帧率与多码本配置
LongCat-Audio-Codec以16.67Hz的超低帧率对语音进行编码,这意味着每秒钟只生成约17个标记帧。相比传统编解码器50-100Hz的帧率,这显著减少了标记数量,减轻了下游语言模型的处理负担。

编解码器支持灵活的码本配置,用户可以选择使用2、3或4个码本,对应的比特率分别为0.43kbps、0.65kbps和0.87kbps。这种灵活性使得模型能够适应不同的应用场景:
-
2码本配置(0.43kbps):适用于对带宽极度敏感的场景,如实时通信 -
3码本配置(0.65kbps):在比特率和质量之间取得平衡 -
4码本配置(0.87kbps):适用于对音质要求更高的场景
低延迟流式解码器
在实际应用中,许多场景如实时语音通信、交互式语音助手等都对延迟极为敏感。LongCat-Audio-Codec的解码器采用了专门的流式设计,仅需3帧(约180毫秒)的未来信息即可生成高质量的音频输出。
这种低延迟特性使得它非常适合实时应用场景,用户几乎感觉不到处理延迟,体验更加自然流畅。
多阶段训练策略
LongCat-Audio-Codec的训练过程分为三个阶段,每个阶段都有明确的目标:
第一阶段:编码器预训练
在这一阶段,团队使用了约50万小时的多样化语音数据,确保编码器能够适应各种语音模式和声学环境。重点是提高语音的可懂度,而非过分关注声学细节。
第二阶段:解码器预训练
编码器参数被冻结,只训练解码器。这一阶段使用了约1,000小时的高质量录音数据和25万小时经过增强处理的语音数据。解码器在这一阶段学会了将标记“翻译”回高质量音频,甚至能够修复一些输入音频中的缺陷。
第三阶段:解码器微调(可选)
针对特定说话人进行进一步优化,提高对目标说话人音色的重建质量。这一阶段对于语音合成等应用特别有价值。
Train-More-Use-Less(TMUL)技术
这是一个非常巧妙的训练策略:团队首先训练一个包含更多码本的编解码器(如4码本),然后在实际使用时只选择其中的部分码本(如2码本)。实验证明,这种方法比直接训练一个2码本编解码器效果更好。
为什么会这样?可以这样理解:当所有信息都必须压缩到单个码本时,一些异常值会侵占主流信息的表示空间。而在多码本训练中,第一层码本可以捕获最重要的信息,从而获得更低的平均重建误差。
LongCat-Audio-Codec的性能表现如何?
与同类技术的对比
在标准化测试集LibriTTS testset-B上的评估结果显示,LongCat-Audio-Codec在不同比特率下都表现出色:
在0.85-2kbps范围内(使用4码本配置,0.87kbps):
-
词错误率(WER):1.48,显著优于同类语义编解码器 -
语音质量感知评估(PESQ):2.30,表现最佳 -
短时客观可懂度(STOI):0.921,竞争力强
在0.65-0.85kbps范围内(使用3码本配置,0.65kbps):
-
词错误率(WER):1.70,大幅领先于同类技术 -
语音质量感知评估(PESQ):2.01,表现良好
在<0.65kbps范围内(使用2码本配置,0.43kbps):
-
词错误率(WER):2.10,在极低比特率下仍保持良好可懂度 -
短时客观可懂度(STOI):0.839,明显优于竞争对手
重建质量随比特率的变化趋势
随着比特率的增加,LongCat-Audio-Codec的各项指标呈现出一致且积极的改善趋势:
-
词错误率(WER):从2.10降至1.48,改善29.5% -
基音错误率(GPE):从3.69降至1.65,改善55.3% -
语音质量感知评估(PESQ):从1.47升至2.30,改善56.5% -
短时客观可懂度(STOI):从0.839升至0.921,改善9.8%
这些数据证明,LongCat-Audio-Codec能够在不同比特率需求下提供相应的质量保障,用户可以根据实际应用场景灵活选择配置。
说话人相似度和音频质量提升
通过多阶段训练策略,LongCat-Audio-Codec在说话人相似度和音频质量方面也取得了显著进展:

如图显示,经过第二阶段和第三阶段的训练,说话人相似度从0.717显著提升至0.938。这意味着重建的语音不仅在内容上准确,在音色、语调和韵律上也更加接近原始说话人。
在音频质量方面,经过第二阶段训练的24kHz解码器在多项客观质量指标上均有显著提升,甚至在某些维度上超过了原始测试集的质量水平。
如何快速开始使用LongCat-Audio-Codec?
环境安装与配置
LongCat-Audio-Codec基于PyTorch构建,安装过程简单直接:
# 创建conda环境
conda create -n LongCat-Audio-Codec python=3.10
conda activate LongCat-Audio-Codec
# 安装PyTorch(请根据您的硬件配置选择合适的版本)
pip install torch==2.7.1 torchaudio==2.7.1
# 安装其他依赖
pip install -r requirements.txt
模型下载
LongCat-Audio-Codec提供了多个预训练模型,用户可以根据需求选择下载:
| 模型名称 | 描述 | 下载链接 |
|---|---|---|
| LongCatAudioCodec_encoder | 包含语义编码器和声学编码器的权重 | Hugging Face |
| LongCatAudioCodec_encoder_cmvn | 倒谱均值和方差归一化系数 | Hugging Face |
| LongCatAudioCodec_decoder16k_4codebooks | 16kHz解码器,支持最多3个声学码本 | Hugging Face |
| LongCatAudioCodec_decoder24k_2codebooks | 24kHz解码器,支持1个声学码本,已在有限说话人上微调 | Hugging Face |
| LongCatAudioCodec_decoder24k_4codebooks | 24kHz解码器,支持最多3个声学码本 | Hugging Face |
项目结构设置
下载完模型后,需要确保项目结构正确:
LongCat-Audio-Codec/
├── ckpts/
│ ├── LongCatAudioCodec_decoder_16k_4codebooks.pt
│ ├── LongCatAudioCodec_decoder_24k_2codebooks.pt
│ ├── LongCatAudioCodec_decoder_24k_4codebooks.pt
│ ├── LongCatAudioCodec_encoder.pt
│ └── LongCatAudioCodec_encoder_cmvn.npy
├── configs/
│ ├── LongCatAudioCodec_decoder_16k_4codebooks.yaml
│ ├── LongCatAudioCodec_decoder_24k_2codebooks.yaml
│ ├── LongCatAudioCodec_decoder_24k_4codebooks.yaml
│ └── LongCatAudioCodec_encoder.yaml
├── inference.py
└── run_inference.sh
运行演示
项目提供了一个简单的演示脚本,可以快速体验LongCat-Audio-Codec的功能:
bash ./run_inference.sh
这个脚本会自动处理演示音频文件,并生成重建的音频输出。用户可以在demo_audio_output/目录中找到处理结果。
自定义使用
对于有特定需求的用户,可以直接调用inference.py脚本,并自定义参数:
python inference.py \
--encoder_config "configs/LongCatAudioCodec_encoder.yaml" \
--decoder16k_config "configs/LongCatAudioCodec_decoder_16k_4codebooks.yaml" \
--decoder24k_config "configs/LongCatAudioCodec_decoder_24k_4codebooks.yaml" \
--output_dir "my_custom_output" \
--n_acoustic_codebooks 3 \
--audio_files "path/to/my.wav"
LongCat-Audio-Codec的实际应用场景
语音大语言模型的基础设施
作为专门为语音大语言模型设计的编解码器,LongCat-Audio-Codec能够将语音信号转换为离散的标记序列,这些标记可以直接作为大语言模型的输入。同时,它也能将模型生成的标记序列转换回高质量的语音信号,完成端到端的语音处理流程。
低比特率语音通信
在带宽受限的环境中,如移动网络或偏远地区网络,LongCat-Audio-Codec的极低比特率特性(最低0.43kbps)能够显著改善语音通信质量,同时减少数据使用量。
语音合成与克隆
借助多阶段训练策略,特别是第三阶段的说话人特定微调,LongCat-Audio-Codec能够生成高度自然的语音,并准确再现特定说话人的音色特征。
音频存储与归档
对于需要大量存储语音数据的应用,如语音助手对话记录、客户服务录音等,LongCat-Audio-Codec能够在保证可懂度的前提下大幅减少存储空间需求。
LongCat-Audio-Codec的局限性
尽管LongCat-Audio-Codec在多个方面表现出色,但目前的版本仍存在一些局限性:
-
主要针对语音优化:当前版本主要针对语音信号进行优化,对音乐和音效的支持有限。
-
输入长度限制:模型最多处理30秒的音频输入,更长的音频需要预先分割。
-
特定解码器的说话人依赖:
LongCatAudioCodec_decoder_24k_2codebooks.pt已在有限说话人上微调,如果输入音频来自训练集外的说话人,重建质量可能会下降。 -
仅支持单声道语音:当前版本只支持单声道语音处理,不支持立体声。
团队表示将在后续版本中针对这些局限性进行优化改进。
常见问题解答
LongCat-Audio-Codec与其他音频编解码器(如EnCodec、DAC)相比有什么优势?
LongCat-Audio-Codec专门为语音大语言模型设计,采用语义-声学分离的架构,在极低比特率下仍能保持良好的语义理解能力。相比传统编解码器,它在保持高语音可懂度的同时,显著降低了比特率,更适合作为大语言模型的前端和后端。
如何选择适合的码本数量?
码本数量的选择取决于具体应用场景:
-
对带宽极度敏感的场景:选择2码本(0.43kbps) -
平衡质量与效率的场景:选择3码本(0.65kbps) -
对音质要求较高的场景:选择4码本(0.87kbps)
用户可以通过实验确定最适合自己需求的配置。
LongCat-Audio-Codec支持实时处理吗?
是的,LongCat-Audio-Codec的解码器采用流式设计,仅需180毫秒的未来信息即可生成高质量音频,非常适合实时应用场景。
是否需要专门的硬件来运行LongCat-Audio-Codec?
不需要专门的硬件,LongCat-Audio-Codec可以在标准的CPU和GPU环境中运行。不过,使用GPU可以显著提高处理速度,特别是在处理大量音频数据时。
能否使用自己的数据对模型进行微调?
是的,团队提供了多阶段训练策略,用户可以参考第三阶段的方法,使用自己的数据对解码器进行微调,以适应特定说话人或音频特性。
结语
LongCat-Audio-Codec代表了音频编解码技术在与大语言模型结合方向上的重要进展。通过创新的语义-声学分离架构、多阶段训练策略和灵活的码本配置,它在极低比特率下实现了高质量的音频重建,为语音大语言模型的发展提供了可靠的基础设施。
随着语音技术的不断进步,我们有理由相信,像LongCat-Audio-Codec这样的技术将在未来的语音交互、语音合成、语音通信等领域发挥越来越重要的作用。无论是研究人员还是开发者,都可以利用这一开源工具,探索语音技术的更多可能性。
引用与资源
如果您在研究中使用了LongCat-Audio-Codec,请引用以下论文:
@article{longcataudiocodec,
title={LongCat-Audio-Codec: An Audio Tokenizer and Detokenizer Solution Designed for Speech Large Language Models},
author={Xiaohan Zhao, Hongyu Xiang, Shengze Ye, Song Li, Zhengkun Tian, Guanyu Chen, Ke Ding, Guanglu Wan},
journal={arXiv preprint arXiv:2510.15227},
organization={LongCat Team, Meituan},
year={2025}
}
项目资源:

