
这篇来自Stability AI研究团队的技术报告,于2026年5月18日发布在预印本平台arXiv,编号是arXiv:2605.17991v1,归类于计算机科学·声音(cs.SD)。想深入研究的读者,直接拿这个编号去arXiv平台搜索即可获取完整内容。
**一个困扰创作者的长期痛点**
想象这样一个场景:你是一位独立游戏开发者,正在为战斗场面配乐。脑海里旋律的感觉已经清晰——"快节奏、带电子元素、还得有点史诗感"。但你既不是作曲家,也请不起配乐师。于是你打开某个AI音乐生成工具,输入描述,点击生成按钮,然后……等待了近一分钟,电脑风扇狂转,内存告急。最后得到一段时长固定的音乐,却完全塞不进你那20秒的场景里。
这个场景,正是AI音乐生成领域长期困住创作者的三大核心痛点的缩影:速度太慢、资源消耗过高、缺乏灵活性。Stability AI此次推出的Stable Audio 3,明确瞄准这三个问题,并交出了分量十足的答卷——在普通笔记本电脑的处理器上即可运行,在顶级服务器显卡上生成一首长达6分20秒的高质量音乐仅需两秒以内,还能对现有音频进行精确的局部修改。
**一、Stable Audio 3究竟是什么,为什么值得关注**
Stable Audio 3本质上是一个"声音工厂"。你输入一段文字描述,它就能生成对应的音乐或音效。这个工厂由三个不同规模的模型组成,团队分别称它们为small、medium、large——就像洗衣机有迷你款、家用款、商用款,适配不同的场景和设备。
small模型约4.59亿个参数(你可以把参数理解为机器内部的调节旋钮,旋钮越多,能调出的细节就越精细),最长可生成2分钟的音频。medium约14亿个参数,最长支持6分20秒。large约27亿个参数,同样支持6分20秒。在顶级的H200服务器显卡上,small仅需0.44秒,medium需1.31秒,large需1.80秒即可完成一次生成。更令人兴奋的是,small和medium的模型权重完全开源,任何人都能下载。代码托管在GitHub的Stability-AI/stable-audio-3仓库中。
这三个模型内部还细分了专业分支:small-music专门生成器乐音乐,small-sfx专门生成音效。medium和large则是同时支持音乐和音效的全能选手。为什么small要分开训练?因为研究团队发现,参数有限的小模型中,音乐数据和音效数据会相互"干扰",就像让同一位厨师同时做川菜和粤菜,味道难免混杂,分开训练反而各自表现更佳。
所有模型均在经过授权的商业音频和遵循知识共享协议的免费音频上训练,这意味着没有版权风险。对于希望将AI音乐用于商业项目的创作者来说,这无疑是一颗定心丸。
**二、解决"生成短音频还要等半天"的难题:可变长度生成**
在Stable Audio 3之前,绝大多数扩散模型式的音频生成器都有一个隐藏的浪费:无论你需要的音频有多短,它都得按最大长度来生成。以Stable Audio 3的前代产品Stable Audio 2.5为例,其最大长度是190秒。假如你只需要20秒的音乐,它仍会在内部生成完整的190秒内容,然后默默丢弃多余的170秒——就像你去便利店只买一瓶水,收银员却非给你一个能装一冰箱东西的大袋子,既浪费资源又浪费时间。
研究团队将这种现象称为"固定长度生成",而他们为Stable Audio 3开发的新方法叫"可变长度生成"。核心思路很简单:需要多少就生成多少,计算量与实际长度成正比。为了在训练阶段也能稳定实现这一方法,他们设计了三个相互配合的技巧。
第一个技巧叫"可变长度注意力与掩码损失"。训练模型时,一批数据往往有长有短,需要补零将它们凑成相同长度才能一起处理。但补上的零不包含信息,让模型学习处理这些零是白费力气,甚至可能造成混淆。团队的解决方案是给这些补位内容打上"标记",让模型在计算时直接跳过,损失函数也只对真实音频部分进行评分。
第二个技巧叫"按元素调整时间步偏移"。这里需要简单说明扩散模型的基本思路:这类模型的工作方式类似于从一团噪声中逐步去除噪声,最终还原出有意义的内容。每一步称为一个"时间步",时间步越大,噪声越多。问题在于,长序列的音频片段由于内部元素之间存在关联,在相同的噪声水平下,它能保留的可恢复信息比短序列更多。如果使用相同的噪声进度表训练长短不同的音频,长音频相对就会"欠噪化",模型无法充分学习处理高噪声情况下的长音频。团队的解决方案是:根据每段音频的实际长度,动态地将时间步向更高噪声的方向推进——越长的音频,训练时就越向嘈杂方向推,从而保持学习难度的平衡。具体的数学公式采用"逻辑斯谛形式"的映射,使这个偏移量在最短序列与最长序列之间平滑过渡。
第三个技巧叫"静音增强"。团队在训练时会随机在真实音频后面接一段静音,静音长度从指数分布中随机抽取,平均约4秒。这样做有两个目的:第一,防止模型将"我要生成的时长"与"实际音频信号就该这么长"死死绑定;第二,训练模型学会自然结束,而不是在序列末尾突然中断,造成生硬的截断感。
为验证可变长度生成的实际效果,团队还专门做了对照实验:故意将Stable Audio 2.5"用错"——明明是在190秒条件下训练的,却强行让它生成20秒的短序列。结果两项关键指标均出现明显下降,证明固定长度的模型无法高效处理可变长度。而Stable Audio 3的原生可变长度设计,在各个长度上表现稳定可靠。
**三、Stable Audio 3的"声音压缩器":语义声学自编码器**
扩散模型要生成音频,有一个基本前提:不能在原始音频波形上直接"去噪",因为原始波形数据量太大。一秒钟44100个采样点,一分钟就是两百多万个数据点,计算量巨大。标准做法是先用一个"压缩器"将原始音频压缩成紧凑的"代号序列",扩散模型在这些代号上工作,生成完成后再用一个"解压器"将代号还原成真实的音频。
Stable Audio 3使用的这个压缩器叫SAME,这是团队另一项相关研究的成果,本文将其作为基础组件。SAME的压缩比达到4096倍——也就是说,原本长度4096个采样点的音频,压缩后只变成1个"代号"。相比之下,同类工作通常只压缩1024到2048倍,SAME的压缩明显更为激进。正是这种激进压缩,使中小型模型能在消费级GPU甚至MacBook的CPU上生成几分钟的长音频。
SAME是如何实现如此高压缩比的呢?工作流程分为两步。第一步是"打补丁":将立体声44.1kHz的音频波形切分成256个采样点一组的小块,每块作为一个基本单元,这一步实现了256倍压缩。第二步是一种称为"Transformer重采样块"的独特结构,再进行16倍压缩,两步加起来共4096倍。
这个Transformer重采样块的工作方式非常巧妙:将输入序列每两个元素编成一组,在每组中插入一个可学习的"占位符",然后让整个序列通过多层Transformer处理。处理完后,只保留这些占位符位置的输出,将原始元素的输出全部丢弃。这相当于让这些占位符在学习过程中"吸收"了附近原始元素的关键信息,然后作为压缩后的代表输出。解压时,这个过程反过来:每个压缩代号搭配一批新的占位符,处理后保留占位符输出,实现扩张。
压缩器输出的代号序列,对后续扩散模型的训练质量有直接影响。SAME的核心设计目标之一,就是让这些代号不仅包含"声音是什么"(声学信息),还要包含"声音在说什么"(语义信息)。为实现这一目标,SAME在训练时同时接受了五种不同性质的损失函数的约束。
第一种是多分辨率频谱重建损失,在七种不同的FFT分辨率下分别计算频谱对比度、对数幅度L1距离和瞬时频率相位误差,确保还原出的声音在各个细节尺度上都足够精确。为了处理立体声,这种损失分别在"和声"和"差音"两种表示形式上独立计算。第二种是对抗损失,通过一个判别器来逼迫生成质量更接近真实。第三种是扩散对齐损失,直接用一个小型扩散Transformer在SAME的潜空间上训练,梯度反流回编码器,推动编码器学习出"对扩散模型友好"的潜空间几何结构。第四种是语义回归损失,用两个轻量线性回归器分别预测音调结构和立体声宽度,强迫潜代号保留这些高层语义特征。第五种是对比潜空间对齐损失,用一个判别器判断"潜代号序列、小波音频特征、文字描述"三者是否来自同一段音频,从而推动潜代号同时与音频内容和文字描述对齐。
实际部署时,small模型使用参数较少的SAME-S版本,该版本专门针对CPU推理做了轻量化优化;medium和large则使用参数更多的SAME-L版本,保留了完整的表达能力。两个版本的压缩比和代号维度完全相同,保持了架构的统一性。SAME的编码器和解码器在扩散模型训练期间保持冻结,不再更新参数。
**四、"声音工厂"的核心引擎:扩散Transformer**
有了SAME提供的紧凑代号序列,接下来扩散Transformer就在这些代号上进行生成。这个Transformer是整个系统的大脑,三种规模模型的区别主要也体现在这个大脑的大小上:small的Transformer有20层,每层1024维,16个注意力头;medium有24层,1536维,24头;large有26层,2048维,32头。
将这个Transformer拆开来看,它接收信息的方式有三个通道,就像一个调音台上的三个推子。
第一个推子是"文字理解通道"。用户输入的文字描述先由一个文字编码器处理,将文字转化为256个768维的向量序列。短于256个词的提示会用专用的填充向量补全,长于256个词的则会被截断。文字向量和时长向量拼接在一起,通过"交叉注意力"机制注入每个Transformer层,让模型随时记住"我要生成什么"。
第二个推子是"全局时间步通道"。扩散模型工作时,需要知道"当前处于去噪的哪个阶段",这个信息称为时间步。时间步和时长信息都被编码成傅里叶特征,再各自经过一个MLP映射,然后相加,通过"自适应层归一化"机制调节每个Transformer层内部的计算行为。这里使用的是一种变体:条件向量在所有层之间共享,每层只独立学习几个偏置项,大幅减少了条件化所需的参数量。
第三个推子是"局部编辑通道",专门用于实现后面要讲的"音频修复"功能。它将参考音频和一个二值掩码拼接起来,通过一个两层MLP投影,逐帧加到每个Transformer层的中间状态。MLP的最后一层权重初始化为零,这样在训练开始时这个通道对模型没有影响,可以平滑地从没有编辑功能的基础模型微调过来。
除了这三个条件化通道,Transformer还有两个值得特别说明的设计细节。一个是"记忆嵌入":在序列输入之前,会在前面拼上64个可学习的"记忆向量",使序列中的每个位置都能通过注意力机制访问这64个全局上下文槽位,相当于给所有声音帧共享了一块黑板。处理完后,这64个记忆向量被丢弃,不参与最终输出。另一个是"差分注意力":medium和large使用了一种改进的注意力机制,用两组独立的Q、K矩阵分别计算两个注意力权重图,然后将二者相减,从而消除两个图共有的"噪声"模式,让注意力更专注于真正重要的关联。small由于参数预算有限,使用的是普通的的多头注意力。
在位置编码方面,Transformer对每个注意力头只旋转前32个维度(部分RoPE),其余维度不携带位置信息,这是为了让模型在处理不同长度序列时保持灵活性。此外,Q和K在进入注意力计算前都会经过RMSNorm归一化,防止注意力分数变得过大。
**五、三阶段训练:从"打草稿"到"专业润色"**
Stable Audio 3的训练分为三个相互衔接的阶段。以"写文章"打比方:第一阶段如同打草稿,把主要内容和框架搭建起来;第二阶段如同将草稿精炼,用更少的语言表达同样的意思;第三阶段如同找专业编辑润色,让文章既精炼又生动。
**流匹配预训练**
第一阶段使用的技术叫"流匹配"。直观来说,扩散模型的工作就是在"纯噪声"和"干净音频代号"之间画一条路径,每次去噪走一小步。流匹配给出了这条路径的一个非常简洁的定义:从噪声和干净数据之间做线性插值,路径上的"速度方向"始终是常数。模型需要学习的,就是给定任意时刻的状态,预测出这个速度方向。
为了让这条路径尽可能短而直,团队引入了"最小批量最优传输配对"技术:在每个训练批次中,用Sinkhorn算法快速求解一个近似最优分配问题,将数据样本和噪声样本重新配对,使每对之间的距离之和最小。这样配出来的路径更短、交叉更少,模型学习更容易,推理时也走得更准。
每个训练步中,还会随机给数据生成一个二值掩码,按照"全掩码、随机段掩码、因果掩码"三种类型混合。掩码信息和被掩码后的潜代号通过"局部加法条件化"通道注入模型,损失函数则分别对"待生成区域"和"保留区域"的预测误差独立平均,再相加。
为了支持无条件生成,训练时以10%的概率随机将文字和时长的条件向量替换为零向量,模拟"没有条件输入"的场景。
**蒸馏预热**
完成第一阶段后,模型生成质量不错,但推理时需要50到100步,每步都要完整经过Transformer,速度很慢。第二阶段"蒸馏预热"的目标,就是将模型改造成"一步就能给出答案"的模式。
具体做法是:冻结原来的预训练模型作为"教师",用一份同样架构的模型初始化"学生"。教师用15步DPM++采样器从随机噪声生成一条完整轨迹,缓存中间状态和最终去噪结果。每4个训练迭代刷新一次缓存,平衡计算开销和数据多样性。学生的任务是:给定轨迹上的任意一个中间状态,直接预测终点。损失函数是学生预测与教师之间的均方误差。学生输出的是速度,通过一步欧拉公式转换为对终点的估计。
这个阶段大约进行10000步训练,将多步的ODE求解压缩成一步映射。但均方误差损失有一个众所周知的问题:它会让模型倾向于预测条件期望,即给出所有可能答案的"平均版本",导致生成结果模糊、缺乏细节,就像多次曝光叠加的照片。这就需要第三阶段来解决。
**对抗后训练**
第三阶段引入了一个判别器,将整个训练变成"生成器对抗判别器"的博弈,从而逼迫模型从"预测平均答案"转向"从真实数据分布中采样"。这个阶段完全抛弃了教师模型,直接用真实数据作为标杆,使模型有机会超越教师的质量上限。
判别器的设计很有特色:它复用了与生成器相同的Transformer架构,从流匹配预训练的检查点初始化,因此一开始就具备丰富的语义表示能力。真实音频和生成器输出都会被重新加噪到一个独立的随机噪声水平。两者共享相同的新噪声向量,这样在相对论比较时,加入的噪声分量相互抵消,判别器判断的是两者本身的质量差异,而非噪声差异。判别器从Transformer第14层提取特征,经过一个由输入卷积、残差块和最终评分卷积组成的头部结构,输出每帧的"真实度分数"。
训练使用了三种损失。"相对论对抗损失"让生成器努力使"生成样本的真实度分数"超过"配对真实样本的真实度分数",判别器则反过来努力让真实样本分数更高。这种配对之所以有效,是因为配对的真实样本和生成样本使用的是同一个文字提示,相关性极强,提供了比随机配对更强的训练信号。"对比损失"专门用于训练判别器:将批次内的提示循环错位,让判别器同时区分"正确配对的音频-文字"和"错位配对的音频-文字",防止判别器只关注音频本身的质量而忽略文字对齐。"CLAP损失"是专门为生成器设计的文字对齐损失:使用一个冻结的CLAP模型计算生成结果和文字提示之间的嵌入距离,采用单位超球面上的平方测地距离。这个损失作为语义锚点,防止对抗训练中的模式崩溃,确保生成器始终对提示保持响应。
对抗后训练还有一个重要的架构选择:保留了流匹配的速度参数化形式,通过一步欧拉公式恢复最终结果,而不是让网络直接输出。这样做的好处是:在零噪声时,模型被迫输出原始数据,提供了一个自然的边界约束;随着噪声水平增大,网络影响力线性增大,避免在低噪声区域做出过大修正;同时保持了与流匹配预训练权重的连续性,使训练从一个良好的初始状态出发。
**六、推理时的节拍:Ping-Pong采样**
经过对抗后训练,模型具备了"从任意噪声水平一步直接给出结果"的能力。但实验表明,从纯噪声直接一步生成干净音频的效果并不理想,因为这一步跨度太大、误差积累过多。团队的解决方案是"Ping-Pong采样"——字面意思就像乒乓球一样来回弹跳。
具体流程是:从纯噪声出发,先"去噪"得到一个估计结果;然后不直接使用这个估计,而是将其与一个全新的随机噪声按一个较低的噪声水平重新混合,得到一个新的状态;再从这个新状态"去噪"得到新的估计;反复进行,每次重新混合的噪声水平都比上一次低,直到最终结果。
这个过程有一个标准ODE求解器不具备的优势:自我纠错能力。如果前几步估计不准,重新混合噪声后产生的新状态已经融入了这个不完美估计,下一步去噪就会自然地修正这个偏差。相比之下,标准ODE求解器一旦走错,后续所有步骤都从错误位置出发,误差只会越滚越大。
时间步的安排不是线性均匀分布的,而是在对数信噪比空间内均匀分布。因为人耳对声音质量的感知大致与这个比例变化相关,这样安排能使每一步处理的感知难度大致相同。具体地,选取9个节点,实验发现8步Ping-Pong采样是效率和质量的最佳平衡点。
推理时不需要"分类器自由引导"——这个技巧通常用来提升文字对齐,但需要双倍的计算量。因为蒸馏预热阶段的教师使用了它来生成轨迹,学生已经把带它的质量提升内化了;对抗后训练的CLAP损失又进一步强化了文字对齐。省掉了它,每步只需要一次前向传播,在边缘设备上尤其节省资源。
推理时的序列长度也有专门的设计:对于用户请求的d秒音频,实际分配的序列长度多算了6秒的静音缓冲区。这6秒静音有两个作用:防止音频在序列末端产生突然截断的边界伪影,并为解码器提供淡出缓冲。生成完成后,截取前d秒输出,丢弃缓冲区。
**七、实验结果:数字背后的故事**
团队使用了两个评估数据集来测试所有模型。一个是"歌曲描述数据集",包含424对120秒器乐音乐和人工描述标注,专门测试器乐音乐;另一个是BBC音效数据集,包含多个时长子集,专门测试音效。评估指标主要有两个:FAD,越低越好,衡量生成音频和真实音频的分布相似度;CLAP分数,越高越好,衡量生成内容与文字描述的语义匹配。此外还进行了有14人参与的主观聆听测试,从总体质量、文字相关性和音乐性三个维度打分。
在器乐音乐生成方面,以120秒为基准,medium的FAD为0.107,large为0.101,与内部基准持平或略好,且主观音乐性评分明显高于Stable Audio 2.5。对比开源竞品,差距更为显著。在推理速度上,Stable Audio 3生成120秒音乐不到1秒,而竞品需要好几秒。
在音效生成方面,以5秒为基准,large的FAD为0.358,medium为0.369,均优于所有开源竞品。主观质量评分方面,large和medium也排在前列。有一个竞品虽然主观质量还行,但FAD偏高,团队分析原因是该竞品生成的音频带宽有限。
在可变长度生成的稳定性方面,Stable Audio 3各模型在从20秒到380秒的不同长度上都保持了比较一致的表现,而Stable Audio 2.5一旦偏离训练长度就明显退化,验证了原生可变长度设计的优越性。在极短时长表现略差,团队分析是因为训练集里的短音频大多是循环片段,与评估数据集中的完整曲子存在分布差异;在极长时长CLAP分数下降,是因为训练集里的超长音频大多是氛围音乐或古典音乐,导致模型在生成很长时间时倾向于漂移到这些风格上。
关于对抗后训练的效果,将后训练模型与基础模型对比:器乐音乐方面,medium后训练的FAD和CLAP都有提升,推理时间也从3.87秒降到0.78秒,实现了质量和速度的双重提升。单步生成虽然极快,但质量明显下滑,说明8步是一个必要的折中。
**八、编辑功能:给声音动手术**
Stable Audio 3的音频编辑能力通过"内绘"机制实现,这个名称借自图像编辑领域,意思是"在指定区域内重新绘制"。对于音频来说,就是指定一段或多段需要修改的区域,让模型在保留其余部分不变的同时,重新生成这些区域的内容。
用法是:提供原始音频和一个二值掩码(1表示保留,0表示重新生成),再加上文字提示描述目标效果。掩码和被遮蔽的潜代号序列一起通过局部加法条件化通道注入Transformer,模型在扩散过程中自然地生成与上下文衔接的新内容。训练时三种掩码类型的混合,确保了模型对三种编辑场景都有充分的学习。
团队在器乐音乐和音效两类数据上分别评估了三种编辑场景:单段内绘、双段内绘和延续。在器乐音乐的单段内绘中,large的全音频FAD只比原始音频略高一点,说明修复后的音频与原始参考音频高度相近。双段内绘的数据与单段接近,说明模型处理两个独立掩码区域与处理一个区域一样得心应手。延续场景的FAD相对较高,这是因为延续的生成区域缺少后端上下文约束,生成内容与原始录音的分布偏差更大,是客观存在的技术局限。
**九、在你的设备上运行:内存与速度数据**
对于关心"这个能不能在我的电脑上跑"的读者,团队详细测试了不同设备和不同加速方式下的实际表现。
在H200服务器显卡上,small生成120秒音频的峰值显存用量为2.40GB,medium为6.49GB,large为9.01GB。生成时间方面,small仅需0.45秒,medium需0.78秒,large需0.81秒。使用TensorRT加速,速度还能再上一个台阶:medium仅需0.13秒,large仅需0.19秒。
在MacBook Pro M4上,CPU专属运行模式下,small生成120秒需要5.92秒;切换到CoreML加速模式(同时利用CPU、GPU和神经引擎),仅需3.09秒。虽然比H200慢很多,但能在本地完全离线地生成高质量音乐,对于隐私敏感或网络不稳定的用户来说,意义非常重大。
**说到底,这意味着什么**
Stable Audio 3将高质量AI音乐生成真正带到了普通创作者触手可及的地方。对于独立游戏开发者、播客制作人、短视频创作者,乃至中学生做课堂展示的配乐,一台普通笔记本就足够了;不满意某段效果,直接用内绘功能替换那几秒,无需重新生成整首曲子;生成短音效也不会因为要跑满最长序列而浪费时间和电量。
当然,这项研究也有清晰的局限:超长音频在文字提示遵从度上仍有下降;训练数据中某些时长段的音频偏向特定风格,使模型在对应时长上产生了偏好;延续性编辑在没有后端上下文约束时仍然存在漂移风险。这些都是后续研究可以继续深挖的方向。
有兴趣进一步探索的读者,可以直接通过arXiv编号2605.17991查阅完整技术报告,也可以直接访问GitHub上的两个仓库,下载模型权重和推理代码亲自体验。
**Q&A**
Q1:Stable Audio 3的small、medium、large三个模型有什么区别,普通用户该选哪个?
A:三个模型的主要区别在于参数规模和最大生成时长。small约4.59亿参数,最长2分钟,峰值显存2.4GB,MacBook也能跑;medium约14亿参数,最长6分20秒,峰值显存6.5GB,需要8GB以上显存的消费级显卡;large约27亿参数,最长同样6分20秒,需要约9GB显存。普通创作者用medium基本足够,配置有限就选small,large主要用于研究用途和追求最高质量的场景。目前small和medium的权重已开源,large暂时未开放下载。
Q2:Ping-Pong采样与普通扩散模型的去噪步骤有什么本质区别?
A:普通扩散模型的ODE求解器是"单向推进"——每一步从当前状态往前走一小步,一旦走偏就会持续偏下去,误差无法纠正。Ping-Pong采样则是"去噪后重新加噪"的交替模式:每一步先估计干净结果,再将这个估计与全新的随机噪声按较低噪声水平混合,下一步从这个新状态出发。这意味着前几步的估计偏差会在重新加噪时被稀释,后续步骤有机会纠正,整体对早期误差更有容忍度。Stable Audio 3用8步Ping-Pong代替了基础模型的50步ODE,速度提升约6倍,质量反而更好。
Q3:Stable Audio 3的音频内绘功能可以用于哪些实际的创作任务?
A:音频内绘支持三类操作。单段内绘可以替换一首曲子里某个不满意的片段,比如将中间一段吉他solo换成钢琴版本,同时保持前后上下文的连贯。双段内绘同时替换两个独立区域,比如修改开头和结尾的过渡片段。延续则是给定一段现有录音的开头,让模型按照提示自然延伸后续内容,适合给未完成的小样续写,或者将短音效扩展成长版本。这三种能力在训练时通过不同比例的掩码类型同时学习,无需单独微调模型。
```