Higgs Audio V2-语音大模型

Higgs Audio V2模型,不仅能处理文本,还能同时理解并生成语音。除了一些常规语音任务外,这个模型还具备一些较为罕见的能力,比如生成多种语言的自然多说话人对话、旁白过程中的自动韵律调整、使用克隆声音进行旋律哼唱以及同时生成语音和背景音乐。

整个过程堪称“大力出奇迹”,直接将1000万小时的语音数据整合到LLM的文本训练,

Higgs Audio v2 采用上图架构图中所示的“generation variant”。其强劲的性能源于三项关键技术创新:

  • 开发了一套自动化注释流程,该流程充分利用了多个 ASR 模型、声音事件分类模型以及我们内部的音频理解模型借助该流程,我们清理并注释了 1000 万小时的音频数据,并将其命名为 AudioVerse 。该内部理解模型在 Higgs Audio v1 Understanding 的基础上进行了微调,并采用了架构图中所示的“理解变体”。
  • 从零开始训练了一个统一的音频分词器,它可以同时捕捉语义和声学特征。
  • 提出了 DualFFN 架构,它增强了 LLM 以最小计算开销建模声学 token 的能力。

Higgs Audio V2 在音频 AI 能力上实现了重大飞跃:

  • 多说话人对话自然流畅:多说话人对话往往难以处理,尤其是在角色无法匹配彼此的情绪和语气时。而借助 Higgs Audio V2,这种对话轻松自然,仿佛现场交流,充满生命力。
  • 支持长音频生成:生成长音频时需要保持声音的一致性,同时兼顾真实感、吸引力和生动性。Higgs Audio 提供条件控制与提示机制,使长音频表现出色。
  • 高保真音质:为了在高品质扬声器和耳机上实现逼真音效,V2 将音频处理管线从 16kHz 升级至 24kHz,带来更佳音质。
  • 高效推理,资源友好:无论是个人项目还是商用部署,推理效率都很重要。我们最小的模型可以在 Jetson Orin Nano 上运行;最新的 3B Audio Generation V2 模型则至少需要 RTX 4090 才能高效推理。
  • 生成真实、有情感的语音表现领先:在 EmergentTTS-Eval 基准测试中,其胜率超过 75%,超越 ChatGPT 4o。
  • 开源:模型开源。
  • 训练数据超千万小时:为实现更高音质与更逼真的语音效果,模型在超过1000万小时的音频上训练,并依托精细的处理与标注流程自动生成训练数据

模型原理:

传统的语音和文本模型之间相互独立,李沐老师就想,欸,能不能将两者结合起来,直接让LLM用语音进行沟通。那么首先就要知道文本语言模型的本质是用给定的一段指令去生成预测结果,就是将任务先拆解为系统指令(system)用户输入(user)模型回复(assistant)三个部分。system告诉模型,需要做什么事情,例如回答该问题、写一段文字或者其他,user就是告知事情的详细内容,例如问题具体是什么、文字要什么风格。

所以如果要让模型支持语音,就需要为模型增加一个系统命令,在user里输入要转录为语音的文字,让模型从system里输出对应语音数据。这样语音任务就能转换成相同的处理格式,直接打通语音和文本之间的映射,通过追加更多的数据和算力,直接scaling law“大力出奇迹”。

音频分词器:

这就引出了新的问题,语音信号本质是连续的,要如何才能在离散的文本token中表示呢?

现有的方法是将一秒的语音信号裁切成多段(如100毫秒一段),为每一段匹配最相似的预定义模板(如45个模板),然后将其表示为长度为10的编号序列,也就是一个个token。

但这样做,虽然可以将一小时的音频从60兆压缩到0.16兆,但质量相当糟糕,所以需要优先保留语音的语义信息而声学信号只保留少量部分,后续再通过其他手段还原

于是他们训练了一个统一的离散化音频分词器,以每秒25帧 [40ms/帧] 的速度运行,同时保持甚至提高音频质量,以捕获语义和声学特征。

新的离散化音频分词器运行速度仅为每秒25帧,同时在音质上保持甚至优于码率翻倍的分词器。该模型是首个在 24 kHz 数据上训练的统一系统覆盖语音、音乐与声音事件。同时,该模型采用简单的非扩散式编码器/解码器,实现快速批量推理

解析模块

  • 语义教师模型 (Semantic Teacher): 生成语义表示 S,用于指导语义编码器提取语义信息;
  • 语义编码器 (Semantic Encoder): 接收语义表示 S,提取语义特征 hS ;
  • 声学编码器 (Acoustic Encoder): 直接从输入音频 X 中提取声学特征 hA ;
  • 特征组合 (Concatenation): 将语义特征 hS 和声学特征 hA 进行特征组合,形成联合特征表示;
  • Dense 层: 对联合特征进行非线性变换,生成预量化特征 hpre ;
  • 残差向量量化 (RVQ): 对预量化特征进行hpre 量化,生成量化后的特征 hpost,并产生多个量化码本 Q1,Q2,…,Qm ;
  • Dense 层: 对量化后的特征进行非线性变换hpost,生成用于解码的特征表示;

解码过程:

  1. 语义解码器 (Semantic Decoder): 使用处理后的量化特征重建语义表示 S^ ;
  2. 声学解码器 (Acoustic Decoder): 使用处理后的量化特征重建音频信号 X^ ;

具体流程:

  1. 特征提取: 原始音频 X 输入后,通过语义教师模型生成语义表示 S,然后通过语义编码器和声学编码器分别提取语义特征和声学特征;
  2. 特征组合与量化: 提取的语义和声学特征进行组合,经过非线性变换后进行残差向量量化,得到量化后的特征表示;
  3. 解码与重建: 量化后的特征分别输入语义解码器和声学解码器,重建语义表示 S^ 和音频信号 X^ ;
  4. 损失计算与优化: 通过计算语义损失和声学损失,优化模型的参数,使重建的语义和音频尽可能接近原始输入;

音频分词器性能:

整体架构

HiggsAudio-V2 模型基于大型语言模型(LLM),并集成了音频适配器(Audio Adapter)和音频解码器(Audio Decoder),用于处理音频输入和输出。

模型基于 Llama-3.2-3B 构建。为了增强模型处理音频 token 的能力,引入了“DualFFN”架构作为音频 adapter。DualFFN 充当音频专家,以最小的计算开销提升 LLM 的性能。通过引入 DualFFN,我们的实现保留了原始 LLM 91% 的训练速度。

组件组成

  • Text Branch(浅蓝色):处理文本输入。
  • Understanding Variant(浅蓝色):用于理解文本和音频输入。
  • Generation Variant(黄色):用于生成文本和音频输出。
  • Audio Adapter – Dual FFN(虚线框):专门设计用于处理音频令牌的模块,包含两个前馈网络(FFN)和多头自注意力(MHA)模块。

文本输入

  • 文本输入通过 Text Tokenizer 转换为文本令牌(Text Token)。
  • 文本令牌通过 Text Branch 进行处理。

音频输入

  • 音频输入通过 Audio Tokenizer 转换为音频令牌(Audio Token)。
  • 音频令牌通过 Understanding Variant 进行处理。
  • 音频输入还通过 Semantic Encoder 提取语义信息。

文本和音频融合

  • 文本和音频令牌在 LLM 中进行融合处理。
  • Understanding Variant 和 Generation Variant 分别负责理解和生成任务。

音频适配器(Dual FFN)

  • Audio Adapter 包含两个并行的前馈网络(FFN),分别处理文本和音频特征。
  • 每个 FFN 之后都有一个归一化层(Norm)。
  • 处理后的特征通过多头自注意力(MHA)模块进行进一步处理。
  • 最终,处理后的文本和音频特征在音频适配器中融合。

为了提升模型处理音频令牌的能力,HiggsAudio-V2 引入了 “DualFFN” 架构作为音频适配器。DualFFN 作为音频专家模块,可以显著提升模型在音频任务上的性能,同时保持较低的计算开销。具体来说,DualFFN 在音频令牌处理过程中提供了额外的处理能力,使模型能够更有效地理解和生成音频数据。

延迟模式(Delay Pattern)

由于音频令牌化过程中涉及多个代码本,HiggsAudio-V2 采用了延迟模式(delay pattern)来实现跨代码本的并行代码生成。该模式通过在不同代码本之间引入偏移量,使得模型能够在保持音频质量的同时支持流式处理。延迟模式允许模型在生成音频时,同时处理多个代码本中的令牌,从而提高了生成效率。

然后要让模型很好地理解和生成声音,就需要利用模型的文本空间,将语音的语义尽量地映射回文本,当中需要大量的数据支持。

由于版权问题,沐导没有使用B站或YouTube这类公开视频网站数据,而是购买或从允许抓取的网站获取。这样得到的数据质量参差不齐,需要删除其中的90%才能满足1000万小时的训练数据需求。

其次,将语音对话表示为相应的system(场景描述、声学特征、人物特征等)、user(对话文本)、assistant(对应音频输出)的形式。由于OpenAI和谷歌一向禁止使用他们的模型输出再训练,且训练成本过高,为了实现这种标注,他们利用相同的模型架构额外训练出一个语音模型AudioVerse

该模型接收用户语音输入,分析并输出场景、人物、情绪、内容等信息,再将输出反过来作为生成模型的system提示和user输入,实现模型的共同进步。

举个例子就是,如果想要教一个徒弟同时会拳脚功夫,但师傅一次又教不了,那就同时教两个徒弟,一个学打拳,一个学踢腿,然后让他们俩天天互相打,打着打着两个就都会拳脚功夫了。

最终,这个多模态模型就完成了,不仅可以完成简单的文本转语音,还能实现更复杂的任务,比如让它写一首歌并唱出来,再加上配乐。

还能根据语音分析场景、人物(性别、年龄、情绪状态)、环境音(室内外),并进行复杂的理解和推理。

在实时语音聊天上,还可实现低延迟、理解情绪并表达情绪的自然语音交互,而不仅仅是机械的问答。

EmergentTTS-Eval基准上,相较于其他模型,性能可以说是遥遥领先,尤其是在“情绪”和“问题”类别中,相比GPT-4o-mini-tts高出了75.7%和55.7%的胜率。

此外,它在Seed-TTS Eval和情感语音数据集 (ESD) 等传统TTS基准测试中也取得了最佳性能。

Evaluation:

Seed-TTS Eval & ESD

我们使用参考文本、参考音频和目标文本对 Higgs Audio v2 进行零样本语音合成(TTS)测试。评估采用 Seed-TTS Eval 和 ESD 中的标准评估指标。【SIM 指标一般是指 Speaker Similarity

EmergentTTS-Eval (“Emotions” and “Questions”):根据 EmergentTTS-Eval 论文,我们报告了在使用 “alloy” 音色时,相较于 “gpt-4o-mini-tts” 的胜率。评判模型为 Gemini 2.5 Pro。

多说话人评估:我们还设计了一个多说话人评估基准,用于评估 Higgs Audio v2 在多说话人对话生成方面的能力。该基准集包含三个子集:

  • two-speaker-conversation:包含1000条双人合成对话。我们固定两段参考音频,用以评估模型在双人语音克隆方面的能力,对话轮数在4到10轮之间,角色随机选择。
  • small talk(无参考音频):包含250条合成对话,生成方式与上类似,但特点是发言简短、轮数较少(4–6轮)。本集合未提供参考音频,旨在评估模型自动为角色分配合适声音的能力。
  • small talk(有参考音频):同样包含250条合成对话,发言更短。该集合在上下文中包含参考音频片段,类似于 two-speaker-conversation,用于评估基于参考音频的表现。

我们在这三个子集上报告了词错误率(WER)和说话人内相似度与说话人间差异度的几何平均值。除 Higgs Audio v2 外,我们还评估了 MoonCast 和 nari-labs/Dia-1.6B-0626 这两个当前最受欢迎、支持多说话人对话生成的开源模型。结果总结在下表中。由于 nari-labs/Dia-1.6B-0626 对话语长度及输出音频的严格限制,我们未能在 “two-speaker-conversation” 子集上运行该模型。

Seed LiveInterpret 2.0 端到端同声传译大模型

!!!总结:必须认识到数据在模型训练的重要性。模型经过数十万小时语音数据的训练,数据质量中的任何瑕疵都可能在最终效果中被显著放大,这些潜在问题包括口音差异、准确读音、时间戳的准确预测,以及句子衔接的流畅度等关键要素。良好的性能正是建立在海量优质训练数据之上。

Seed LiveInterpret 2.0 是首个延迟&准确率接近人类水平的产品级中英语音同传系统,在中英同传翻译质量达到业界 SOTA 的同时,实现了极低的语音延迟水平。

它基于全双工端到端语音生成理解框架,支持中英互译,可实时处理多人语音输入,像人类同传译员一样以极低的延迟 “边听边说”,一边接收源语言语音输入,一边直接输出目标语言的翻译语音。同时,Seed LiveInterpret 2.0 还支持 0 样本声音复刻,让沟通更加流畅自然。

  • 接近真人同传的翻译准确率 精准的语音理解能力保障了翻译准确度,在多人会议等复杂场景中英双向翻译准确率超 70%,单人演讲翻译准确率超 80%,接近真人专业同传水平。
  • 极低延迟的 “边听边说” 能力 采用全双工语音理解生成框架,翻译延迟可低至 2-3 秒,较传统机器同传系统降低超 60%,实现了真正的 “边听边说” 翻译。
  • 零样本声音复刻,音色真实自然 只需采样实时语音信号,便能提取声音特征,用说话人的音色特质实时 “说出” 外语,提升交流的沉浸感和亲和力。
  • 智能平衡翻译质量、延迟和语音输出节奏 可根据语音清晰度、流畅度、复杂程度,调整输出节奏,并适配不同语言特性。面对超长信息,依然能保证传译语音节奏的自然流畅。
同声传译系统评估:左右两图比较了人工评估的翻译质量分数和响应效率  对于语音转文本 (S2T) 和语音转语音 (S2S) 模式,响应效率是相对于人工翻译延迟来衡量的。人工评估准确度反映了翻译输出对说话者原始意图的忠实程度

框架:

系统会克隆每位说话者的声音,并以相应的语调将其翻译为另一种语言
全双工流式端到端模型架构: Hibiki ,模型架构和数据相关可参考该论文

提出一种端到端的语音到语音同步翻译模型,在一个统一框架内无缝整合了同步语音翻译和语音克隆功能。

  • 语言模型预训练:使用 Seed LLM 系列的方法对初始语言模型进行预训练,建立基础的文本生成与理解能力。
  • 多模态扩展:集成一个预训练的音频编码器,使模型能够接受流式音频输入,扩展为具备音频处理能力的多模态 LLM。
  • 多任务持续学习训练:在大规模多任务数据上进行自回归训练,生成包括文本 token(可选)和音频 token 的输出,实现语音合成。
  • 高质量数据微调:使用人工标注的高质量数据进行微调,进一步优化模型在指令理解、多说话人识别、翻译策略关键能力上的表现。

问题:面临严格延迟约束下的同步翻译优化难题,需要在翻译质量时序控制之间权衡。

核心思路:优化两个互补目标

  • 片段内一致性确保每个翻译片段自身准确、流畅
  • 片段间连贯性确保不同翻译片段之间逻辑衔接自然

奖励机制设计

  • 多维单轮奖励(step-level):为每一步生成即时反馈,评估翻译准确性与时序控制,实现片段内部一致性优化
  • 统一多轮奖励(sequence-level):从全局角度评估整个翻译段落的连贯性,优化跨片段一致性

两阶段训练策略

  • 第一阶段:单轮奖励训练
    • 仅使用 step-level 奖励,学习人类翻译的先验知识,确保训练稳定
  • 第二阶段:联合优化训练
    • 引入 sequence-level 奖励,与 step-level 奖励联合优化,平衡过程指标(每步表现)与结果指标(整体输出质量)

主要贡献包括:统一的语音到语音架构、跨语言的语音克隆机制,以及接近人类水平的翻译性能。

Training

Continual Training and Supervised Fine-tuning

为实现文本与语音之间的有效模态对齐,并提升跨语言能力,我们采用了全面的多任务多模态持续训练(CT)策略。该策略有效促进了语音与文本模态之间的对齐,并强化了模型的跨模态与跨语言泛化能力

具体措施如下:

  1. 多模态多任务训练数据
    • CT 数据集涵盖约 1000 亿 tokens,任务类型包括:
      • 语音转文本(Audio-to-Text Transcription)
      • 文本转语音(Text-to-Audio Synthesis)
      • 纯文本处理(Text-Only Tasks)
  2. 数据质量控制
    • 为提升训练效率并确保数据质量,我们引入了基于语音质量指标的严格过滤流程,对语音数据进行筛选。

在持续训练之后,我们在高质量的人类标注数据上进行有监督微调,以激活同步语音传译所需的关键能力。该过程使模型能够建立以下数据驱动能力:

  1. 读-写策略(read-write policy)
  2. 多说话人区分能力
  3. 语音翻译能力
  4. 声音克隆能力

有监督微调显著提升了模型的指令跟随能力以及在核心传译任务上的整体表现。经过微调后的模型为后续的强化学习阶段提供了强大基础,使得后续优化更具针对性有效性

Reinforcement Learning

现代同声传译系统采用双工处理,将输入流分割成连续的音频块。形式上,我们将输入输出序列表示为:

每个音频片段(audioₜ)对应一个增量翻译 yₜ。我们将(audioₜ, yₜ)表示为序列中的第 t 个片段,并将 audio :=(audio₁, audio₂, …, audioₜ)表示为从 1 到 T 的聚合音频。在每个 t 片段中,我们有 yₜ :=(yₜ₁, yₜ₂, …, yₜₙ, …, yₜₙ),其中 N 是输出的长度。该模型利用当前音频片段(audioₜ)和之前的上下文 x<t,通过策略生成翻译 yₜ。

其中 πθ 是具有参数 θ 的策略 决定翻译策略。完整的轨迹概率定义为:

我们将 rtn 表示为 t 个块中第 n 个 token 的奖励。强化学习的目标是最大化每条轨迹上的累积奖励,即:

其中 𝒟 是训练数据集。以下部分详细说明了 rtn  的设计方式。

 奖励设计:平衡单轮反馈和多轮反馈

  • 单轮奖励(Single-turn rewards):在每个决策点提供即时反馈,用于评估中间的推理或生成步骤。
  • 多轮奖励(Multi-turn rewards):评估整个输出序列的质量,反映多个决策步骤的长期、累积效果。

同步翻译系统尤其具有独特挑战,因此需要精细化的奖励设计。该任务需同时优化两个互补目标:

片段内一致性(Intra-segment consistency):要求模型在逐步输出时保持语义与时间上的准确性和完整性,适合采用单轮奖励(single-turn reward)进行即时评估。

片段间连贯性(Inter-segment coherence):确保整个翻译序列在语义和时间上的连续性与一致性,适合采用多轮奖励(multi-turn reward),从全局角度评估累积的序列质量。

基于上述考量,我们提出了一种新颖的框架,将多维单轮奖励统一多轮奖励相结合。

Single-turn Reward:方法利用了每个增量步骤的细粒度反馈,我们通过实证研究发现,这些反馈与人类的评估指标高度相关。

给定一个音频序列 {audiot}1T 和相应的真实值 {yt}1T ,沿着五个派生维度定义段内奖励:

检测准确性奖励(rl​):该奖励旨在鼓励模型在翻译前进行充分“倾听”,避免过早输出,从而提升语义单元完整性。

I(⋅) 为指示函数,条件成立时取值为 1,否则为 0;∣yt​∣ 表示模型在第 t 步生成的 token 数量;∣yt∗​∣ 表示参考翻译在第 t 步应生成的 token 数量。当模型和参考翻译在当前步都没有输出(token 数为 0)时,奖励为 1,否则为 0该设计鼓励模型在语义信息尚不完整时保持“静默”,从而提升翻译的延迟-准确性权衡表现。

翻译主动奖励 ( rs ):通过奖励尽快生成已确认的语义单元来鼓励语音翻译:鼓励模型在语义单元一旦可用时立即翻译

翻译质量奖励(rq:衡量当前步生成内容与参考翻译的相似度(可通过 BLEU、BERTScore 等):

时序匹配奖励(rc​):鼓励模型生成的语音时长与参考时长一致,惩罚过长或过短:

格式一致性奖励(rf):保证输出结构正确,如标点、格式符号等符合预设正则表达式:

最终单轮奖励定义如下:

多轮奖励:单轮奖励机制提供了详细的、逐步的反馈,能够在每一步的递增中平衡延迟和翻译质量,但它未能完全捕捉同声传译中固有的长期依赖关系和累积效应。尤其是,当生成的目标音频逐渐落后于源音频时,会导致破坏性延迟,从而降低用户体验。为了解决这些全局序列级的动态问题,我们设计了一个互补的多轮奖励机制,可以整体评估整个输出序列。

延迟惩罚(rL​):惩罚翻译滞后,鼓励更及时的输出:

  • l:可接受的最大等待阈值
  • K:翻译片段数
  • dk​:第 k 个翻译片段前等待的片段数量

序列级翻译质量奖励(rQ​):衡量整个翻译序列与参考的匹配度(例如通过全局对齐算法):

多轮奖励定义为:

最终奖励融合与正则项

  • 每个子奖励在 batch 中进行标准化(均值为 0,方差为 1),提高数值可比性。
  • 总奖励为标准化后的单轮与多轮奖励之和,融合了局部细粒度指导全局一致性目标
  • 引入 KL 散度正则项:

用于鼓励当前策略 πθ​ 向参考策略靠拢,提升训练稳定性与可控性。

稳定强化学习训练:通过近端策略优化 (PPO)来优化定义的目标,该算法通过修剪的目标函数实现稳定高效的策略更新。训练目标公式如下:

 audio={audiot}1T 表示输入的音频序列, y={yt}1T 表示从旧策略 πθo⁢l⁢d 采样的翻译响应。优势估计 Atn 使用广义优势估计 (GAE)计算。由于这些奖励之间紧密耦合且差异化,调整它们各自的权重颇具挑战性,而且通常效果不佳。为了解决这些问题并稳定训练,我们采用了两种主要策略:自适应 KL 惩罚 和两阶段强化学习训练方案。

 Adaptive KL

对于包含音频和文本 token 的序列,由于其长度较长,控制 KL 散度会更加困难,这自然会导致更高的累积 KL 散度。因此,KL 惩罚系数 β 必须设置为高于传统 RLHF 的设置。

采用对数空间中的比例控制器来自适应地调整 β ,以确保 KL 散度始终接近预定目标。

两阶段强化学习训练方案:在第一阶段,通过仅优化多维单轮奖励来预热模型,使其内化人类先验知识并实现稳定的学习动态。在第二阶段,使用结合过程和结果成分的多轮奖励对模型进行进一步训练,使其能够有效地优化和平衡延迟与翻译质量。、

Experiments

 评估指标:

对于文本翻译质量评估,我们主要依赖于人工评估指标——有效信息比例 (VIP),该指标衡量翻译输出对每个语义片段传达说话者原始意图的准确程度,与人工翻译的判断高度一致。

在语音到语音评估中,我们提出了“语音有效信息比例”(SVIP)作为一种全面的人类评估指标。该指标建立在已有的“有效信息比例”(VIP)框架[6]之上,用于衡量完整语音会话中有效语义片段所占的比例。

当一个语音语义片段能够有效传达源语音的核心信息、准确表达说话者的原始意图、在可接受的延迟范围内完成传递、保持适合听众理解的语速,并达到清晰和易懂的声音质量标准时,即被视为有效。

在延迟评估方面,我们采用“首字母出现延迟”(FLAL)指标来衡量系统在段落级别输出第一个确定翻译所需的时间。在句子级别,我们使用广泛应用的“平均延迟”(AL)和“长度自适应平均延迟”(LAAL)指标,以比较不同方法之间的延迟表现。

在延迟表现上,Seed LiveInterpret 2.0 在语音到文本场景中,输出首字平均延迟仅 2.21 秒,在语音到语音场景中,输出延时仅 2.53 秒,做到了对翻译质量以及时延的均衡。

针对 Seed LiveInterpret 2.0 中译英和英译中两个方向的表现进行了客观评估,与其他翻译系统在翻译质量(BLEURT/ COMET)和延迟(AL/ LAAL/FLAL)等指标上进行对比。

结果显示,Seed LiveInterpret 2.0 在两个数据集上均表现出最高的翻译质量。在延迟方面,Seed LiveInterpret 2.0 在英到中方向上实现了语音到语音翻译的最低平均滞后(AL),在中到英方向上也表现出竞争力,展现了速度与准确度的良好平衡。

总体来看,Seed LiveInterpret 2.0 在句子级基准测试中,有效平衡了翻译质量与延迟。这不仅缓解了传统同传中 “译得准则慢,译得快则偏” 的痛点,配合音色复刻能力,让中英跨语言交流首次具备自然对话般的流畅感。

总结与展望

在本研究中,团队进一步认识到数据对模型训练的重要性。模型经过数十万小时语音数据的训练,数据质量中的任何瑕疵都可能在最终效果中被显著放大,这些潜在问题包括口音差异、准确读音、时间戳的准确预测,以及句子衔接的流畅度等关键要素。Seed LiveInterpret 2.0 良好的性能正是建立在海量优质训练数据之上。

Seed LiveInterpret 2.0 已初步展现出一定优势,其边界仍有拓展空间。比如,在语言覆盖方面,目前模型主要支持中英互译,其他语种尚未较好支持。此外,其声音复刻的稳定性、语音表现力、情绪复刻能力、极复杂情况下的翻译准确性等仍有进步空间。

在未来研究中,我们希望进一步挖掘模型潜力,通过优化算法、增强数据及改进训练策略等方式,逐步拓展同传模型的能力边界,提升其在复杂场景下的适应性和性能表现。

高效 LLM 训练方法:Packed samples和 sorted batching

 要让大型语言模型更有效地处理长文本上下文,需要在相似长度的输入序列上进行指令微调。LongAlign 方法,它可以帮助大型语言模型有效处理长达 64k 的长上下文,并展现出强大的长文本理解和生成能力。

LongAlign :

动机:

  • 目前缺乏用于有监督微调(SFT)的长文本指令跟随数据集,更缺乏构建此类数据的方法。
  • 长上下文数据的长度分布差异较大,在多GPU环境中严重降低了传统批处理方法的训练效率——处理较短输入的GPU必须等待处理较长输入的GPU完成任务后才能继续运行。
  • 亟需一个强健的基准评估体系,用于衡量大型语言模型在面对真实世界长文本查询时的处理能力。

贡献:

LongAlign 方法,分别从数据构建、高效训练和评估三个方面入手:

在数据方面,为构建一个多样化的长文本指令跟随数据集,从九个来源收集了长文本序列,并使用 Self-Instruct生成了 1 万条长度在 8k 到 64k 之间的指令数据。

在训练方面,为应对不均匀批处理导致的效率问题,采用了 packing 策略,即在将数据分发到 GPU 之前,将多个序列打包为接近最大长度的组合。但我们发现这种打包训练中的损失计算存在偏差:不同数量序列的打包在最终损失计算中被赋予相同权重。为缓解这一问题,我们提出了“损失加权策略”,对每条文本的损失进行加权平均,以平衡不同序列对整体损失的贡献。此外,我们还引入了“排序批处理”方法,将长度相近的序列分组,从而减少批内空闲时间

在评估方面,开发了 LongBench-Chat 基准测试,它包含长度为 10k-100k 的开放式问题,这些问题由博士生进行标注。评估内容涵盖推理、编程、摘要以及多语种翻译等多种长文本指令跟随能力。使用 GPT-4(OpenAI,2023b)结合人工标注结果和少量示例,对模型生成的回答进行评分。

结论:

数据量与多样性的影响:长文本指令数据的数量和多样性都会显著影响模型处理长上下文的能力,最终性能差异最高可达 30%。

长文本指令数据的益处:增加长文本指令数据有助于提升模型在长上下文任务中的表现,同时不会削弱其处理短上下文任务的能力。

训练策略的有效性采用的打包和排序批处理策略可将训练速度提升超过 100%,且不影响模型性能。此外,提出的损失加权技术还能将长文本任务的性能提升 10%。

数据集构建:

构建了一个包含10,000条长度在8k-64k之间的长文指令跟随数据集,这些数据来自于9个不同的数据源,包括学术论文、书籍、百科全书等,覆盖了多样化的任务类型。

高效训练方法:

为了确保模型在有监督微调(SFT)后依然具备处理长文本和短文本(即通用能力)的能力,将长文本指令数据与通用指令数据集混合用于训练。这种训练策略使得大量通用短文本数据与相对较少的长指令数据结合,从而形成了一个“长尾”式的数据长度分布。探索了两种训练方法:packingsorted batching

Packing(打包)

该方法通过将不同长度的数据拼接,直至达到最大长度,生成的打包数据整体长度接近最大限值。这些打包后的数据再进行批处理并在多 GPU 上处理,有效减少了每个批次中的空转时间。

此外,为防止同一 pack 中的不同序列在自注意力计算中发生“交叉污染”,我们传入了每个序列的起始与结束位置列表,并使用了 FlashAttention 2 中的 flash_attn_varlen_func 该方法支持高效的块对角注意力计算,计算量与 IO 时间均优于传统的二维注意力掩码。

Packing 策略存在的偏差

不过我们注意到,packing 会带来对长序列目标 token 较多的序列偏向。这是因为:不同的打包组(pack)在最终损失计算中被赋予相同权重,而每个打包组中包含的序列数量和每个序列的目标 token 数量却不同。

因此,在对每个批次求平均损失时,包含序列较少(通常是较长序列)或目标 token 较多的 pack,会对最终损失产生更大影响。

形式上,设将 M 个序列打包成 K 个 pack,第 i 个 pack 包含索引区间为 [Pi−1,Pi)的序列,其中 P0=1,PK=M+1。设 Li 为第 i个序列在其 Ni​ 个目标 token 上的总损失。如果我们希望对每个序列赋予相等的权重[ SFT中算loss ],则损失应当为:

而在 packing 情况下计算得到的损失为:

(3)与公式 (2) 相比,在 packing 情况下,相当于为第 j个序列分配了一个权重:

也就是说,损失更偏向于目标 token 数较多的序列,以及位于pack 较小的组中的序列。

为了解决这种不公平,我们提出对第 i 个序列的损失进行缩放,缩放因子为:K/(NiM),然后对每个 pack 中缩放后的损失求和,这样得到的总损失将与公式 (2)(即平均每个序列损失)保持一致,从而消除了不同序列在损失计算中所受到的偏倚。

损失加权策略在下游任务中带来了约 10% 的性能提升

Sorted Batching(排序批处理)

还提出了一种高效的 排序批处理策略。为确保每个 batch 中的序列长度相近,我们先按照序列长度对数据进行排序,然后在每轮训练中从中随机选取一段连续的数据组成一个 batch,且不重复使用。

不过,该方法不可避免地会引入 批次间数据分布的不均衡某些 batch 可能全部由长序列组成,另一些则全是短序列。这种偏差可能对 SGD(随机梯度下降)优化过程造成严重影响。

尽管如此,我们在实验中发现,排序批处理显著加快了训练速度,且几乎不会对模型性能产生负面影响。这可能得益于我们使用了较大的梯度累积步数(gradient accumulation steps)和优化器本身较强的适应能力。

训练方法细节

这里介绍 packing 策略与损失加权的具体实现方式。

Packing 策略实现

在打包训练过程中,每个数据批次会传入一个特殊的一维注意力掩码。在该掩码中,第 i个元素表示第 i 个序列在该批次中的起始位置。掩码的第一个元素为 0,最后一个元素等于 batch_size × seq_len

在注意力计算时,我们使用 FlashAttention 2 提供的 flash_attn_varlen_func 函数,并将该掩码传入其参数 cu_seqlens_qcu_seqlens_k。该函数会根据掩码中相邻元素表示的起始和结束位置,在每个序列内部进行注意力计算因此,每个序列的 Query 只能与自身的 Key 进行注意力操作,实现了“序列内独立注意”。

损失加权策略实现

在实现损失加权策略时,首先对训练数据进行预处理:为每个 pack 中的序列生成一个加权的一维掩码。该掩码中,对应目标 token 的位置权重为 1/N(其中 N 是当前序列的目标 token 数),其他位置为 0。

训练时,根据当前配置动态设置 M 和 K,表示即当前批次中序列的数量和 pack 的数量。然后,损失计算方法为:对每个 token 的交叉熵损失乘以比例系数 K/(MN),再求和得到最终损失值。

Packing 加权loss代码实现:

SFT中算loss通常来讲都是样本内作token-level mean,样本间作sequence-level mean,也就是等式(2)的计算方式。如果不同样本间作token-level mean,则会使target token数量多的样本更受重视(相当于被upsample),从而引入不同样本间的不平衡。

### Support loss weighting for packing ###
        loss = None
        if labels is not None:
            lm_logits = lm_logits.to(torch.float32)
            # Shift so that tokens < n predict n
            shift_logits = lm_logits[..., :-1, :].contiguous()
            if isinstance(labels, tuple) or isinstance(labels, list):
                labels, weights = labels
            shift_labels = labels[..., 1:].contiguous()
            if self.pack_loss:
                shift_weights = weights[..., 1:].contiguous()
                loss_fct = CrossEntropyLoss(ignore_index=-100, reduction='none')
                loss = loss_fct(shift_logits.view(-1, shift_logits.size(-1)), shift_labels.view(-1))
                loss = (loss * shift_weights).sum()
            else:
                loss_fct = CrossEntropyLoss(ignore_index=-100)
                loss = loss_fct(shift_logits.view(-1, shift_logits.size(-1)), shift_labels.view(-1))

            lm_logits = lm_logits.to(hidden_states.dtype)
            loss = loss.to(hidden_states.dtype)
        ### -------------------------------------- ###

ThinkSound:多模态大语言模型中的链式思维推理,用于音频生成与编辑

ThinkSound 是一个统一的 Any2Audio 生成框架,通过链式思维(Chain-of-Thought, CoT)推理进行流匹配指导

基于 PyTorch 的多模态音频生成与编辑实现:可基于视频、文本、音频及其组合,生成或编辑音频,底层由多模态大语言模型(MLLMs)逐步推理驱动。

主要特性

  • Any2Audio:支持任意模态(视频、文本、音频或其组合)生成音频。
  • 视频转音频 SOTA:在多个 V2A 基准上取得最新最优结果。
  • CoT 驱动推理:基于链式思维推理,实现可组合、可控的音频生成。
  • 交互式面向对象编辑:通过点击视觉对象或文本指令,细化或编辑特定声音事件。
  • 统一框架:单一基础模型,支持生成、编辑与交互式工作流。

Abstract

ThinkSound 将音频生成与编辑分为三个交互式阶段均由基于 MLLM链式思维(CoT)推理指导

  1. 拟音生成(Foley Generation): 从视频生成基础、语义与时序对齐的声景。
  2. 面向对象的细化: 通过点击或选择视频中的对象区域,对用户指定对象的声音进行细化或添加。
  3. 定向音频编辑: 使用高级自然语言指令对生成音频进行修改。

在每个阶段,一个多模态大语言模型都会生成与上下文相符的 CoT 推理内容,用以指导统一的音频基础模型。此外,我们还引入了 AudioCoT,一个包含结构化推理标注的综合数据集,用于建立视觉内容、文本描述与声音合成之间的联系。

带有链式思维(CoT)的 ThinkSound:(1) 由 CoT 驱动的拟音合成,捕捉语义与时间细节;(2) 面向对象的交互式精细化处理,实现用户控制;(3) 有针对性的音频编辑。

为视频生成真实的声音不仅仅是识别物体,它还需要对复杂的视觉动态和上下文进行推理,比如判断一只猫头鹰是在鸣叫还是在拍打翅膀,识别树枝轻微的摆动,并在一个场景中同步多个声音事件。

ThinkSound——在技术上,提出了三个关键创新:

  • a) 对 MLLM 进行 AudioCoT 微调,使其能生成结构化、面向音频的推理链,明确捕捉时间依赖关系、声学属性与复杂音频事件的分解过程;
  • b) 设计了一个基于 flow matching 的统一音频基础模型,支持所有三个阶段,能够从任意组合的输入模态(视频、文本、音频)中合成高保真音频。该模型直接受益于 MLLM 提供的细致 CoT 推理,将复杂音频场景分解为可控组件,在保证整体连贯性的同时实现重点声音事件的精确合成;
  • c) 引入了一个新颖的基于点击的交互界面,使用户能够选择特定视觉对象进行音频精修,CoT 推理机制将视觉关注转化为语境合理的声音合成过程。

AudioCoT Dataset for CoT-Guided Generation and Editing

Multimodal Data Sources

AudioCoT 数据集包含视频-音频和音频-文本对。对于视频-音频数据,我们利用 VGGSound 和 AudioSet中精选的非语音子集,以确保广泛覆盖现实世界的视听事件。对于音频-文本数据,我们聚合了来自 AudioSet-SL 、Freesound 、AudioCaps和 BBC Sound Effects数据对,从而构建了一个用于训练多模态模型的多样化且具有代表性的语料库。

首先移除静默的音频-视频片段,仅保留含有效内容的素材。针对AudioSet子集,根据标签信息进一步剔除了含有人声的片段,以专注于非语音音频。随后将所有音视频片段统一分割为9.1秒的固定时长,舍弃较短片段以保证数据 uniformity(统一性)。为实现数据平衡,保持音乐与音效样本的比例约为1:1,确保两类别的均衡表征。

自动化 CoT 生成流程:

 AudioCoT 数据集构建流程概览

第一阶段:基础拟音思维链生成

  • 视频-音频对处理
    1. 使用VideoLLaMA2通过差异化提示策略提取视频的时序与语义信息
    2. 结合Qwen2-Audio生成音频描述
    3. 将视频描述与音频描述通过GPT-4.1-nano整合为完整思维链
  • 纯音频-文本对处理
    采用简化流程(无需VideoLLA2),直接生成音频描述后与现有文本标注整合
    该阶段生成的思维链能捕捉内容条件与对应音频元素的复杂关联,确保两类数据共同促进音频生成推理的全面理解

第二阶段:交互式对象中心思维链生成
为实现对象聚焦的音频生成,开发基于Grounded SAM2的ROI提取框架:

  1. 对象定位:以音频描述为提示,生成潜在发声物体的边界框
  2. 时序追踪:跨视频帧持续跟踪坐标变化
  3. 语义增强:VideoLLA2为每个ROI片段提供详细语义描述
  4. 复杂操作处理
    • 建立分层推理结构,合并目标视频CoT 与参考视频的思维链CoT 以构建全局上下文
    • 结合ROI特定生成信息,通过GPT-4.1-nano生成连贯的操作逻辑

第三阶段:基于指令的音频编辑思维链生成
针对指令引导的音频编辑任务,基于四类核心(扩展、修复、添加和移除)分析并整合来自第一阶段的 CoT 信息。这些操作涵盖从扩展序列到删除不需要的片段的各种场景。GPT-4.1-nano 处理这些整合的信息,生成特定于指令的 CoT 推理链,同时执行相应的音频操作,创建(指令-CoT、输入音频、输出音频)三元组,用于模型训练和评估。

ThinkSound

 ThinkSound 架构概览。 左图: 我们的多模态 LLM 框架,其中经过微调的 VideoLLaMA 2 模型生成用于音频生成和编辑的 CoT 推理。 右图: 我们增强型多模态 Transformer 架构,该架构以 MM-DiT 为骨干,具有用于处理多模态输入的专用路径和 CoT 驱动的条件反射,从而实现高保真、基于情境的音频生成。

Overview

ThinkSound 引入了一个新颖的分步式交互式音频生成和编辑框架,该框架由 CoT 推理引导。我们的方法将复杂的 V2A 任务分解为三个直观的阶段:(1) 基础拟音生成,创建语义和时间匹配的音景;(2) 通过用户点击进行基于区域的交互式细化;以及 (3) 基于高级指令的定向音频编辑。在每个阶段,MLLM 都会生成 CoT 推理,引导统一的音频基础模型制作和细化音轨。

使用多模态 LLM 进行 CoT 推理

为了实现分步式、情境感知的音频生成,我们利用 VideoLLaMA2 作为核心多模态推理引擎。VideoLLaMA2 之所以被选中,是因为其在融合视频、文本和音频模态方面拥有领先的能力,而其先进的时空建模对于捕捉视觉事件与其对应听觉表现之间的微妙相互作用至关重要。

通过AudioCoT数据集对VideoLLA2进行微调,使其适配音频推理领域。该数据集包含专为视听任务定制的丰富标注推理链,通过微调过程使模型具备三大核心能力:

(1)音频中心化理解能力

  • 声学特性推断(如材料属性、空间混响等)
  • 声音传播建模
  • 视听对应关系推理(包括音频事件间的时序与因果关系,例如”脚步声先于开门声,随后出现对话声”)

(2)结构化思维链分解能力
将复杂音频生成/编辑任务拆解为明确可执行的步骤序列

(3)多模态指令跟随能力
可靠地解析并执行跨模态的多样化生成/编辑指令

如图3所示,微调目标采用标准的下一个token预测交叉熵损失。通过这种针对性适配,VideoLLA2被转化为专用音频推理模块,能够生成上下文精确的思维链指令,驱动ThinkSound流程的每个阶段。

CoT 引导的统一音频基础模型

ThinkSound 的核心是我们统一的音频基础模型,它能将 CoT 推理无缝转换为高质量音频,具体细节见图 3 右侧部分。使用预训练的 VAE将音频编码为潜在表示,并采用条件流匹配对模型进行训练,其中速度场预测以多模态上下文为条件,包括视觉内容、CoT 推理、文本描述和音频上下文。为了支持任意组合的输入模态,我们在训练过程中引入了无分类器引导的随机丢弃方法。通过以概率 p_drop 随机丢弃不同模态的组合,使模型在推理阶段能够处理任意输入配置——这对于我们的交互式框架至关重要。我们还结合了策略性音频上下文遮蔽,以支持音频修补和扩展等高级编辑操作

在文本处理方面,我们采用了双通道编码策略:MetaCLIP对视觉字幕进行编码,提供场景级上下文;而 T5-v1-xl则处理结构化的 CoT 推理,以捕捉详细的时间和因果关系。这两种互补的表示被有效融合,MetaCLIP 的特征作为全局条件信号,而 T5 的输出则支持基于推理的精细控制。

我们改进的 MM-DiT 架构基于多模态生成建模领域的最新进展,包含三大关键组件:(1)采用混合型 Transformer 主干网络,在模态专用与共享处理之间交替进行。多流 Transformer 块为每个模态维护独立参数,同时共享注意力机制,从而高效处理多样输入,同时兼顾跨模态学习。(2)设计了自适应融合模块,通过门控机制对视频特征进行上采样并与音频潜变量融合。这不仅能够突出显著的视觉线索、抑制无关信息,还确保视频信息直接参与后续的单流 Transformer 块。通过将视频整合到音频潜变量空间,模型可以更好地捕捉细微视觉细节及其对声景的微妙影响,实现比仅依赖音频潜变量更丰富的跨模态推理。(3)通过对字幕和视频的 CLIP 特征进行均值池化,实现全局条件控制,并借鉴 MMAudio,引入同步特征以提升音视频时间对齐效果。最终得到的全局条件被添加到时间步嵌入中,并通过自适应层归一化(AdaLN)注入多流与单流块。

 逐步 CoT 引导的音频生成和编辑

通过支持输入模式与 CoT 的灵活组合,ThinkSound 支持将音频生成分解为图 1 所示的三个直观阶段。该三阶段流程通过直观的交互式工作流程,实现了逐步精细化、高度定制化的音频生成,CoT 推理在每个步骤中将用户意图与音频合成连接起来。

阶段 1:基于 CoT 的拟音生成
在第一阶段,系统分析整段视频以识别声学要素及其关系。经过微调的 MLLM 生成详细的 CoT 推理,明确识别主要声事件、环境元素、声学属性以及它们的时间依赖关系——确定物体何时发声及声音间的相互作用。这种结构化推理指导音频基础模型生成高保真音频,精准匹配视觉场景的语义内容与时间动态。借助 CoT 推理将复杂音频场景拆解为显式声源,模型能够生成多样且连贯的声景,捕捉微妙视觉线索与运动动态,实现逼真的音频合成。

阶段 2:交互式对象聚焦音频生成
第二阶段引入交互框架,让用户通过关注特定视觉元素来优化初步声景。借助简单的点击界面,用户可以选择感兴趣的物体进行音频强化。不同于第一阶段的整体生成方式,此阶段采用基于目标区域(ROI)的局部细化,利用分割出的目标区域指导定向音频合成。经过微调的 MLLM 针对所选 ROI 生成专门的 CoT 推理,关注该物体在全局背景下的声学特性。模型在这些结构化推理引导下生成物体专属声音,与第一阶段生成的音轨自然融合。值得注意的是,此阶段的基础模型将已有音频上下文作为附加条件信号纳入考虑。

阶段 3:基于指令的音频编辑
在最后阶段,用户可通过高层次的编辑指令来优化音质或修改特定元素。MLLM 将自然语言指令转译为具体的音频处理操作,利用 CoT 推理综合视觉内容和当前音频状态。基础模型在此推理及现有音频上下文条件下执行定向修改,同时保持整体连贯性。通过自然语言控制,非专业用户也可以完成复杂的音频操作,包括添加声音、移除声音、音频修补以及音频延展。

Results

虽然目前的 MLLM 模型能够很好地理解和推理语义信息,但它们在理解视频的精确时间和空间信息方面仍然存在局限性。例如,在定位声音事件的精确时间戳时,MLLM 模型经常无法提供准确的结果或给出错误的结果。此外,目前用于音频生成的开源视音频数据集在多样性和覆盖范围方面存在局限性,可能缺少稀有或特定文化的声音事件。未来,我们将继续探索更加多样化和全面的数据集,以提升模型的性能。此外,我们还将探索更有效的方法来提升生成音频的时间和空间对齐效果。

Hibiki- 流式语音翻译[Kyutai]

[Read the paper] [Samples] [HuggingFace]

Hibiki——一款 支持实时、高保真、设备端运行的语音到语音翻译模型。它基于 Moshi 所构建的核心思想和架构,借助自研的合成数据实现高效训练,并支持在移动端进行推理。Hibiki 能忠实传递原说话者的声音特性和语流,其质量和自然度在现有模型中最贴近人工翻译的效果。 Hibiki 的推理代码与模型权重开源,同时在研究论文中公开了所有训练细节。

什么是 Hibiki? Hibiki 是一款用于流式语音翻译的模型(也称为同声传译模型)。与传统的离线翻译不同(离线翻译需等到说话人完整表达完毕后才开始翻译),Hibiki 能动态地积累刚好足够的上下文,并实时逐段输出准确的翻译内容。当用户说话时,Hibiki 会一边生成目标语言的自然语音(含声音迁移),一边输出对应的文字翻译。

架构:Hibiki 是一个仅包含解码器的同声传译模型。Hibiki 利用 Moshi 的多流架构,同时建模源语音和目标语音。这使得 Hibiki 能够在生成目标语音的同时持续处理输入音频流。Hibiki 以恒定的 12.5Hz 帧率生成文本和音频标记,从而实现连续的音频输出流,并附带带时间戳的文本翻译。Hibiki 的主干模型包含 20 亿个参数。我们还训练了一个移动版本 Hibiki-M,具有 10 亿个参数,用于设备端推理。

训练:Hibiki 依赖于对来自同一说话人的源语音与目标语音及文本之间对齐数据的监督训练。由于此类数据的实际数量非常有限,我们依赖于合成数据生成。在源语言和目标语言的转录文本之间,通过一种上下文对齐的弱监督方法进行词级匹配,该方法利用了一个现成的 MADLAD 机器翻译系统。由此得出的对齐规则是:一个词应当仅在可以根据源语言预测出来时才出现在目标语言中。这一规则通过插入静音或使用具备语音控制和对齐感知能力的语音合成系统(TTS)生成目标语音来实现。

推理:Hibiki 会持续编码源语音并生成目标语音。Hibiki 依赖简单的温度采样,因此兼容批处理,不同于依赖复杂推理策略的模型。此外,Hibiki 的语音转换保真度可以通过调整无分类器引导(Classifier-Free Guidance)的系数来控制:系数越大,语音相似度越高,但系数过大会导致翻译质量下降。Hibiki 目前仅支持法语到英语的翻译。得益于其仅解码器架构,Hibiki 可在单个 H100 GPU 上批处理最多 320 条并行翻译(使用无分类器引导时为 160 条)。其更小的替代模型 Hibiki-M 可以在智能手机硬件上本地运行。当前模型训练时支持最长 120 秒的序列,使用 40 秒的上下文窗口。

  • High-Fidelity Simultaneous Speech-To-Speech Translation
  • 摘要:

    Hibiki 利用多流语言模型同步处理源语音和目标语音,并联合生成文本和音频标记,以实现语音到文本和语音到语音的翻译。还解决了同步传译中的挑战,这与其顺序式翻译不同—后者在源语句结束后才开始翻译,而同步传译需要在实时过程中根据上下文的积累逐步生成准确的翻译。为此,我们引入了一种弱监督方法,该方法利用现成文本翻译系统的困惑度,按词识别最优延迟,并构造对齐的合成数据。在监督训练之后,Hibiki 可通过标准的温度采样方法实现自适应的同步语音翻译。在法语-英语同步语音翻译任务中,Hibiki 在翻译质量、说话人一致性和自然度方面展现了当前最先进的性能。

    Introduction

    为了训练 Hibiki,我们通过对单语音频的转录文本进行翻译与再合成,生成合成的平行数据。尽管这提供了在序列层面对齐的输入输出对,但无法学习细粒度的对齐信息。为此,我们引入了“上下文对齐”方法,这是一种基于现成机器翻译系统困惑度的简单方法,用于推导词级对齐。随后通过在目标语音中适当插入静音,使 Hibiki 能够在不依赖复杂推理策略的前提下,实现实时自适应的翻译流程。

    困惑度(Perplexity)是一种衡量语言模型预测样本的好坏的指标,常用于自然语言处理中。如果一个模型预测得越准确,则其困惑度越低。
    
    想象你在玩一个猜词游戏。你的朋友正在说一个句子,说到一半突然停下来,让你猜下一个词是什么。比如:
    
    "今天天气真..."
    "我想吃一碗..."
    如果你能很容易地猜出下一个词(比如"好"或者"面"),说明这个句子对你来说"困惑度很低"。 如果你完全猜不到下一个词会是什么,那么这个句子对你来说"困惑度很高"。
    
    在人工智能和语言模型中,困惑度就是用来衡量模型对文本的预测能力:
    
    困惑度越低 = 模型越自信 = 预测越准确
    就像你很容易猜到"今天天气真好"中的"好"一样
    困惑度越高 = 模型越困惑 = 预测越不确定
    就像面对"今天我遇到了一只..." 这样的句子,下一个词可能是"猫"、"狗"、"兔子"等很多可能,很难准确预测

    此外,鉴于训练数据中说话人相似度差异较大,我们提出为训练样本标注说话人相似度类别。该方法避免了对训练数据的过滤,同时在推理阶段通过无分类器引导(classifier-free guidance)倾向生成说话人高度相似的语音输出。

    方法

    我们考虑一个源语言的语音话语,将其表示为单声道波形X∈Rfs​⋅d,采样率为 fs=24kHz,时长为 d。类似地,其目标语言的翻译表示为 Y∈Rfs​⋅d。我们假设对 X 进行了填充,以确保 X 和 Y 拥有相同的时长。我们的目标是建模条件概率 P[Y∣X]。此外,我们增加了一个约束:在已知 X 的情况下对 Y 的建模应具有因果性,并且相对于源语音具有最小延迟,例如与人工同声传译员在实时翻译场景中所面临的约束相同。

    为了通过监督学习学习这一约束,目标语音 Y 本身必须构建为满足因果性约束。我们首先假设 Y 满足这一约束,并介绍如何对其分布进行建模。随后,我们引入一个信息论准则,用以验证 Y 相对于 X 是否具有因果性并进一步将一个非因果的翻译转换为一个因果的翻译

    模型

    以 Moshi框架为基础,对从神经音频编解码器中获得的多个离散标记序列进行联合建模。

    Neural audio codec

    我们使用预先训练的因果和流式 Mimi 编解码器将 X 和 Y 编码为低帧率的离散标记序列。

    编码器将持续时间为 d 的输入波形转换为一个潜在向量 U∈RC×fr⋅d,其中 C是潜在空间的维度,帧率 fr​=12.5 Hz。随后,U被投影到其在一个包含NA​ 个条目的码本中的最近邻。该投影的残差接着被投影到另一个具有相同大小的码本中,如此重复,直到完成 Q 次投影。最后一次的残差被舍弃,解码器则被训练为从这些投影张量的总和中重构原始输入波形。

    在语言建模任务中,我们关注的不是量化后的潜在向量及其残差,而是其在码本中投影对应的离散索引。我们将这些索引表示为 (At,q)∈{1,…,NA}fr⋅d×Q。在 Mimi 中,帧率为 fr=12.5 Hz,投影次数 Q 最多为 32,但我们实际使用不超过 16 个。

    第一层量化输出被训练用于复现来自 WavLM 自监督音频模型中获得的语义信息。我们将 At,1​ 称为语义标记(semantic tokens),而将 At,q≥2​ 称为声学标记(acoustic tokens)

    这些声学标记按从粗到细的层级排列:前几层承载最重要的音频信息,后续层则建模更精细的音频细节,从而确保感知上的平滑与自然性。

    Joint modeling of discrete audio tokens

    音频流的离散标记无法轻易地被压缩为一个具有合理基数和帧率的单一离散序列。因此,我们采用 RQ-Transformer在时间轴 t 和量化器轴 q上联合建模 At,q。

    该模型由一个大型的 时序 Transformer(Temporal Transformer) 组成,其运行帧率与编解码器相同,即 fr,并接收至今为止生成的所有标记作为输入,即所有 t≤fr的标记

    A0 被定义为指示生成开始的确定性标记。然后,较小规模的深度变换器在量化器轴上对标记 At,1,…,At,Q 进行自回归建模,例如,对于所有 t≤fr⋅d 和 q≤Q :

    At,0 也是一个特殊令牌,其目标是:

    我们进一步引入了2个时间步长的声学延迟,这意味着我们建模的是 τ(A)t,q而非直接的 At,q。

    0 为特殊标记。在使用编解码器解码音频之前,会移除延迟。

    生成“内心独白”(即与生成音频内容对齐的填充文本标记)有助于提升生成音频的质量和稳定性

    Translation as multistream modeling

    我们已经介绍了方程(1)和(2)中的 RQ-Transformer 如何实现对多路离散标记流的联合建模。我们将该框架改编用于联合语音到语音与语音到文本的同步翻译任务。具体做法是将目标译文 Y 的音频标记 AY 与源语音 X的标记 AX 在量化器维度 q 上进行拼接,即:

    Hibiki 还预测一个文本流 Wt​,对应于输出 Y 的转录文本,并在词与词之间加入足够的填充以保证其与音频保持对齐。需要注意的是,与以往多任务翻译工作不同,Hibiki 在推理阶段主动利用了这一能力。这里我们用 Wt表示文本流,其基数为 NW​,且帧率与音频流相同,均为 fr​。

    Alignment and synthetic interpretation data

    我们假设对 (X,Y) 尊重同声传译的限制。 我们现在引入一个无监督的标准来估计和执行因果关系 源语句和目标语句之间的依赖关系。

     文本域比齐

    我们首先在文本域中形式化地表达这些约束。设 S=(S1,…,Sn)表示源语句 X中的词序列,T=(T1,…,Tm) 表示目标语句 Y 中的词序列。

    理想对齐(Ideal alignment):我们希望定义一个理想的对齐序列 (ajideal​)∈{1,…,n}m,其中 ajideal​ 表示第 j个目标词 Tj 在生成前应等待的源词 Si​ 的索引,以最小化对 Tj​ 的不确定性。

    若训练使用的对齐比 aideal 激进(即目标词提前生成),则模型在推理时可能出现幻觉现象(hallucination);而若对齐更保守(即目标词延后生成),则模型依然保持因果性,但会引入额外的延迟

    上下文对齐(Contextual alignment)

    我们引入一个标准来估计  aideal  。我们将其表示为条件对数似然:

    我们预期 logpj,i​ 随着 i 的增加而上升,因为更多的上下文信息通常更有利于生成正确的翻译。我们的假设是,对于某个目标词 Tj​,增量 δj,i=log⁡(pj,i)−log⁡(pj,i−1) i=aj​ 时达到最大值。也就是说,j个目标词的生成在该位置获得了最大的上下文收益

    为估计 log⁡(pj,i),我们使用现成的文本翻译语言模型 MADLAD-3B,将其输入截断为前 i 个源词,并计算预测第 j个目标词的对数概率log(p^​j,i)。据此,我们定义了一种上下文对齐方法,用以估算每个目标词最优的等待位置,并以图 3 的形式加以示意。

    图3:我们使用一个预训练的文本翻译模型,计算目标词 “into” 在不同输入截断条件下的对数似然(log-likelihood)。当对应的源词 “en” 出现在输入中时,我们观察到“into”的对数似然显著上升(详见公式(6))。这表明该源词提供了关键的上下文信息,从而支持了我们对最优对齐点的判定方法。

     音频域对齐

    给定一对语音对齐样本 (X,Y),我们使用 Whisper 模型对其进行转录并提取时间戳,然后应用公式(6)计算对齐位置。如果目标语句 Y 中第 j 个词的时间戳在源语句 X 中第 ajctx​ 个词之后,则认为该对齐 ( ajctx​ ) 是被遵守的。

    为了降低对齐错误的影响,我们要求目标语音 Y 相比上下文对齐结果至少滞后 2 秒;同时,我们会排除局部延迟中高于滑动窗口(5 个词)平均延迟 25% 的“尖峰”异常【某个词的时间延迟相对于其上下文明显偏高,高出周围词平均延迟的 25% 以上】。

    静音插入(Silence insertion)

    若 Y 不满足对齐要求,可通过在目标词前插入适量静音段来调整其时序,如图 1 所示。然而该方法存在两点限制:

    1. 当时间戳不准确或词之间没有自然停顿时,静音插入可能造成生硬的语音切断;
    2. 调整后的 Y 可能相对理想对齐严重滞后,例如当 Y的语速慢于 X 时。

    该方法用于语音翻译训练阶段的样本对齐。

    对齐感知的语音合成(Alignment-aware TTS)

    为了获得更加自然的对齐语音数据,我们使用具备硬性与软性位置控制能力的 TTS 模型对 Y 进行(重新)合成,同时保留对说话人风格的准确建模。这种方法不仅可以生成对齐更好的训练数据,还可提升词错误率(WER)和说话人相似度。

    我们训练一个 TTS 模型,其输出同时包括音频和与之同步的文本序列,并在输入中加入说话人条件。文本流被强制与目标文本完全一致,模型仅允许插入填充标记。音频输出相对于文本是滞后的,以便其内容受文本控制,不论是内容还是时间戳。

    当 TTS 提前于对齐点 actx 时,填充标记会被强制插入以延迟下一个词的生成;当 TTS 滞后于目标时,会在填充标记的 logits 上施加惩罚,惩罚值随着滞后时间从 1 秒增加到 2 秒时线性从 0 增加到 -2。这样能平滑提升语速,从而追上源语音的节奏。

    我们对每个输入生成 6 到 8 个候选样本,优先根据词错误率选出最佳结果,其次考虑说话人相似度。该方法仅应用于语音翻译微调数据集的构建。

    声音迁移(Voice Transfer)

    改进语音迁移数据:在训练带有声音迁移功能的语音翻译模型时,通常采用同一说话人的合成配对序列进行监督训练。然而,图 4 显示,该数据集中源语音和目标语音的说话人相似度(以说话人嵌入的余弦相似度衡量)平均仅为 0.23,相当低。作为参考,当前最先进的跨语种声音迁移系统的平均说话人相似度约为 0.40。因此,我们使用对齐感知的 TTS 重新生成了 CVSS-T 数据,这使得迁移语音可以更好地保留说话人特征。如图 4 所示,重新合成后的 CVSS-T 数据的平均说话人相似度提升至 0.47。尽管如此,我们的训练数据混合了合成数据与重新合成的 CVSS-T,整体相似度仍分布较广泛,其中仍有大量样本低于 0.40。

    条件训练(Conditional Training)如果直接筛选出说话人相似度高的数据用于训练,确实可以提高声音迁移效果,但会导致训练样本显著减少,从而可能损害翻译质量。例如,若仅保留说话人相似度大于 0.40 的样本,将导致 训练数据减少约 45%。因此我们采用条件训练(conditional training),在训练过程中告知生成模型每个样本在声音迁移方面的可靠性。我们为每个训练样本打上一个离散的“声音迁移评分”,其标签来自以下集合:

    { very_bad, bad, neutral, good, very_good }
    

    评分依据是说话人相似度的分位数划分,每个评分标签对应一个可学习的嵌入(embedding),在模型的每个时间步加入输入中。值得注意的是,这些分位点是在合成数据和 CVSS-T 数据合并前计算的,以确保模型学习的是实际的说话人相似度,而不是将某标签“误绑定”到某特定数据集。在推理阶段,我们始终传入 “very_good” 标签,以期生成具有良好说话人保持能力的语音。

    无分类器引导(Classifier-Free Guidance)我们采用**无分类器引导(classifier-free guidance)**来增强条件训练的效果。具体做法是:分别使用 very_goodvery_bad 条件下计算输出 logits,然后结合两者以调整采样过程,从而增强模型在推理时对说话人风格的控制能力。

    这与实时推理兼容,因为它能以批大小为 2 同时生成两组 logits。结果表明,这种方法能显著提升语音转换效果。

    Experiments

    训练策略

    通过以下步骤训练一个法语-英语的语音翻译系统:

    文本预训练。 我们首先在多语言的纯文本数据上,从头开始预训练 Temporal Transformer,采用下一个词预测任务

    音频预训练。 在预训练好的文本模型基础上,使用非平行的法语和英语数据,在单流设置下进行音频预训练

    语音翻译训练。 我们构建了一个约包含 4 万小时法语和英语语音的翻译数据集。首先从一批富有表现力的法语音频中提取约 230 万条单说话人的语音片段,每段时长约 60 秒。我们使用 Whisper的 large-v3 模型对这些片段进行转录,并借助 PySBD将转录文本分句,然后使用 MADLAD-3B分别翻译每个句子,最后重新拼接成英文翻译文本。我们利用 TTS 系统合成语音,条件是原始法语说话人的身份(使用一段 10 秒的语音)。我们应用静音插入技术,以获得同声传译的语音对。

    我们进行基于说话人相似度的条件训练,并对源语音频施加噪声增强。在每对训练数据中,我们在源语音流中语音结束后首帧加入一个特殊的输入 EOS 标记,在文本流中也加入另一个特殊 EOS 标记,指示模型生成语音的结束。

    语音翻译微调。 我们使用引入的对齐感知 TTS 技术,构建了一个包含长句式的合成数据集,并改进了 CVSS-T/train 数据集,具有自然停顿和较高的说话人相似度,总计约 900 小时。

    Hibiki-M 的训练。 其训练流程与 Hibiki 相同,先进行文本和音频预训练。在语音翻译训练阶段,通过软蒸馏从 Hibiki 获得知识,再进行相同的微调步骤(不再进行蒸馏)。

    推理:

    我们使用流式编解码器对音频进行编码,并将生成的 token 输入 Hibiki,同时解码输出 token 以获得流式翻译。在输入结束时,我们向模型发送一个 EOS(结束)标记,并持续采样,直到模型自行生成一个 EOS。推理参数通过对 Audio-NTREX 的保留 8% 数据和 CVSS-C 的验证集分别进行交叉验证来确定。对于 Audio-NTREX,最优参数为 γ = 3.0,温度为 0.8,audio token 的 top-k 为 250,text token 的 top-k 为 50。在 CVSS 上,除了对 text token 使用温度为 0.1 的采样外,其余配置相同。我们推测,较低的文本采样温度通常有助于提升翻译质量,但可能导致模型过早生成 EOS 标记

    Results

    表 1: 与离线基线系统的对比结果。我们还报告了一个闭源流式模型(*)的性能,因为它采用了相同的评估协议。

    表 1 将 Hibiki 与在翻译时可以访问完整源音频的离线基线模型进行了比较。尽管 Hibiki 进行的是同声传译,但它的表现优于所有模型,包括 StreamSpeech 的离线版本。表 2 将 Hibiki 与可用的同声传译基线模型进行了对比。在短格式设置中,我们的模型优于 StreamSpeech 和 Seamless,但平均延迟时间增加了 0.7 秒。长格式数据集的挑战更大,因为 StreamSpeech 无法生成清晰易懂的翻译。Hibiki 的表现优于 Seamless,但延迟时间平均高出 0.8 秒。

    音频保真度。

    如表 2 所示,关于说话人相似度的客观评估结果表明,Hibiki 在语音转换方面显著优于 Seamless(我们未评估 StreamSpeech,因为它不执行语音转换)。表 3 中的人类评估结果进一步验证了这一点,并显示 Hibiki 在音质和自然度方面远高于 Seamless,接近专业人工口译音频的真实水平。

    这意味着 Hibiki 不仅能够生成高质量的音频,还能在语流中插入流畅且自然的停顿。

    消融实验:对齐策略。
    我们将所提出的上下文对齐方法与其他方案进行比较。表 4 显示,在训练时对目标语音不施加延迟会导致翻译质量非常低,这是可以预期的,因为模型缺乏足够的上下文来生成翻译。为训练样本添加延迟能够提升 ASR-BLEU 分数,其中 10 秒的延迟表现为一个合理的选择;但平均延迟(以 LAAL 表示)比使用上下文对齐差得多,因为模型无法根据上下文自适应调整生成节奏。“句子对齐”作为常量延迟与上下文对齐之间的折中方案,将每个输出句子的起始时间对齐到相应源语句子的结束时间。这种做法提高了翻译质量,但延迟反而更严重。

    总体而言,上下文对齐在翻译质量与延迟之间提供了最佳平衡。


    消融实验:无分类器引导(Classifier-free guidance)。
    表 5 显示,使用“very good”标签时,说话人相似度为 0.42,与 Seamless(0.43)相当。采用无分类器引导(γ = 3.0)可以显著提升说话人相似度,同时不会明显损害翻译质量。但如果权重设得过高,模型性能会下降,表现为生成的语音不可理解。

    附录中有趣地展示了:将 γ 增大到极端值时,会导致生成的语音出现夸张的法语口音(即我们的实验中使用的源语言),我们认为这是由于用于标注数据的说话人模型存在偏差所致。


    消融实验:通用消融。
    同时预测文本 token 如何作为语音生成的框架。表 4 验证了这一点:将 Hibiki 作为单模态模型训练(即不预测文本输出),会导致性能大幅下降;同样地,从一个预训练文本语言模型出发,直接进行语音到语音翻译(S2ST)训练,效果也很差。

    推理能力

    批量推理。Hibiki 的推理采用恒定帧率下的温度采样,这使得流式的无分类器引导和多个语音源的并行处理变得非常简单。这一点不同于 Seamless 和 StreamSpeech,它们的推理策略更复杂,需对每个序列做出动态且不规则的决策,因而难以批量处理。图 5 显示,即便同时处理 320 条语音序列(或在无分类器引导下处理 160 条),Hibiki 在 H100 上仍能保持快于实时的推理速度。

    端侧推理。我们蒸馏得到的 Hibiki-M 在短文本和长文本翻译任务上都能与 Seamless 相媲美,如表 2 所示。我们将其在长音频上的较低说话人相似度归因于其建模的量化器数量较少(8 个而非 16 个),这使得音频比特率降低了一半。图 6 展示了 Hibiki-M 在 iPhone 16 Pro 上的推理轨迹。即使使用支持无分类器引导所需的批量大小为 2,Hibiki-M 在一分钟的推理过程中仍能保持快于实时的速度。若使用滑动窗口注意力对 Hibiki-M 进行训练,还可进一步提升其实时性能。


    局限性

    本研究仅聚焦于一个翻译任务(法语到英语),若扩展到更多语言,可能需要借助 MADLAD 这类大规模多语言模型,但这也意味着需为更多语言训练相应的 TTS 系统。此外,虽然 Hibiki 在与 CVSS-C 的真实目标对比时能达到 35.5 的 ASR-BLEU 分数,但若将其输出与 MADLAD 的文本翻译对比,则可达到 47.9 的 ASR-BLEU。这表明 Hibiki 非常擅长生成与 MADLAD 类似的翻译结果;若使用更优或更丰富的伪目标(pseudo-target)对其进行训练,Hibiki 有望进一步提升相对于真实目标的翻译质量。

    Kyutai’s STT and TTS:Delayed Streams Modeling framework

    关于Kyutai:Kyutai 是一家位于法国巴黎的非营利性人工智能研究实验室,成立于 2023 年 11 月。该实验室致力于推动人工智能的开放研究,特别关注多模态大模型的开发与创新算法的研究,旨在提升 AI 的能力、可靠性和效率,并促进其民主化。

    延迟流建模 (DSM) :一种用于解决多种流式 X 到 Y 任务的技术(其中 X 和 Y 可以是语音或文本),它将我们在 MoshiHibiki 中采用的方法形式化了。

    Kyutai STT

    Kyutai STT 是一种流式语音转文本模型架构,在延迟与准确率之间实现了无与伦比的平衡,非常适合交互式应用。它支持批处理,可在单个 GPU 上处理数百条并发对话。发布了两个模型:

    • kyutai/stt-1b-en_fr:一个低延迟模型,支持英语和法语,并内置语义级语音活动检测器
    • kyutai/stt-2.6b-en:一个更大的仅支持英语的模型,经过优化以实现尽可能高的准确率

    Streaming and accurate: 在英文测评集上的WER指标

    Word error rate, lower is better.

    Kyutai STT 是一个流式模型,这意味着它在接收音频的同时实时转录,而不是假设音频在开始处理前已全部可用。这使其非常适合诸如 Unmute [Make any LLM listen and speak using Kyutai’s speech-to-text and text-to-speech.] 之类的实时应用。

    它输出格式良好的转录文本,包含标点符号,同时还提供词级时间戳

    在准确性方面,它的表现仍可与那些能够一次性访问完整音频的最先进非流式模型相媲美

    语义语音活动检测器

    对于像 Unmute [Make any LLM listen and speak using Kyutai’s speech-to-text and text-to-speech.] 这样基于串联式语音对话的应用程序,需要一种方式来判断用户是否已经说完,以便生成回应。最常见的方法是使用一个独立的语音活动检测(VAD)模型,判断用户是否在说话,并在用户说完之后等待一个固定的时间。但在实际应用中,不可能找到一个适用于所有情况的等待时间。人们在说话时经常会出现长时间停顿,这会导致这种朴素方法出现误判。

    为了解决这个问题,Kyutai STT 不仅预测文本,还预测用户是否已经说完话的概率。对于停顿的判断延迟会根据用户说话的内容和语调自适应调整。

    低延迟

    kyutai/stt-1b-en_fr延迟设定为 500 毫秒,也就是说,每个词会在说出后约 500 毫秒被转录。而 kyutai/stt-2.6b-en 的延迟为 2.5 秒

    在 Unmute [Make any LLM listen and speak using Kyutai’s speech-to-text and text-to-speech.]中,我们使用一种称为 “flush trick”(刷新技巧)的方法来进一步降低响应延迟。当语音活动检测器预测用户已经说完时,我们还需再等 500 毫秒(即 STT 模型的延迟),以确保不会截断转录的结尾部分。

    为了减少这段延迟,我们利用了语音转文本服务器“比实时更快”的处理能力。当检测到说话结束时,我们请求 STT 服务器尽可能快地处理此前已发送的音频。服务器的运行速度约为实时的 4 倍,因此可以在大约 125 毫秒内处理这段 500 毫秒的音频(即 500ms ÷ 4 = 125ms)。通过这种方式,我们“扭曲时间”,只需等待这 125 毫秒,即可确保所有内容已被转录。

    高吞吐量

    Kyutai STT 非常适合在生产环境中部署:在一块 H100 GPU 上,它可以同时转录 400 路实时音频流。这得益于其采用的延迟流建模架构(见下文),该架构允许我们在无需任何额外“粘合代码”的情况下,以大批量运行模型,并实现流式处理。

    相比之下,将 Whisper 改造成流式模型需要一个完全独立的研究项目——Whisper-Streaming。该系统会反复在最近几秒的音频上运行 Whisper,并将重叠的转录结果拼接在一起。

    Whisper-Streaming 在技术上令人印象深刻,但它不支持批处理,这导致吞吐量大大降低。若目标延迟更低,其吞吐量会进一步下降,因为需要更频繁地重新运行 Whisper。

    延迟流建模

    Kyutai STT 的主要创新是一种在 Kyutai 开发的技术,称为延迟流建模(delayed streams modeling),最早在 Moshi 项目中率先使用了这一方法。

    传统的语音转文本方法通常是将整段音频一次性输入模型,并由模型逐步(自回归地)生成文本。例如,Whisper 就是这样做的,它使用的是编码器-解码器结构的 Transformer 模型。

    在 Kyutai STT 中,将数据表示为时间对齐的文本流和音频流。本质上,音频和文本是“并列”存在的,而不是一个接着另一个。文本流会进行填充,以确保文本的时间与音频对齐。只是将文本流延迟了几个帧,以便语音转文本模型能够进行一定程度的前瞻。

    使用这种表示方式的文本-音频数据来训练 Kyutai STT,教它同时建模音频流和文本流。在推理阶段,我们保持音频流固定,实时输入接收到的音频,利用模型预测文本流

    这种方法的另一个巧妙之处在于其对称性。我们可以通过延迟音频流而非文本流,并保持文本固定(教师强制),来实现文本到语音的转换,进而预测音频为使模型能够预测填充符号以对齐文本流和音频流的时间,需要一些技巧

    Kyutai TTS

    Kyutai 文本到语音(TTS)最初是我们在 Moshi 开发过程中使用的内部工具。作为我们对开放科学的承诺的一部分,我们现在向公众发布了改进版的 TTS:kyutai/tts-1.6b-en_fr,一个拥有 16 亿参数的模型。该模型包含多项创新,使其特别适合实时使用。

    State of the art

    Kyutai TTS 在文本到语音领域树立了新的技术水平。词错误率(WER)衡量 TTS 未能准确遵循文本脚本的频率。说话人相似度则是评估在语音克隆时生成音频与原始样本声音相似程度的指标。我们在 NTREX 数据集中,选取了 15 篇英文和 15 篇法文新闻文章,对 Kyutai TTS 与其他模型进行了对比。除 Kyutai TTS 和 ElevenLabs 外,所有模型均按句子逐句生成,因为我们观察到这样能获得最佳效果。

    适合大语言模型(LLM)

    Kyutai TTS 无需提前获取完整文本,从接收到第一个文本标记到生成第一段音频的延迟为 220 毫秒。在 Unmute.sh 部署环境中,我们通过批处理同时处理最多 32 个请求,使用 L40S GPU 测得的延迟约为 350 毫秒。

    其他被描述为流式的 TTS 模型仅在音频上实现流式处理,仍然需要提前知道完整文本。

    Kyutai TTS 是首个同时支持文本流式处理的文本到语音模型。你可以边由大语言模型生成文本边输入,Kyutai TTS 会即时开始处理,从而实现超低延迟。这在大语言模型生成耗时较长的情况下尤为有用,比如资源受限环境或生成长文本段落时。

    文本流式处理得益于下文详细介绍的延迟流建模技术。

    语音克隆

    为了指定语音,我们使用一段 10 秒的音频样本。TTS 能够匹配源音频的声音、语调、说话习惯和录音质量。

    长时段生成

    大多数基于 Transformer 的 TTS 模型针对生成少于 30 秒的音频进行了优化,通常不支持更长时间的生成,或者在处理较长音频时表现不佳。Kyutai TTS 在生成更长时段音频方面没有任何问题。

    词级时间戳

    除了音频本身,Kyutai TTS 还会输出生成词语的精确时间戳。这对于为 TTS 提供实时字幕非常有用。

    延迟流建模

    Kyutai TTS 独特的能力,如文本流式处理、批处理和时间戳功能,均得益于 Kyutai 开发的一项技术——延迟流建模,该技术最早由我们在 Moshi 项目中开创。

    传统使用语言模型进行文本到语音转换的方法,是基于输入文本与音频的分词输出拼接在一起进行训练:

    这意味着这些模型是流式的,但仅限于音频:在已知完整文本的情况下,它们开始生成音频,并允许你在生成过程中访问部分结果。然而,完整文本仍需提前获知。

    而在 Kyutai TTS 中,我们将问题建模为时间对齐的文本流和音频流。本质上,音频和文本是“并列”存在的,而不是一个接着另一个。我们只是将音频流延迟了几个帧,以便文本到语音模型能够进行一定程度的前瞻:

    这意味着一旦知道了前几个文本标记,无论最终文本多长,我们都可以开始流式输出音频。

    在输入端,我们接收到一个没有时间信息的词语流,但模型需要使用填充符使文本流与音频对齐。这就是动作流(action stream)的作用:当它预测到 [word] 时,表示“我已完成当前词的发音,请给我下一个词”,此时我们将下一个词输入到文本流中

    StreamSpeech:“All in One”流式语音模型,支持语音识别、翻译、合成

    两种主要结构:编码器-解码器框架(Transformer 及其变体)和多任务框架。 数据难题:数据增强、预训练、知识提炼和多语言建模。 应用:实时性、分段、命名实体、性别偏见和代码转换

     2024年6月,中国科学院计算技术研究所自然语言处理团队发布“All in One”流式语音模型——StreamSpeech。该模型可以在用户说话的同时,以端到端的方式实现语音识别、语音翻译、语音合成的多任务实时处理,延时低至320毫秒。StreamSpeech是能够以端到端方式同时完成多项离线和流式语音任务的开源模型。StreamSpeech可以部署在手机、耳机、AR眼镜等设备,助力国际会议、跨国旅行等场景下的低延时跨语言交流需求。

     StreamSpeech采用先进的two-pass架构,集成了流式语音编码器、实时文本解码器和同步的文本到语音合成模块。通过引入连接时序分类(Connectionist temporal classification,CTC)对齐机制,StreamSpeech能够控制模型在用户说话的同时理解并生成语音识别、翻译和合成结果。StreamSpeech在离线和实时语音到语音翻译上超过Meta的UnitY架构,在开源数据集上取得当前的最佳性能。此外,StreamSpeech还能在翻译过程中生成中间文本结果为用户提供“边听边看”的流畅体验

    StreamSpeech 采用两遍架构,首先将源语音转换为目标文本隐藏状态(自回归语音到文本翻译,AR-S2TT),然后通过非自回归文本到单元生成生成目标语音。引入源/目标/单元 CTC 解码器,通过语音识别 (ASR)非自回归语音到文本翻译 (NAR-S2TT)语音到单元翻译 (S2UT) 等多个任务学习对齐,从而指导 StreamSpeech 何时开始识别、翻译和合成。

    • 1. StreamSpeech 在离线和同步语音到语音翻译方面都实现了最先进的性能 。
    • 2. StreamSpeech 可以通过 “All in One”无缝模型执行流式 ASR、同步语音到文本翻译和同步语音到语音翻译。
    • 3. StreamSpeech 可以在同声翻译过程中呈现中间结果(即 ASR 或翻译结果) ,提供更全面的低延迟通信体验。
    图 2: StreamSpeech 采用两遍架构,首先将源语音转换为目标文本隐藏状态 Dtext
     (自回归语音到文本翻译,AR-S2TT),然后通过非自回归文本到单元生成生成目标语音。引入源/目标/单元 CTC 解码器,通过语音识别 (ASR)、非自回归语音到文本翻译 (NAR-S2TT) 和语音到单元翻译 (S2UT) 等多个任务学习对齐,从而指导 StreamSpeech 何时开始识别、翻译和合成。

    StreamSpeech:

    Architecture

    StreamSpeech 由三部分组成:流式语音编码器、同步文本解码器和同步文本到单元生成模块。引入多个 CTC 解码器,通过辅助任务学习对齐,并据此指导策略。

    流式语音编码器: Conformer 架构通过堆叠注意力模块和卷积模块。在语音建模方面展现出显著优势,但在流式语音输入建模方面却存在困难,这主要是由于双向自注意力和卷积运算涉及整个序列的感受野。为此,我们提出了基于块的 Conformer 架构,旨在赋予 Conformer 架构编码流式输入的能力,同时保留局部块内的双向编码

    图 3 展示了基于块(chunk-based)的 Conformer 架构。首先,原始语音输入会被转换为语音特征(在我们的工作中使用的是滤波器组特征,每个语音特征通常对应约 40 毫秒的时长。基于块的 Conformer 会将流式语音划分为若干个块(chunk),每个块包含 C 个语音特征,其中 C 是一个控制块大小的超参数。在基于块的 Conformer 中,自注意力(self-attention)和卷积操作在块内部是双向的,在块之间则是单向的,从而能够处理流式输入。

    对于基于块的自注意力机制,特征 xi​ 会关注那些位于相同块内前面块内的特征 xj,其计算方式如下:

    其中,Attn(xi,xj)是标准的多头注意力机制,而⌈⋅⌉ 表示向上取整操作。

    对于基于块的卷积(chunk-based convolution),卷积操作的上界会被截断在当前块的边界处。即当使用核大小为 k 的卷积时,其计算方式为:

    在实现上,基于块的卷积可以通过掩码操作(屏蔽掉那些被截断的位置)并行计算。通过流式编码器,计算源语音的隐藏状态,记为 H=(h1,⋯,h|H|) 。基于块的 Conformer 使得流式语音编码器不仅能够满足流式编码的需求,还能对语音进行局部双向编码。

    H≤g(i)​ 的语义范围:

    • 包括了从起始到第 g(i) 帧为止的语音输入(多个 chunk 累积的结果);
    • 每一个帧的表示都融合了:
      • chunk 内的 双向上下文(强表征)
      • chunk 之间的 单向依赖(因果性)

    同步文本解码器: 在流式编码器之后,文本解码器通过关注源语音隐藏状态 H ,同时生成目标文本 Y 。为了实现这一点,StreamSpeech 需要一个策略来决定何时生成每个目标标记(即,解码器可以关注多少个语音状态)。合理的策略应该确保模型等到识别源语音中的源文本(读取),然后再生成相应的目标文本(写入)。

    Simultaneous Text Decoder(同步文本解码器)是在流式语音编码器之后,边接收源语音隐藏状态 H边生成目标文本 Y。为实现低延迟输出,需要一个策略(policy)来判断:

    • 何时 READ(读取更多源语音)
    • 何时 WRITE(生成目标 token)

    核心做法:通过 CTC 对齐引导策略

    1. 引入两个 CTC 解码器

    • Source CTC Decoder:对齐源语音 → 源文本(ASR)
    • Target CTC Decoder:对齐源语音 → 目标文本(NAR-S2TT)

    分别计算两个任务的 CTC Loss:

    构建 READ / WRITE 策略函数。用上面两个 CTC 的输出计算当前语音段 X≤j对应的:

    • 已识别的源 token 数 Njasr
    • 已预测的目标 token 数 Njnar-s2tt

    然后定义策略函数 g(i),表示在什么时间步 j可以生成目标 token yi

    StreamSpeech 在接收到语音 X≤g⁢(i) 后自回归生成目标标记 yi 

    READ 检测(左条件):ASR 模块识别出一个新的源 token,说明我们“听”到了新语义,应该考虑进入写入阶段。

    WRITE 准备(右条件):非自回归模块预测当前语音内容足以包含第 iii 个目标 token,我们可以放心翻译了。

    尽管 NAR-S2TT 用来预测 token 数以对齐,但最终目标 token yi 是通过 AR-S2TT 来生成的,以提升翻译质量:

    基于由 ASR 和 NAR-S2TT 派生的对齐策略指导的策略,同步文本解码器在接收到语音 X≤g⁢(i) 后生成 yi ,并通过自回归语音转文本翻译(AR-S2TT, X→Y )的交叉熵损失进行优化

    Non-autoregressive Text-to-Unit Generation:为了同步生成当前目标文本所对应的语音单位(unit),StreamSpeech 采用了一种 非自回归的文本到单位(T2U)架构(Gu et al., 2018),该架构由一个 T2U 编码器 和一个 单位 CTC 解码器 组成。

    • T2U 编码器的输入是来自同步文本解码器生成的隐藏状态 Dtext​。
    • 鉴于音频单位序列 U 通常比文本序列 Y 更长,我们将 T2U 编码器的输出上采样 r 倍作为解码器输入

     it⁢h 输入对应于 D⌈i/r⌉t⁢e⁢x⁢t 。然后,单元 CTC 解码器通过关注位于 D⌈i/r⌉t⁢e⁢x⁢t 之前的 T2U 编码器输出,以非自回归的方式生成单元序列 U 。正式地,单元 CTC 解码器 CTCDecU 的输出 Du⁢n⁢i⁢t 计算如下:

    NAR T2U 生成通过 CTC 损失在语音到单元翻译任务(S2UT, S→U )上进行了优化:

    最终,使用一个基于单位的 HiFi-GAN 声码器(Kong et al., 2020)来根据生成的单位序列合成目标语音。注意,这个声码器是预训练的并被冻结,不参与 StreamSpeech 的联合训练。

    训练(Training):

    StreamSpeech 中涉及的所有任务都是通过**多任务学习(multi-task learning)端到端(end-to-end)**的方式联合优化的。总体训练目标L 包括以下几个任务的损失:

    • S2UT(语音到单位翻译)
    • AR-S2TT(自回归语音到文本翻译)
    • ASR(语音识别)
    • NAR-S2TT(非自回归语音到文本翻译)

    多任务学习能够有效地将同步策略的学习翻译能力的学习整合进一个统一框架中。此外,像 ASR 和 AR-S2TT 等辅助任务生成的高质量中间结果,也可以在推理过程中展示给用户,作为补充参考内容。

    多块训练(Multi-chunk Training):在推理过程中,Simul-S2ST(流式语音到语音翻译)可能会面临不同的延迟需求。为每种延迟分别训练一个模型代价很高。为了解决这个问题,我们提出了 多块训练(multi-chunk training),以提升 StreamSpeech 在不同延迟水平下的性能表现。

    在多块训练中:

    • 流式语音编码器的块大小 C不是固定的
    • 而是从 U(1,∣X∣) 的均匀分布中随机采样,其中 ∣X∣ 表示整个输入语音序列的长度;
    • 特殊情况C=∣X∣ 即对应于离线 S2ST设置。

    通过多块训练,单个 StreamSpeech 模型就能适应不同的延迟需求。

    Inference:

    在推理过程中,StreamSpeech 会基于设定的块大小 C 来处理流式语音输入,其中每个语音特征通常对应 40 毫秒的音频时长(例如,C=8 表示每 320 毫秒处理一次语音输入)。

    然后,StreamSpeech 会使用 ASR 和 NAR-S2TT 的 CTC 解码器对当前接收到的语音 X^ 进行解码,分别生成源语言 token A^ 和目标语言 token Y^。

    当满足以下两个条件时:

    1. 识别出了新的源 token(即 ∣A^∣>∣A∣)
    2. 当前语音中预测的目标 token 数超过已生成的目标 token(即 ∣Y^∣>∣Y∣)

    模型将会进入 WRITE 阶段

    • 更新源文本 A
    • 持续自回归地生成新的目标 token,直到达到 Y^ 的数量上限或遇到 <eos> 结束符
    • 根据目标文本生成对应的单位序列 U
    • 使用声码器合成出目标语音 S

    否则,如果上述条件不满足,模型会进入 READ 阶段,等待接收下一个大小为 C 的语音块。

    由于引入了多块训练(multi-chunk training),StreamSpeech 可以通过动态调整块大小 C 来控制推理延迟。其中:

    • 较小的 C 意味着更低的延迟
    • 较大的 C 则带来更完整的上下文,提升质量。

    实验

    预处理
    源语音转换为 16000Hz,将目标语音生成为 22050Hz。对于源语音,我们计算 80 维的 Mel 滤波器组特征,并进行全局的倒谱均值-方差归一化,每个语音特征对应 40 毫秒的时长。对于目标语音,通过 mHuBERT3提取离散单元,并使用预训练的基于单元的 HiFi-GAN 语音生成器进行语音合成。对于源文本和目标文本,我们分别使用 SentencePiece生成大小为 6000 的 unigram 词汇表。

    离线语音到语音翻译(Offline S2ST):StreamSpeech 采用 双阶段(two-pass)架构,相比使用单阶段(one-pass)架构的 S2UTTranslatotron,在性能上取得了显著提升。多任务学习(multi-task learning)不仅能指导策略学习,还能为翻译提供中间监督信号,从而进一步提升了离线 S2ST 的性能。

    StreamSpeech 推理加速效果
    为评估 StreamSpeech 的推理效率,表 2 报告了其相对于 UnitY 的加速比(speedup)。
    在该双阶段架构中,StreamSpeech:

    • 第一阶段翻译使用自回归结构(更适合处理复杂语言重排);
    • 第二阶段语音合成使用非自回归结构(尽管序列较长,但几乎单调对齐,易于并行)。

    这种 先 AR 后 NAR 的两阶段架构,在保持翻译质量的同时,实现了 显著的推理速度提升

    Simul-S2ST(同步语音到语音翻译):

    在所有延迟设置下,StreamSpeech 的表现都优于 Wait-k,尤其是在低延迟条件下,BLEU 分数提升约 10 分

    Wait-k 策略是目前使用最广泛的同步策略,在同步文本到文本(T2TT)和语音到文本(S2TT)任务中表现良好。StreamSpeech 在同步语音到语音翻译中,不仅兼顾了延迟与质量,还通过对齐驱动策略实现了更自然的发声节奏,在多个基线之上取得了系统性提升。

    CosyVoice 3:语音合成领域迎来里程碑式突破

    CosyVoice 2 在语言覆盖范围、领域多样性、数据量和文本格式多样性方面存在明显局限性,在实现野外语音生成方面仍有较大改进空间。阿里巴巴团队全新发布的CosyVoice 3,以超越人类基线的自然度、覆盖 9 国语言 18 种方言的超强泛化能力,重新定义了「野外语音生成」的标准。

    摘要

    尽管 CosyVoice 2 在中文和英文广播场景中表现良好,但它在语言覆盖范围、领域多样性、数据规模以及文本格式多样性方面仍存在明显局限,距离实现真实环境中的语音生成还有较大提升空间。此外,针对语音生成模型的模型和数据的扩展规律,以及训练后的优化技术尚未被充分探索。

    为了解决上述问题,我们推出了 CosyVoice 3 —— 一款面向真实环境应用的大规模零样本语音生成模型,具备更广泛的语言覆盖和多样化的使用场景,在内容一致性、说话人相似度和韵律自然度等方面显著超越其前代产品 CosyVoice 2。

    我们的主要贡献如下:

    • 1)通过监督多任务训练开发的新型语音分词器用于改善韵律自然度,包括自动语音识别、语音情感识别、语言识别、音频事件检测和说话人分析
    • 2)一种适用于后期训练的新型可微分奖励模型[DiffRO],不仅适用于 CosyVoice 3,还适用于其他基于 LLM 的语音合成模型。
    • 3)数据集规模扩展:训练数据从万小时扩展到百万小时,涵盖 9 种语言和 18 种汉语方言,跨越多个领域和文本格式
    • 4)模型规模扩展:模型参数从 5 亿增加到 15 亿,由于更大的模型容量,在多语言基准测试中性能得到提升。这些进展显著推动了野外语音合成的发展。
    • 为应对真实世界中语音合成场景的多样性与泛化挑战,我们发布了面向零样本真实场景语音合成的评测基准集 CV3-Eval。该基准集基于 Common Voice、FLUERS、EmoBox 及网络爬取的真实音频数据构建,涵盖广泛的语言与方言、应用领域与环境、情绪与风格。

    技术方案

    图2:(a)监督式多任务训练的语音分词器 和(b)CosyVoice 3 的训练流程示意图。虚线框中的模块仅在训练阶段使用。语音分词器通过监督训练,涵盖自动语音识别(ASR)、语言识别(LID)、语音情感识别(SER)、音频事件检测(AED)以及说话人分析(SA)等任务。CFM 表示条件流匹配模型(Conditional Flow Matching model)。

     通过监督多任务训练实现语音分词器

    CosyVoice 3 的语音分词器基于 MinMo语音大模型[基于sensevoice-large的encoder],这是一种在多个语音任务中表现优异的大规模预训练语音理解模型。

    CosyVoice 2 将有限标量量化(FSQ)模块插入 SenseVoice-Large ASR 模型的编码器不同,CosyVoice 3 将 FSQ 模块插入到了 MinMo 模型的语音编码器【也是 SenseVoice-Large encoder,但重新进行了多任务训练】中。相比于 SenseVoice-Large ASR 模型,MinMo 是一款更为先进的多模态大语言模型(LLM),在超过140万小时的语音数据上进行了训练,在多种基准任务中展现出更优越且达到了SOTA水平的表现,包括口语对话、多语种语音识别、以及情感识别等任务。

    为了进一步增强语义信息的捕捉能力,我们在 MinMo 的训练数据中选取了约53万小时的数据子集,针对我们的语音分词器进行监督多任务学习,涵盖了多语种ASR、语言识别(LID)、语音情感识别(SER)、音频事件检测(AED)以及说话人分析(SA)等任务

    在训练阶段,如图2a所示,输入语音 X 首先经过 Voice Encoder1 【 SenseVoice-Large Encoder】得到中间表示 H,其中 Voice Encoder1 包含12个带旋转位置嵌入(RoPE)的Transformer模块。接着,中间表示H 被送入 FSQ 模块进行量化,量化后的表示再传递至 MinMo 的其余模块,包括 Voice Encoder2 和 MinMo LLM,用于预测对应文本标记的后验概率。

    Voice Encoder1、FSQ 模块中的低秩投影器、有限舍入操作(bounded round operation)以及索引计算模块共同构成了 CosyVoice 3 的语音分词器。我们的语音分词器的标记速率为 25 Hz,即每秒生成 25 个语音标记(speech tokens)。

    可微奖励优化的强化学习

    强化学习(RL)在提升生成语音质量方面是有效的,目前尚未建立一个通用适用于语音生成任务的强化学习方法论。与自然语言处理任务中的大语言模型(LLMs)不同,TTS 系统需要额外的下游条件流匹配(CFM)模块和声码器模型,将离散的语音标记转换为音频波形。这些下游模型带来了巨大的计算负担。更严重的是,经过下游处理后生成的语音通常表现出高度相似性,因此在训练奖励模型时,很难区分正反馈与负反馈

    为了解决这些问题,我们提出了可微奖励优化(DiffRO)方法,该方法直接优化语音标记,而非合成音频。DiffRO 首先在 ASR 训练数据上训练一个类似 ASR 的 Token2Text 模型,并将后验概率作为奖励。为了进一步简化训练策略,DiffRO 使用 Gumbel-Softmax 操作对大语言模型预测的标记进行采样,并通过反向传播直接优化语音标记,以最大化奖励分数,而无需传统的强化学习训练循环。

    Gumbel-Softmax 是一种用来在离散空间中实现可微分采样的技巧,常用于需要从分类分布中抽样但又想保持梯度可传播的场景,比如强化学习中的策略采样、生成模型中的词生成,以及如 DiffRO 中对离散语音 token 的优化。

    其中,µₜ 和 µ̃ₜ 分别表示第 t 个时间步的真实语音标记和其采样预测值。RASR 是基于类似 ASR 的 Token2Text 模型计算得到的奖励函数。由于 RASR(Y) 旨在鼓励 µ̃ 捕捉文本中的全部信息,因此它有助于 TTS 系统更清晰、准确地理解文本。因此,我们可以直接优化大语言模型(LLM),使其输出标记与 ASR 偏好对齐,并使用 Kullback-Leibler(KL)散度来防止模型偏离参考模型太远。与其他强化学习方法不同,我们在输出标记级的 logits 上计算 KL 散度,而非在序列级的后验概率上计算。

    除了 Token2Text 模型之外,DiffRO 还利用情感识别(SER)、MOS 评分预测、音频事件检测(AED)以及其他音频理解任务,用于多任务奖励(MTR)建模。MTR 机制可以帮助 TTS 系统根据指令控制语音属性Ai

    发音修复

    基于大语言模型的语音合成(TTS)系统主要采用基于BPE的文本分词器,输入为原始文本。与传统的基于音素的方法相比,这类系统在发音的可控性方面存在不足。具体来说,对于由多音字或训练数据中稀少或未出现的罕见词引起的错误发音,缺乏基于人工干预的稳健方法。
    为了实现一个在发音上具备有效可控性的工业级TTS系统,我们对CosyVoice 3进行了扩展,使其能够通过扩充分词器词汇表来建模混合的词和音素序列。为实现该目标,我们构建了一个辅助训练集,将中文单音字替换为拼音,将英文单音词用CMU发音词典中的音素替换,并将该辅助数据集加入基础训练集中。

    文本规范化的自我训练

    在文本分词之前,TTS系统通常通过文本规范化(TN)模块处理原始文本,将数字和特殊符号转换为其对应的口语化文本,这一过程依赖大量手工设计的规则;然而,手工规则在覆盖特殊符号方面面临持续挑战。
    我们探索利用大语言模型(LLM)执行文本规范化任务,从而构建更加统一的端到端TTS系统。
    以原始文本为输入,我们采用三种方式构建辅助训练集:
    1)通过内部基于规则的文本规范化模块处理原始文本,得到规范化文本,再通过CosyVoice 2合成音频。
    2)利用Qwen-Max模型进行文本规范化,然后对规范化文本通过CosyVoice 2合成音频。
    3)利用Qwen-Max对已有的文本-音频对中的文本进行逆向文本规范化,恢复为原始(未规范化)文本,将该原始文本与对应音频作为配对样本,直接加入基础训练集。
    我们验证了基于扩展训练集训练的新系统可以直接合成原始文本,同时在处理各种特殊符号时展现出更好的鲁棒性和覆盖能力。

    指导式语音生成

    为了提升CosyVoice 3的可控性和表现力,相较于CosyVoice 2,我们在基础训练集中融入了更多富有表现力的语音数据。高质量指令跟随数据的时长从1500小时扩展到5000小时,覆盖了更广泛的类型,包括情感、语速、声调、方言、口音及角色扮演。类型总数增加到100多种,如表1所示。
    与CosyVoice 2类似,CosyVoice 3也支持语言指令和细粒度指令。对于自然语言指令,在合成语音的输入文本前添加自然语言描述及特殊结束标记“<|endofprompt|>”
    对于细粒度指令支持在文本标记间插入声音爆发(vocal bursts)和声音特征标签以实现控制。例如,输入文本中的“[laughter]”与“[breath]”标记可分别用来生成明显的笑声和呼吸声。标签“<strong>XXX </strong> ”用于强调特定词语。

    说话人微调中的能力迁移

    将单语说话人转变为多语者:CosyVoice 3 相较于前代的显著提升之一是语言支持的扩展。为了使单语目标说话人能够说多种语言,我们构建了一个辅助训练数据集,包含来自随机选择说话人的高质量单语录音,覆盖所有支持的语言。每条语音的说话人ID和语言ID均通过自然语言指令进行指定。

    指令生成能力的迁移:通过对预训练模型进行说话人特定数据的微调,可以提升个别说话人生成语音的质量和表现力。我们构建了一个部分标注说话人ID的训练数据集,该数据集包含目标说话人的高质量数据以及预训练时使用的指令跟随数据集。在自然语言指令提示中,我们指定说话人提示和风格提示。例如,一个完整的指令提示可能是:“你是说话人A,请高兴地和我说话。”然而,部分数据条目可能缺少说话人ID或风格标签,此时在提示中对应字段留空。微调过程中,我们还会随机屏蔽说话人提示或风格提示,以增强模型的迁移能力。
    该方法确保了不同说话人间指令的全面覆盖,并有助于防止预训练模型在指令生成时发生灾难性遗忘。

    多语言数据处理流程


    相比中文和英文,获取其他语言的大规模高质量TTS数据更具挑战性。为应对这一挑战,我们主要从网络有声书、视频和播客中收集野外多语言音频数据。随后,实施多语言数据处理流程,产出质量充足的模型训练数据。该流程包括六个步骤:

    1. 语音检测与分段
    2. 降噪
    3. 自动语音识别(ASR)转录
    4. 标点调整
    5. 音量标准化
    6. 过滤异常音频-文本长度比例的数据

    语音检测与分段:原始数据依次通过说话人分离(speaker diarization)语音活动检测(VAD)音频事件检测模块处理,得到说话人级别且时长小于30秒的语音片段。该步骤虽采用内部模块,但同类开源方案也能实现类似效果。

    降噪:采用MossFormer2模型进行降噪。接着,根据语句起始和结束帧的能量水平,筛除因异常截断导致开头或结尾单词不完整的语句剩余语句去除开头和结尾的静音后保留用于后续处理。

    ASR转录:为获得足够可靠的文本转录,首先使用FasterWhisper Large-V3进行语言识别,然后分别使用多款开源ASR模型(包括Faster-Whisper Large-V3、NVIDIA NeMo Canary-1B、Meta FAIR seamlessM4T-V2-large)对语句进行转录。随后进行交叉验证,选取不同系统ASR结果间平均成对字错误率(WER)低于15%的转录结果

    标点调整:由于ASR生成文本中的标点可能不能准确反映对应音频的实际停顿,我们采用Montreal Forced Aligner计算词与词、句或短语间的时长,并根据预设阈值对标点进行增删(停顿时间≥300毫秒时添加逗号,≤50毫秒时移除表示停顿的标点,如逗号、分号、冒号、句号、问号和感叹号)。

    音量标准化:对音量进行简单直接的归一化处理,

    过滤异常音频-文本长度比例的语句:在完成上述所有处理步骤后,对每个生成的语音-文本对提取语音标记和文本标记,计算并排序语音标记长度与文本标记长度的语句级比例。
    我们丢弃长度比例最小的1%和最大的5%的语句,以过滤可能存在异常的情况,例如:音频很短且无有效人声但对应较长文本转录,或音频较长但仅包含目标语言的短语音片段,从而对应较短文本转录。

    Experimental Settings

    Training Data for Speech Tokenizer

    使用 53 万小时的监督多任务数据集,以标准化转录为标签,训练语音分词器,包括自动语音识别 (ASR)、语种识别 (LID)、语音情感识别 (SER)、音频事件检测 (AED) 和说话人分析 (SA)。训练数据详情如表 3 所示。多语言 ASR 训练数据包括中文、英语、日语、韩语、俄语、法语和德语。

    Scaling up Dataset Size and Model Size for CosyVoice 3

    在 CosyVoice 3 中,我们从多个角度扩展数据量。针对广泛使用的中英文数据,我们采用低成本数据生产流程与自训练数据构建相结合的方式,增强领域、风格、文本格式和稀有案例的多样性。在领域多样性方面,我们收集了电商、导航、金融、教育等多个领域的语音数据。在风格多样性方面,我们添加了对话、演讲、歌唱等多种语言在文本多样性方面,我们通过文本规范化 (TN) 和逆文本规范化 (ITN) 为同一段语音构建不同的文本格式,增强模型对各种文本格式的鲁棒性。此外,我们利用早期版本的 CosyVoice 3 策略性地自训练构建了大量的稀有案例,以提高合成的稳定性。在语言覆盖方面,我们在中英文数据集中新增了日语、俄语、法语、德语、西班牙语、韩语和意大利语等七种常用语言,数据覆盖比例如图 3a 所示。前期工作表明,监督式多任务语音分词器在一些新语言(例如 CosyVoice 3 中的西班牙语和意大利语)上表现良好。除了标准的常见方言发音外,我们还增加了对汉语口音和方言的覆盖范围,目前已支持 19 种常见口音或方言,数据占比如图 3b 所示。通过这些数据扩展,CosyVoice 3 的训练数据已达到百万小时,涵盖了日常生活中的大多数用户案例,并朝着自然界零样本语音生成的目标迈进。

    除了扩展数据集大小之外,扩大模型大小对于当前的大规模模型至关重要。因此,我们在 CosyVoice 3 中增加了文本转语音语言模型 (LM) 和条件流匹配 (CFM) 模型的大小。具体而言,文本转语音 LM 的参数数量从 0.5 亿增加到 1.5 亿。对于 CFM,我们采用最新的扩散变换器 (DiT) 作为骨干网络,将参数数量从 1 亿增加到 3 亿。初步实验证明了 DiT 架构的强大性能;因此,复杂的文本编码器和长度正则化模块不再需要,并从 CosyVoice 3 中移除。我们通过简单的插值操作解决了语音标记和 Mel 特征之间的帧率不匹配问题。

    为了评估 CosyVoice 3 的零样本语音生成能力,我们关注三个关键方面:内容一致性、说话人相似度和音频质量。对于内容一致性,我们使用 Whisper-large V3测量 ASR 转录文本与给定文本的字符错误率 (CER) 或词错误率 (WER)。对于英文 ASR,我们使用 Paraformer  测量中文 ASR。为了评估说话人相似度,我们使用 ERes2Net 说话人验证模型从生成的语音中提取说话人嵌入,并计算与参考语音嵌入的余弦相似度。对于音频质量,我们使用 DNSMOS 网络对生成的语音进行评分,该网络的得分与人类听觉感知高度相关。

    为了更好地评估 CosyVoice 3,我们建立了一个多语言基准 CV3-Eval,其中包括客观和主观评估的子集。

    Experimental Results

     SEED-TTS-Eval 上的客观 TTS 结果

    CosyVoice 3 与基线在 SEED 测试集上的内容一致性 (WER/CER) 和说话人相似度 (SS) 方面的零样本 TTS 性能比较。对于说话人相似度,括号外的结果由基于 WavLM 的模型测量,括号内的结果由 ERes2Net 测量。 粗体表示最佳结果,下划线表示次佳结果

     在多语言基准 CV3-Eval 上的客观评估:

    对于 CosyVoice 3 来说,生成生僻词、绕口令和领域特定术语仍然很困难,这突显了未来有待改进的地方。

     跨语言语音克隆结果:CosyVoice 3 在跨语言语音克隆方面相较 CosyVoice 2 的显著提升。值得注意的是,由于两种语言的字符重叠,CosyVoice 2 在将语音从日语转换为中文时遇到了困难。CosyVoice 3 通过将所有日语字符转换为假名解决了这个问题。此外,扩大模型规模也带来了益处:与 CosyVoice3-0.5B 相比,CosyVoice3-1.5B 在所有条件下都表现出了更佳的字错误率 (WER),同时保持了与 CosyVoice 2 相似的说话人相似度。这表明,由于容量的增加,更大的模型可以提升在挑战性任务上的表现。总体而言,CosyVoice3-1.5B 仍然是 zh2en 和 en2zh 跨语言语音迁移任务中的领先模型。

    在与文本无关的任务中,情感准确率显著下降,尤其是“悲伤”和“愤怒”情感。这表明 TTS 系统主要从文本情绪中推断输出音频的情感基调。这一观察结果为了解不太令人满意的表现提供了宝贵的见解,并突出了未来需要改进的地方。

    主观评价结果:

    Nexa AI OmniAudio-2.6B:全球最快的边缘部署音频语言模型

    OmniAudio 是全球最快、最高效的音频语言模型——OmniAudio – 2.6B 是一款高性能的多模态音频语言模型,参数量为 2.6B,能够高效处理文本和音频输入。它将 Gemma – 2 – 2B、WhisperTurbo 以及定制的 Projector 模块集成到一个统一框架中,突破了传统模型串联 ASR(自动语音识别)和 LLM(大语言模型)的架构限制,实现了更低延迟、更高效能的音频 – 文本一体化处理。这种一体化的设计使得音频信息能够直接在模型内部进行处理和转换,避免了传统架构中多次数据传输和处理带来的延迟和资源浪费。

    huggingface : https://huggingface.co/NexaAIDev/OmniAudio-2.6B

    二、技术原理

    1、模型架构

    Gemma – 2 – 2B:作为负责文本处理的基础语言模型,它拥有强大的语言理解和生成能力。其内部的神经网络结构经过精心设计和训练,能够对音频文本转换后的文本进行深入分析和理解。例如,在处理复杂的语义关系时,Gemma – 2 – 2B 可以准确地识别出词汇之间的逻辑联系,从而为后续的语言生成提供准确的基础。

    • WhisperTurbo是优化后的音频编码器,能够生成高质量的音频嵌入。它通过对音频信号进行特征提取和编码,将音频信息转化为模型可处理的形式。WhisperTurbo 在处理音频信号时,能够捕捉到音频中的细微特征,如语音的语调、语速变化等,这些特征对于准确理解音频内容至关重要。
    • 定制Projector模块:将 Whisper 的音频 token 转化为与 Gemma 文本嵌入对齐的序列,确保音频 – 文本模态的高效融合。它通过一种特殊的映射机制,使得音频和文本在向量空间中能够准确对应,同时保持语言模型的原始性能。这种对齐方式使得模型在处理音频输入时,能够像处理文本输入一样高效地进行语言理解和生成。

    2、训练方法

    • 预训练阶段:基于 MLSEnglish10K 转录数据集进行基础的音频 – 文本对齐能力训练。为了支持多任务应用,数据集中引入了特殊的 <|transcribe|>token,用以区分语音转文本和内容补全任务,确保模型在不同场景下性能的一致性。在预训练过程中,模型通过大量的音频 – 文本对数据学习,逐渐掌握音频和文本之间的对应关系,形成初步的音频处理和语言理解能力。
    • 监督微调阶段(SFT):使用合成数据集进行指令调优。数据集同样以 MLSEnglish10K 为基础,结合专有模型对上下文进行扩展,生成丰富的 “音频 – 文本” 对。通过这种方式,模型具备了更强的音频输入语义理解和会话生成能力。例如,在处理特定领域的音频数据时,模型能够根据微调数据中的领域知识,准确理解音频中的专业术语和特定表达方式。
    • 直接偏好优化(DPO):利用 GPT – 4O API 对模型初始输出进行评估,标注不正确的输出为 “拒绝”(rejected),并生成替代答案作为 “偏好”(preferred)参考。为了保持 Gemma – 2 的文本处理性能,额外增加了偏好训练步骤,使用 Gemma – 2 的原始文本作为 “标准” 训练模型,在处理音频输入时匹配其高水平表现。通过 DPO,模型能够不断优化自己的输出,使其更加符合人类的语言习惯和实际需求。

    三、功能特点

    1、处理速度快

    在 2024 Mac Mini M4 Pro 上,使用 Nexa SDK 并采用 FP16 GGUF 格式时,模型可实现每秒 35.23 个令牌的处理速度,而在 Q4_K_M GGUF 格式下,可处理每秒 66 个令牌。相比之下,Qwen2 – Audio – 7B 在相似硬件上只能处理每秒 6.38 个令牌,展示出显著的速度优势,能够满足实时音频处理的需求。例如,在实时语音翻译场景中,快速的处理速度可以确保翻译结果几乎与语音同步输出,大大提高了沟通效率。

    2、资源效率高

    模型的紧凑设计有效减少了对云资源的依赖,使其成为功率和带宽受限的可穿戴设备、汽车系统及物联网设备的理想选择,降低了设备的运行成本和对网络的依赖。在一些网络信号不稳定的偏远地区,或者在电池续航有限的可穿戴设备上,OmniAudio – 2.6B 能够凭借其低资源消耗的特点,稳定地运行并提供准确的音频处理服务。

    3、高准确性和灵活性

    尽管 OmniAudio – 2.6B 专注于速度和效率,但其在准确性方面也表现不俗,适用于转录、翻译、摘要等多种任务。无论是实时语音处理还是复杂的语言任务,OmniAudio – 2.6B 都能够提供精准的结果。例如,在处理学术讲座的音频转录时,模型能够准确识别专业术语和复杂的句子结构,生成高质量的文字转录稿。

    四、应用场景

    1、智能家居

    可以集成到智能家居设备中,如智能音箱、智能家电等,实现语音控制和交互。用户可以通过语音指令控制家电的开关、调节温度、查询信息等,提供更加便捷的智能家居体验。例如,用户只需说出 “打开客厅的灯”,智能音箱中的 OmniAudio – 2.6B 模型就能准确识别指令并控制灯光设备,让家居生活更加智能和便捷。

    2、车载系统

    在汽车中,OmniAudio – 2.6B 可以用于语音导航、语音娱乐系统、车辆状态查询等功能。驾驶员可以通过语音与车辆进行交互,提高驾驶安全性和便利性。比如,驾驶员在行驶过程中无需手动操作,只需说出 “导航到最近的加油站”,车载系统就能快速响应并规划路线,避免了分心驾驶带来的安全隐患。

    3、远程医疗

    在远程医疗领域,该模型可以用于实时转录医生与患者的对话、翻译医疗文件和语音指令等,提高医疗服务的效率和质量,方便医患之间的沟通。例如,在跨国远程会诊中,OmniAudio – 2.6B 可以实时翻译不同语言的对话,让医生和患者能够无障碍交流,确保诊断和治疗的准确性。

    4、可穿戴设备

    如智能手表、智能耳机等可穿戴设备可以利用 OmniAudio – 2.6B 实现语音助手功能,用户可以通过语音查询天气、设置提醒、发送短信等,为用户提供更加便捷的操作方式。比如,用户在运动时双手不方便操作,只需对着智能手表说出 “设置明天早上 7 点的闹钟”,手表就能快速完成设置,提升了用户体验。

    Baichuan-Auido端到端训练语音交互大模型

    Baichuan-Auido 是Baichuan最新的端到端训练的语音交互大模型,无缝集成了音频理解和生成功能,支持高质量可控的中英双语实时对话。

    • Baichuan-Audio-Base: 为促进语音大模型发展,我们开源了使用高质量海量数据训练的端到端语音基座模型。该模型未经SFT指令微调,可塑性强。
    • Baichuan-Audio: 接受文本、音频作为输入,并生成高质量文本和语音输出,能够在保持预训练 LLM 智商能力下实现无缝的高质量语音交互,和用户进行实时语音对话

    Introduction

    Baichuan-Audio,这是一款为实时语音交互设计的端到端音频大语言模型。与 MoshiGLM-4-Voice [输出 文本+speech token,speech token 接入cosyvoice解码器合成音频 ] 类似,Baichuan-Audio 扩展了预训练的大语言模型(LLM),以支持端到端的音频输入和输出。该模型通过集成 Baichuan-Audio-Tokenizer 和流匹配解码器来实现上述功能,前者将音频信号离散化为音频标记,后者则将音频标记解码为语音波形。

    Baichuan-Audio-Tokenizer 的运行帧率为 12.5 Hz,并采用多码本离散化技术,以保留语义和声学信息,从而支持 LLM 中语音模态的有效建模。Baichuan-Audio 还引入了独立的音频头(audio head),以提升模型处理和捕捉音频特征的能力。

    我们在包含约 1000 亿个标记的音频-文本数据上进行了大规模预训练。基于包含 88.7 万小时的大型音频语料库,我们采用了交错数据处理方法,以在 LLM 框架内实现高效的知识迁移。

    贡献:

    • 统一且卓越的语音能力:我们设计了一个 8 层 RVQ 音频分词器Baichuan-Audio-Tokenizer),在 12.5 Hz 帧率下实现了对语义和声学信息的最佳平衡,支持高质量、可控的中英文双语实时对话。
    • 端到端语音交互Baichuan-Audio 能够处理文本和音频输入,并生成高质量的文本和语音输出,支持无缝的高质量语音交互,同时保持智能响应能力。
    • 开源支持:我们已开源训练数据和基础模型,为语音交互领域的研究与创新提供了宝贵的资源与工具。

    模型

    该模型结构围绕三大核心组件构建:Baichuan-Audio分词器音频大语言模型(audio LLM),以及音频解码器

    处理流程从音频分词器开始,它通过捕捉语义与声学信息,将原始音频输入转化为离散的token。这一步是通过 Whisper编码器残差矢量量化(RVQ)技术相结合实现的。

    随后,音频LLM以交替方式生成对齐的文本与音频token,并借助一个特殊的token实现文本与音频模态间的无缝切换。接下来,这些音频token将由一个独立的音频head进一步处理。

    最后,模型通过一个基于Flow-Matching的方法的音频解码器,从这些token中重建出高质量的Mel谱图,再通过 声码器(vocoder)将其转换为音频波形。

    Audio Tokenization

    当前音频分词器面临的主要挑战,在于如何在捕捉语音信号中的语义信息与声学信息之间取得最佳平衡。相较于像 HuBERT 这样的自监督学习方法,Baichuan-OmniQwen-Audio 这类模型在捕捉语义特征方面提供了更直接的路径。【ASR任务

    与此同时,像 EncodecSpeechTokenizer这样的音频分词器则在完整重建音频特征方面表现尤为出色。【音频重建任务

    为了结合这两类方法的优点,提出了 Baichuan-Audio-Tokenizer:一个基于 残差矢量量化(RVQ)多目标训练【重建音频任务以及ASR任务】 的音频分词器,如图2所示。Baichuan-Audio-Tokenizer 保留了来自 Baichuan-Omni音频编码器语言模型组件,并在编码器之后新增了一个 音频解码器结构,用于重建输入的 Mel 频谱图。该音频分词器采用多目标优化方法进行训练,从而能够有效捕捉输入语音中的语义信息与声学信息。

    Baichuan-Audio-Tokenizer 采用了每秒 12.5 个 token 的帧率设计。高层次的音频特征首先通过 Whisper Large 编码器Mel 频谱图(Mel spectrogram) 中提取,随后通过一个 残差卷积网络 进行 4× 下采样,以获得低帧率的音频特征。

    由于 Whisper 编码器输出的音频特征是高维的,在量化过程中需尽可能减少信息损失,因此我们使用了 8 层残差矢量量化(RVQ)。我们设计了逐层递减的码本大小,依次为:{8K, 4K, 2K, 1K, 1K, 1K, 1K, 1K}

    音频解码器采用与 Whisper 编码器完全对称的结构,通过一个 反卷积模块(deconvolution module) 对输入进行 4× 上采样。之后,序列经过一系列 Transformer 层,并进一步进行 2× 上采样,最终得到每秒 100 个 token 的粗略 Mel 频谱表示。设计了一个 精细化网络,以提升 Mel 频谱重建的精度,最终获得高质量的精细 Mel 频谱特征。

    在音频重建损失函数的设计中,我们,采用 L2 损失与 L1 损失的组合 作为重建损失。其形式定义如下:

    为提升音频重建的质量,我们引入了一种 多尺度 Mel 频谱损失(multiscale Mel loss) 方法,使用了两种不同的 hop length(帧移)window size(窗长)。该方法有效缓解了在从解码器输出转换为 Mel 频谱过程中,由于降维和下采样插值所导致的信息损失。通过在多个尺度上进行优化,该方法能够保留更多细粒度的音频特征,从而提升重建的保真度和训练的稳定性。

    对于预训练的语言模型(LLM),其目标是在音频理解任务中最大化文本输出的 softmax 概率。为了确保语义对齐,我们在训练过程中保持预训练语言模型参数不更新(冻结),仅最大化其在音频理解任务中预测文本的 softmax 概率。这种做法有助于保持音频分词器与文本LLM之间的语义对齐关系

    在选择 LLM 的规模时,我们观察到,在音频理解模型的训练过程中,不同规模的 LLM 对于 ASR(自动语音识别)指标的影响很小。因此,我们最终选用了一个拥有 15亿参数(1.5B) 的预训练 LLM 进行持续训练。这个规模的模型与音频解码器在训练过程中表现出良好的匹配性,两者的梯度范数差距较小,有助于提升整体训练的稳定性。

    在量化模块的训练中,我们采用了 指数移动平均(EMA) 策略来更新码本,并使用 直通估计器(STE, Straight-Through Estimator) 来反向传播梯度至编码器。此外,我们还使用了 向量量化承诺损失(VQ commitment loss),以确保编码器的输出能够紧密对齐至码本中的条目。

    VQ 承诺损失定义如下:

    总损失是多尺度重建损失、文本音频对齐损失(对于LLM)和 VQ 承诺损失的加权组合:

    训练数据。 除了自动语音识别 (ASR)、音频查询回答 (AQA) 和语音到文本翻译 (S2TT) 等传统任务外,我们还将一定比例的音频文本交错数据纳入训练过程。此策略旨在增强 VQ 模块对复杂上下文场景进行建模的能力。具体来说,训练数据集包括 135k 小时的 ASR 数据、11k 小时的 AQA 数据、9k 小时的 S2TT 翻译数据和 52k 小时的音频文本交错数据。

    Evaluation of Baichuan-Audio-Tokenizer. 我们使用相同的数据和基础模型训练了音频理解模型的非 VQ 版本作为基线。对于 VQ 和非 VQ 模型,LLM 的参数在训练期间保持冻结,以确保公平比较并隔离 VQ 机制对整体性能的影响。从表 1 中,我们可以看到 8 层 vq 更接近基线,并且语义内容损失最少。如表 2 所示,8 层 VQ 模型和基线在多个数据集上的 ASR 结果表明,训练后的 8 层 VQ 模型实现了具有竞争力的性能。

    基于流匹配的音频解码器

    为了提升合成音频的质量与保真度,我们对音频解码模块进行了增强,引入了 Flow-Matching 模型,在 24 kHz 采样率的音频数据上训练,用于生成目标 Mel 频谱图。该 Flow-Matching 解码器 包括两个主要部分:Pre-Net条件解码器(Conditional Decoder),如图 3 所示。

    Pre-Net 负责将中间表示映射为供声码器(vocoder)使用的先验分布,结构上由一个 多层感知机(MLP) 和一个 12 层 Transformer 组成:MLP 将输入的 1280维、50 Hz 的音频特征压缩投影至 512维;接着,Transformer 对其进行精细建模;最后通过一个线性层转换为 80维的 Mel 频谱图

    条件解码器(Flow-Matching Conditional Decoder)。该部分采用基于 U-Net 的结构,并结合 OT-CFM(Optimal Transport Conditional Flow Matching) 方法进行训练,灵感来源于 Matcha-TTSCosyVoice

    U-Net 结构包括:一个下采样模块、一个上采样模块,以及 12 个中间模块,每个模块由一个 ResNet1D 层 和一个 Transformer 层(256维)组成。最终,再通过一个线性层将特征投影为 80维 Mel 频谱图

    需要注意的是,由于模型已通过重建损失编码了声学信息(如说话人音色),因此 不需要额外的说话人嵌入(speaker embeddings)。生成的 Mel 频谱图将通过 HiFi-GAN 声码器转换为音频波形。

    训练细节: 流匹配模型在约 27 万小时的音频上进行了训练,包括普通话、英语、各种方言和多语言数据。使用集成 ASR 和 MOS 过滤来改善数据质量。在训练期间,AudioEncoder、VQ 层和 AudioDecoder 是固定的,而流匹配 Pre-Net 和解码器则在 Pre-Net 中添加了先验损失进行训练。

    重建性能评估

    Audio LLM

    Baichuan-Audio 通过整合新推出的 Baichuan-Audio-Tokenizer(包括音频嵌入层和独立的音频头)扩展了预训练的 LLM。具体来说,来自 Baichuan-Audio-Tokenizer 的音频标记首先通过音频嵌入层转换为音频嵌入。音频 LLM 交替生成对齐的文本标记和音频标记,并通过特殊标记实现文本和音频之间的模态切换。生成的音频标记由独立的音频头处理,该头由 3 层深度转换器和 8 个分类头组成。最后,音频嵌入通过音频编码器(例如基于流匹配的音频编码器和声码器)以重建音频波形。

    音频嵌入。 首先,将 8 个离散音频标记通过相应数量的嵌入层相加以获得音频嵌入。由于包含一个额外的特殊标记来表示音频标记生成的结束,因此每个嵌入层的输入维度都比相应码本的大小大一。

    音频头。生成的音频标记使用独立的音频头进行处理,该音频头由 3 层深度转换器和 8 个分类头组成。深度转换器的深度为 8,可预测 8 个码本的音频嵌入。最后,分类头用于获取与音频标记相对应的每个码本的逻辑值。

    与纯文本大模型相比,语音语言模型(speech language models) 往往在生成语义连贯的输出方面存在困难。研究 [36] 指出,这一问题主要源于语音中引入了 时长信息(duration)副语言信息(paralinguistic information),例如语调、语气等。

    为了解决这一问题,我们在预训练阶段引入了两种类型的交错数据(interleaved data)音频-文本交错数据(INTLV, Audio-Text Interleaved)文本到语音交错数据(ITTS, Interleaved Text-to-Speech)

    这两种数据设计有助于提升模型的音频理解与生成能力

    在推理阶段,离散音频 token 会被送入 LLM,模型随后以交替的方式生成对齐的 文本 token音频 token。我们引入了特殊 token,用于在文本与音频模态间切换。这种强制对齐策略(forced alignment approach)确保了模型会优先生成连贯完整的文本内容,再生成对应的音频 token,从而有效引导音频 token 的生成,缓解语义退化问题

    Pre-training details

    数据: 交错数据由交替的文本和音频模态组成,并用标点符号分隔以促进跨模态知识传输。交错对齐的生成数据由完全对齐的文本和音频内容组成,旨在增强模型在文本监督下生成音频标记的能力。音频-文本配对数据(例如,ASR 和 TTS 数据)提高了基本语音任务的性能。另一方面,纯音频数据增强了独立处理音频模态的能力。交错数据收集流程如图 4 所示,分为爬取数据和合成数据两种,共获取了 14.2 万小时的 ITTS 数据和 39.3 万小时的 INTLV 数据。交错数据采用LLM进行切分,即根据文本内容中的标点符号或自然停顿进行自然切分。对于合成数据的切分文本数据,我们还采用了大型语言模型进行文本归一化 。在预训练过程中,我们排除了音频文本交错数据中音频片段的损失计算,这一设计选择与 GLM-4-Voice 不同。 在当前约 50B 的训练音频数据规模下进行的经验观察表明,计算 INTLV 数据中音频片段的损失会导致性能下降。这一决定的合理性还在于音频和文本之间固有的模态冲突,以及推理过程中不需要文本到音频的延续。因此,我们省略了 INTLV 数据中音频片段的损失计算。对于 ITTS 数据,除了初始文本片段外,还计算了音频和文本片段的损失,以增强模型在文本引导音频生成方面的能力。

    两阶段训练策略。 为了解决语音特征与文本特征的不同特征可能导致的LLM中原始文本知识的潜在破坏,我们提出了一种两阶段训练策略来缓解模态之间的训练冲突。在第一阶段,LLM的参数保持不变,只允许更新音频嵌入层和音频头的参数。在第二阶段,除文本嵌入层和 LM 头的参数外,所有参数都可训练

    监督微调细节

    监督微调阶段旨在增强模型在一系列任务中遵循复杂指令的能力。音频 SFT 数据来自大量文本指令。使用基于指令类型、多样性和整体质量的过滤策略选择高质量指令。使用 10,000 种不同语音音调的精选数据集合成音频指令。在自然对话停顿处生成和分割相应的文本响应,然后使用指定的语音音调转换为音频。这些数据集涵盖多项任务,包含大约 242k 个音频数据对。

    为了确保合成音频的质量,自动语音识别 (ASR) 被应用于生成的音频文件。将 ASR 输出与原始文本进行比较以验证质量。此过程可创建高质量的端到端对话数据集。有错误的合成音频文件将添加到文本转语音 (TTS) 数据集,而有 ASR 错误的案例将合并到 ASR 训练数据集中。这种合并具有挑战性的示例的迭代方法可增强 TTS 和 ASR 的性能。

    需要特别注意处理文本转音频导致原始文本响应不适合作为音频回复的情况。此问题是由于文本和音频之间的语调、速度和表达方式的差异而产生的。某些文本内容在转换为音频时可能无法传达预期含义或引入歧义。因此,在生成过程中仔细检查和调整此类情况至关重要。这可确保合成数据准确反映现实世界的语音交互场景,从而提高数据可靠性并提高模型的实际适用性。

    Experiment

     综合智力测评

    基于语音的对话模型面临的一大挑战是,与纯文本对话模型相比,其性能往往会下降。为了评估语音模型的“智能”,我们​​以文本到文本的建模能力为基准,评估预训练的语音到文本模型的性能。评估数据集包括两种类型:故事延续能力和常识推理能力。

    Performance in ASR/TTS Tasks

    Fleurs 、 WenetSpeech 和 KeSpeech 上的主要结果 

    Performance in Audio Understanding Tasks

    模型在音频理解基准测试中表现优异,超越了最新的开源模型。

    两种不同的设置:1)非级联方式的语音到语音生成(表示为 S → S),其中输入是音频,输出是交错的文本和音频。然后合并输出文本并用于评估。2)语音到文本生成(表示为 S → T,其中输入是音频,输出是文本,用于评估。

    总结

    Baichuan-Audio,这是一种专为音频设计的端到端大型语言模型,集成了语音理解和生成功能。该模型通过预训练的 ASR 模型对 12.5 Hz 的语音信号进行多码本离散化,从而保留了语音标记中的语义和声学信息。此外,还专门设计了一个独立的音频头来高效处理这些标记。为了平衡音频建模和语言能力保留,采用了交错数据的两阶段预训练策略。所提出的框架通过文本引导的对齐语音生成来支持语音交互,从而进一步保留了模型的基础认知能力。