这项由字节跳动(ByteDance)与浙江大学联合开展的研究,以arXiv预印本形式发布于2026年8月3日,论文编号为arXiv:2608.02023v1,研究方向归属于音频与语音处理领域(eess.AS),有兴趣深入了解的读者可通过该编号查阅完整论文。

考虑这样一个场景:你是一名动画制作人,手里有一个刚创作出来的角色——一个傲娇的冰雪女王。这个角色从未真实存在过,没有任何录音,但你需要让她开口说话,声音要冷冽、低沉、带着一股审视感,而且背景还得有风声和水滴声,烘托出古典庭院的氛围。过去,你需要召集配音演员、音效师、混音师,分头工作,最后再费力地把所有音轨拼合在一起,还要祈祷音效的时机、响度和语气能恰好吻合。现在,字节跳动的研究团队提出了一套新方案:用一段自然语言描述把这一切都说清楚,让一个AI模型从零开始,直接输出一段完整的、带着庭院风声和水声的冰雪女王独白音频。这个模型叫做SwanTale。

SwanTale的诞生背景,正是当下AI配音技术的一道深刻缺口。现有的语音克隆系统虽然已经相当成熟——只需几秒钟的参考录音,就能让AI模仿该说话人的声线——但这套路径有一个先天限制:你得先有一段真实录音才能开始。对于动画、游戏、短剧、广告这类创作场景而言,很多时候你面对的是一个从未存在过的角色,根本没有录音可以参考。与此同时,即便是那些支持"用文字指令描述声音风格"的现有系统,它们几乎清一色只能生成纯粹的说话声,环境音效和背景音乐必须由另外的管线单独生成,最后再由人工拼接,而人工拼接带来的时机偏差、响度不协调、音场感不一致等问题,往往让最终效果大打折扣。

SwanTale要解决的,正是这道多重障碍构成的难题,而它选择的方式是把所有事情交给同一个模型统一完成——同一时刻、同一个生成过程,说话声、背景音效、环境音场,一起出来。

一、一份详细的"剧本说明书":SwanData-Caption数据工程

任何AI系统的能力边界,都由它所见过的训练数据决定。SwanTale面临的第一个挑战,就是现有的语音数据集根本没办法告诉模型"这段话应该出现在一个古典庭院里,背景有风声和水滴声,说话人是个冷漠的年轻女性,台词本身要带着审视的语气"。普通的语音数据集只有录音和文字转录,最多加个说话人标签,远远达不到这种精细程度。

研究团队因此构建了一套名为SwanData-Caption的数据处理流程,可以理解为一套把普通录音资料转化成精细"剧本说明书"的工厂。这套工厂分四道主要工序。

第一道工序叫做"覆盖设计",核心任务是保证训练素材足够多样。团队从内部的短剧、动画、广告、播客等媒体风格音频中抽取了大量真实素材,涵盖了各种说话人密度、录音环境、角色风格和声场条件。然而,单靠真实素材有一个问题:有些罕见类型的声音,现实中出现得太少,模型见得太少自然就学不好。为此,团队额外合成了三类补充数据:老年人语音(因为现有数据集里老年说话人严重不足)、超短话语(从单个词到简短句子,覆盖了大量实际应用中常见的极短语音场景)、以及发音挑战性文本(主要是中文的多音字、专有名词、品牌名、中英混用句子——这类文本对人类听众极为敏感,但现有数据的标注往往不准确)。这三类合成数据各10万条,由一个专门针对发音精度调校的语音合成教师模型生成,并通过pypinyin工具对中文注音进行专项处理,以确保合成出来的目标发音确实正确。

第二道工序叫"SwanData-Speech预处理",负责把原始媒体音频梳理成干净的、可供标注的语音片段。具体做法是,先用Ultimate Vocal Remover工具把人声和背景声分离,用分离出的干净人声做说话人区分、语音识别和时间对齐,同时保留含有完整环境声场和音效的原始音频供后续标注使用。说话人区分采用3D-Speaker工具箱,语音识别用了Seed-ASR 2.0,并用SenseVoice做二次发音核验。值得一提的是,团队在标点处理上做了一个刻意的设计选择:不信任ASR工具输出的标点,因为ASR的标点是根据语义预测的,不反映实际停顿,而他们希望最终标注里的标点既要符合语义(比如感叹号、问号),又要和实际停顿位置一致,因此把"由AI加标点"和"用时间对齐结果校正标点"这两步分开执行。

第三道工序是"标注",也是整套流程里最核心的一环。团队用Seed2.0 Lite这个大语言模型作为自动标注引擎,输入是目标音频加上去掉标点的语音识别文本,输出是一个结构化的三段式说明。第一段叫"Environment"(环境),描述场景地点、声场特征、录音空间、混响、背景音乐以及任何持续性的背景音效,比如咖啡馆里稳定的人声嘈杂和厨房声响。第二段叫"Speakers"(说话人),列出所有实际出声的角色,每个角色的描述包括感知性别、年龄范围、角色身份(如果从声音和台词能判断)、稳定音色、咬字习惯、响度倾向、语速、口音和惯常风格。第三段叫"Content"(内容),是一个按时间顺序排列的台词加音效描述字段——说话内容用speaker标签包裹,本地音效用Audio标签包裹,标签之间的文字描述则记录了这段话里的情绪变化、音量变化、停顿、强调、犹豫或打断。

为了让标注出来的说话人风格描述足够丰富、真实、有区分度,团队专门设计了一个"风格-人设库",针对动画、短剧/影视剧、广告/数字人三类媒体分别制定了不同的描述规范:动画允许使用"元气少女"、"克制的成熟男声"这类角色化的声音原型;短剧和影视剧则允许借助台词内容来判断角色身份;广告和数字人则强调主播类型、声音风格类别和稳定的产品推介式语气。这个库的作用是给标注模型一个"软先验",防止它只会输出"年轻女性,声音清亮"这类贫乏、千篇一律的描述,而是能写出"年轻女性,重生女主,沉静,音调偏低,语气冷冽"这样有区分度的人设。

第四道工序是"数据精炼",分为波形过滤、标注规范化和人工审核三个子步骤。波形过滤使用DNSMOS、SQUIM等客观指标对语音片段做质量筛选,PESQ分数低于2.0、STOI低于0.85、SI-SDR低于0、MOS低于2.5的片段直接剔除。标注规范化由一个叫SwanVerifier的轻量级模型来检查性别和年龄标签与实际波形是否吻合,并用时间对齐数据校正标点。人工审核环节,标注员会核查转录准确性、标注质量、音频质量,以及一个更主观的维度——表现力。表现力的评分方式采用"组内最佳/最差比较法":在一个受控组内抽取四段候选音频,让标注员选出最有表现力和最缺乏表现力的各一段,不要求对每段给出绝对分数。这种方法比传统的MOS评分(每段打1-5分)更省力、更可靠,因为标注员只需做相对判断,不需要在脑子里维护一个全局的分数标准。最终整套流程积累了约7000万条带标注的音频记录。

二、模型的"声音翻译机":SwanVAE音频编码器

在介绍SwanTale如何生成音频之前,有必要先解释一个背后的技术基础。AI生成音频,并不是直接在波形层面工作的——波形每秒有48000个采样点,直接处理这么细的粒度,计算量大得离谱,而且太多细节会干扰模型学习高层次的规律。研究团队设计了一个专门的中间层,叫做SwanVAE,可以理解为一台"声音翻译机":它把原始波形翻译成一种更紧凑、更容易被AI理解的"声音语言",生成过程中的AI只需要操控这种"声音语言",最后再翻译回波形。

SwanVAE把48kHz的单声道音频压缩成每秒25帧、每帧96维的连续向量序列,也就是说,每40毫秒的音频由一个96维的数字向量来表示。从原始波形到这种压缩表示,信息量压缩了约1920倍,但研究团队通过精心设计确保了关键的声音特征——音色、音调、节奏、音场感——在这个过程中得到保留。

SwanVAE的设计遵循一个"编码器保持局部性、解码器承担合成复杂性"的不对称原则。编码器端保持轻量、局部,每个压缩帧只"看"周围约0.95秒的波形,不跨越太大的时间范围,这样可以保证压缩出来的表示稳定、可预测,不会因为远处发生的事情而产生干扰。解码器端则配备了一个较重的基于Transformer的"变换重采样模块",负责从压缩表示重建出高质量波形,它可以在相邻帧之间共享上下文,处理相位连续性和高频细节。

在训练SwanVAE时,团队使用了多种监督信号。一方面是传统的重建损失(多分辨率复数STFT损失、多频段Mel损失、帧能量损失),以及对抗训练(多周期判别器、多分辨率判别器、多频段复数STFT判别器三套判别器共同监督),确保重建出来的波形听起来真实、细节丰富。另一方面,团队还引入了几个"对齐辅助目标",专门针对压缩向量的分布做整形,防止相邻帧之间出现剧烈跳变——因为压缩向量如果变化过于突兀,后续的生成模型就很难学会怎么预测它。这些辅助目标包括:在压缩向量上跑一个轻量流匹配模型(检验当前分布是否容易被流模型预测)、用因果预测器预测未来帧(鼓励压缩向量的变化规律可预期)、以及用多尺度色度分布、频带能量分布等声学特征作为读出目标(鼓励压缩向量保留音调和频谱结构信息)。所有判别器和辅助预测器在训练结束后全部丢弃,推理时只保留编码器和解码器。

在横向对比实验中,SwanVAE在语音领域的PESQ和MCD指标上优于所有基线,在歌唱声领域的PESQ、STOI、MCD上均排名第一,在通用音效和音乐领域的ViSQOL指标上也表现最好。换句话说,同一个SwanVAE模型——不做任何针对特定领域的微调——能够同时高质量地编解码人声、歌声、音效和音乐,这正是后续全模态统一生成的基础。

三、统一生成引擎:让模型同时理解"是谁说"和"在哪说"

在SwanVAE提供了高质量的压缩表示之后,SwanTale的主干生成模型负责在这个压缩空间里完成实际的生成工作。主干模型采用的是一种叫做"流匹配扩散Transformer"(Flow-matching DiT)的架构,非自回归生成,也就是说它不像写文章那样一个字一个字地往后生成,而是同时考虑整段音频,从一团随机噪声出发,逐步把噪声"雕刻"成目标音频的压缩表示。这种方式天然避免了逐帧生成中容易出现的重复或漂移问题,也更容易保持长段音频中的整体一致性。

SwanTale需要同时支持两类任务:一类是"指令生成"(instruct),只给文字描述,没有任何参考录音,模型从头创造声音;另一类是"零样本生成"(zero-shot),给一段参考录音加上台词内容,模型克隆参考录音的声线来合成新内容。这两类任务的输入方式不同,但研究团队用一套统一的架构同时处理两者:两类任务共享同一套文本编码路径,区别只在于"指令生成"时用完整的三段式标注(环境+说话人+内容)来驾驭所有声音属性,而"零样本生成"时只用内容标注,声线信息改由参考音频提供。

文字条件的注入分两条路径。第一条是"标注路径",用一个Qwen家族的8B文本编码器理解完整标注,输出的特征向量通过交叉注意力注入到所有生成Transformer层,同时附加一组标签嵌入,用来区分文字内容、本地音效描述、环境信息等不同字段,给模型提供声学先验。第二条是"台词路径",将台词文本用CosyVoice 2.0分词器转化为词片段标记,经过轻量文本编码器处理后,通过时间插值对齐到音频压缩序列的时间轴上,与带噪压缩序列拼接输入。说话人轮换标签从结构化标签(如``、``)中提取,与台词嵌入对齐后注入台词路径。

在文字条件之上,团队还引入了两个专门的增强机制。

第一个叫做"奖励条件质量控制"。数据处理阶段记录了每段语音的STOI、PESQ、SI-SDR、MOS四个质量分数,这些分数被转化成一段质量描述文字(比如"speech clarity high; noise level high; signal naturalness high; listening quality high"),附加在完整标注的最前面,同时生成一个质量标志(low/normal/high/unknown)注入模型的全局条件流。训练时这个标志有一定概率被替换成"unknown"(用于无分类器引导),推理时则永远设为"high",相当于永远告诉模型"请按最高质量生成"。这种做法的巧妙之处在于,质量偏低的训练数据不需要丢弃,它们以"低质量"条件标注的形式继续参与训练,让模型理解什么是低质量、什么是高质量,推理时只需要把条件设为高质量,就能引导模型朝好的方向生成,不需要任何强化学习或奖励模型。

第二个叫做"Engram记忆条件",来自一篇研究LLM稀疏记忆的工作。在实际标注里,很多短语是高频固定搭配,比如"充满活力的女孩"或者"火车汽笛声",这些短语的含义是稳定的、模式化的,纯靠注意力机制去每次重新理解它们既低效又占用了模型处理长程规划的带宽。Engram层的原理类似于一个"短语词典":它把标注文字的2-gram和3-gram(相邻2个或3个词的窗口)哈希到多组查找表里,把查出来的记忆向量通过一个内容自适应的门控残差更新注入到标注嵌入中。门控的初始偏置设为负值,意味着训练开始时记忆路径几乎关闭,随着训练推进,模型逐渐学会对结构化短语更多依赖记忆、对自由表述的文字更多依赖注意力,实现了两种理解机制的自然分工。

四、专家分工合作:Unified MoE模块

一个生成模型要同时处理男声、女声、老人、孩子、背景自然音、短促音效、歌声和音乐,这些内容的声学结构差异极大——人声需要精确的词汇对齐和稳定的身份感,环境音需要平稳持续,本地音效需要尖锐短促,歌声需要准确的音高轮廓,音乐需要和声结构。如果用完全相同的一套网络权重同等处理所有这些内容,不同类型的声学模式就会"抢占"同一批参数,互相干扰。

研究团队的解决方案是在生成Transformer的每隔一层替换成一个"统一专家混合层"(Unified MoE),让模型能够根据当前处理的是哪种音频内容,动态调用不同的"专科处理器"。

Unified MoE内部有三类专家:任务共享专家(Task-shared experts)在整个音频样本范围内激活,用来编码任务级别的稳定先验——比如指令生成任务和零样本任务在如何响应标注描述上有根本性的不同;路由音频专家(Routed audio experts)在每一帧独立路由,专门处理说话人切换、重叠语音、表现力变化、本地音效、复杂背景纹理等需要精细处理的帧;空专家(Null experts)不做任何变换,相当于"跳过"键,让稳定背景段或近静音段不浪费额外计算。

路由机制采用了动态Top-P策略,而非固定每帧激活K个专家的Top-K策略:不同帧所需的专家数量是可变的,系统根据累积概率阈值动态决定激活多少专家。这个阈值本身会随扩散过程的时间步变化:早期时间步(噪声较多,需要建立全局结构)激活更多专家,后期时间步(细节打磨阶段)激活较少专家,计算量随之自适应调整。训练初期使用Gumbel-Softmax加噪的方式鼓励路由多样性,温度逐步退火后路由变得确定性更强,不同专家各自形成功能分工。辅助损失包括路由logit的z-loss(防止logit爆炸,稳定路由)和空专家概率惩罚(防止路由始终走空专家,导致音频路由分支完全不激活)。

SwanBench-Caption的消融实验印证了Unified MoE的价值:去掉Unified MoE之后,指令准确度从3.39跌到3.02,声学质量从4.31跌到4.09,整体表现力从3.82跌到3.56,三项指标全面下滑。把标注编码器从8B扩展到32B后,指令准确度进一步提升到3.70,说明标注理解能力的天花板仍有提升空间。

五、循序渐进的训练:课程学习

即便有了精良的数据和架构,训练一个要同时处理这么多任务的模型依然充满风险——一旦在早期阶段把所有任务同时推进,模型很可能什么都学不好。研究团队采用了"课程学习"的策略,把训练分成四个由简到繁的阶段,每个阶段有明确的学习目标。

第一阶段是零样本基础模型训练。在SwanVAE的压缩空间里,先用单说话人数据和多说话人对话数据(两说话人拼接)训练一个纯粹的语音克隆模型,参考录音以50%的概率随机丢弃,让模型同时学会"有参考时克隆声线"和"无参考时自由生成"两种模式。这一步的目标是让模型先建立起稳定的语音生成先验,再去接受更复杂的控制信号。

第二阶段是在干净语音数据上做密集标注适配,此时Unified MoE层还没有启用,模型以密集(全参数激活)的形式学习从标注到语音的映射,先把基础的性别、年龄、情绪等属性控制学稳,同时把合成的老年语音、超短语音、发音挑战数据掺入训练,补齐覆盖缺口。

第三阶段引入完整的SwanData-Caption语料,同时激活Unified MoE层,让模型接触到语音之外的环境音效、本地音效和更广泛的说话人风格。密集阶段学到的参数初始化了专家共享路径,路由专家则从头开始学习各自的特化功能。

第四阶段用前面数据精炼步骤筛选出的高表现力、高质量子集做监督微调,把模型的输出品质拉到更高水准,为后续的奖励引导强化训练做铺垫。

六、奖励引导的"矫正训练":GRPO后训练

监督训练的四个阶段结束后,模型已经具备了相当宽泛的能力,但在一些高频出错点上仍然不够稳定,主要包括三类问题:发音错误(尤其是中文多音字和品牌名)、生成不稳定(边界能量过大、波形异常)、以及指令中描述的说话人属性与实际生成不一致。

研究团队选择用Flow-GRPO(基于流匹配的组相对策略优化)来针对性地矫正这三类问题。这里的核心思路是:对同一个条件输入,一次性采样8条候选音频,用多个客观评分函数打分,取相对排名(而非绝对分数)作为优化信号。用相对排名而非绝对分数的好处在于,不同提示词的难度差异极大,绝对分数放在一起没有可比性,但同一条提示词下的8个候选之间的相对优劣是稳定可信的。

奖励函数覆盖了五类信号:音素准确率奖励(检验音素序列中的替换、删除、插入错误)、音素长度一致性奖励(专门针对删除和插入错误)、标点感知停顿奖励(检查停顿是否出现在标点位置且时长合理)、音频边界能量奖励(惩罚开头和结尾能量过大)、波形质量奖励(惩罚削波、异常峰值、高频伪影)。第六个奖励根据任务类型切换:指令生成任务用SwanVerifier预测性别和年龄,检查是否与标注一致;零样本生成任务改用ECAPA-TDNN说话人编码器计算生成音频与参考录音的说话人相似度。此外,还有一个"乘法发音门控":如果某候选的发音错误过于严重,整体奖励会被一个小于1的系数整体打折,确保发音准确性不被其他维度的得分稀释。

为了防止针对单说话人语音的后训练把模型之前学会的多说话人和音效能力"遗忘"掉,团队采用了两道保护机制。一是冻结一份监督微调阶段结束时的参考策略,每次策略更新都通过KL散度惩罚项约束与参考策略的偏离程度。二是在每个GRPO更新块之后,额外插入一批来自原始多说话人和含音效数据的监督重放批次,用标准流匹配损失做一遍前向更新,让模型在接受针对性矫正的同时,不断被提醒"多说话人和音效任务依然重要"。

七、实验验证:各评测任务的成绩

研究团队在三类任务上进行了系统评估。

零样本语音生成任务使用SwanBench-Speech评测集,包含单人独白和双人对话两个场景,考察音色一致性、混响一致性、音质保真度、内容准确率、韵律连贯性以及表现力两个维度。SwanTale在两个场景下的音色一致性均排名第一(独白0.95,对话0.94),在表现力的两个子维度(表现丰富度和表现层次感)上也均排名第一,对话场景的韵律连贯性同样第一。对比之前的SwanVoice基础模型,SwanTale在独白场景下把内容错误率从0.172降到0.086,表现丰富度从3.81提升到3.90,表现层次感从3.62提升到3.70,改进幅度明显。值得注意的是,音质保真度和内容准确率方面,FishSpeech(独白场景)和SoulX-Podcast(对话场景)仍优于SwanTale,说明在这两项指标上仍有改进空间。

指令生成任务使用InstructTTSEval评测集,包含12项明确声学属性控制(APS)、自由风格描述(DSD)、角色扮演(RP)三个子任务,分中英文报告。SwanTale在中文APS(86.1)上排名第一,在英文APS上与最强基线并列第一(84.2),在中文DSD上排名第二(80.1)。英文DSD和两个语言的RP任务是相对薄弱环节,研究团队分析认为RP任务需要把职业、角色原型或场景映射到可识别的发声风格,现有标注数据中覆盖的长尾角色类型还不够丰富,是未来需要重点改进的方向。

声学质量和表现力的综合评估在SwanBench-Scene评测集上进行,180条指令涵盖广告、短剧、通用场景三类,由五名专业标注员从整体表现力、韵律自然度、音频饱满度、场景契合度四个维度打分。SwanTale在三个场景下的总体MOS均排名第一(广告3.88、短剧4.45、通用场景4.34,综合4.22),四个子维度也全面领先。

在音频编解码层面,SwanVAE在语音PESQ(4.1683)和MCD(0.9638)上优于所有基线,在歌唱声PESQ、STOI、MCD上均排名第一,在通用音效ViSQOL(4.1269)上也是最优,在音乐ViSQOL(4.2623)上仅次于EnCodec。用同一个未做领域微调的检查点覆盖这四类音频,并在其中多类上排名第一或第二,印证了SwanVAE设计上的跨模态通用性。

说到底,SwanTale这套系统做到的事情,从整体上看有点像一个"全能录音棚总监"——它不仅能克隆任何你提供的声音,还能凭空创造一个从未存在过的声音,同时把说话声、背景音效、环境音场打包在一起,用同一个生成过程输出。背后的支撑,是一套从数据工程到模型架构到训练策略都经过系统设计的技术栈:SwanData-Caption提供了精细的多层次标注数据,SwanVAE打造了跨模态通用的声音压缩表示,Engram记忆和奖励条件质量控制增强了标注理解和质量引导,Unified MoE让模型为不同声学内容动态分配计算资源,课程学习保证了从简到繁的稳健习得,GRPO后训练针对性地修复了高频错误。

当然,研究团队在结论部分也坦诚地列出了目前仍未解决的难题:复杂背景音乐的生成(尤其是需要随情绪变化在音乐类型之间切换的情景)依然困难;超过两分钟的含音效长形式指令生成仍然有挑战;精准的本地风格控制——包括指定说话人的连续情绪变化、强调节奏的精确控制、停顿和音效的时机——在数据标注和模型设计两端都有待突破。此外,团队也提到,把音频生成与音频编辑(修改已有音频里的内容、声线或情绪)统一在一个框架内,是一个值得期待的未来方向。

对于关心AI语音技术的普通人来说,这意味着在不远的将来,游戏里的每一个NPC、短剧里的每一个配角、广告里的每一种声调风格,或许都可以从一句话描述直接生成,不再需要漫长的配音流程。而对于对技术细节感兴趣的读者,完整的技术细节、消融实验数据和更多讨论,都可以通过论文编号arXiv:2608.02023v1查阅。

Q&A

Q1:SwanTale和普通语音克隆技术有什么区别?

A:普通语音克隆必须有参考录音才能工作,只能复制已有声音,且通常只输出纯人声,不含背景音效。SwanTale既能在没有任何参考录音的情况下凭文字描述创造全新声音,也能进行传统的声音克隆,同时能把语音、背景环境音和本地音效统一生成在一段音频里,不需要后期拼接。

Q2:SwanTale在哪些场景下效果最好、哪些还有明显不足?

A:SwanTale在指令控制的声音属性(性别、年龄、音色等)和表现力方面表现最突出,在广告、短剧、通用场景下的综合声学质量评测里排名第一。相对薄弱的方向是:根据职业或角色原型推断声音风格(即角色扮演类指令),以及内容准确率和音质保真度——在这两项上,FishSpeech等专门优化的系统仍优于SwanTale。

Q3:SwanData-Caption里的"表现力"是怎么衡量的?

A:SwanData-Caption采用"组内最佳/最差比较法"评估表现力,在一个受控组内抽取四段候选音频,让标注员选出最有表现力和最缺乏表现力的各一段,不要求打绝对分数。这比传统的MOS打分(每段1-5分)更可靠,因为标注员只需在同组内做相对比较,不需要维护一个全局一致的绝对评分标准,减少了个人标准差异导致的评分偏差。