
实时口语聊天大模型 LLaMA-Omni 2 来了,能让你的 AI 聊天体验起飞!
最近 AI 圈可是热闹非凡,今天咱们就来聊聊其中的 “狠角色”——LLaMA-Omni2。这是一系列超厉害的语音语言模型(SpeechLMs),参数规模从0.5B 到14B 不等,专门为实现高质量实时语音交互而生,在 Hugging Face 上一经发布,就引起了广泛关注。语音交互发展历程回顾:从 “卡顿” 到 “丝滑”语音交互在人机交互领域的地位愈发重要,它就像是为我们打开了一扇便捷的大门,极大
最近 AI 圈可是热闹非凡,今天咱们就来聊聊其中的 “狠角色”——LLaMA-Omni2。这是一系列超厉害的语音语言模型(SpeechLMs),参数规模从0.5B 到14B 不等,专门为实现高质量实时语音交互而生,在 Hugging Face 上一经发布,就引起了广泛关注。
语音交互发展历程回顾:从 “卡顿” 到 “丝滑”
语音交互在人机交互领域的地位愈发重要,它就像是为我们打开了一扇便捷的大门,极大地提升了交互效率和用户体验。大家想想,以前操作设备只能靠手动输入,现在只需动动嘴就能搞定,多方便!随着像 ChatGPT 这样强大的大语言模型(LLMs)崛起,语音与 LLMs 的交互更是成为了热门话题。就拿 GPT-4o 来说,它实现了用户与 LLMs 之间实时、智能且自然的语音交互,引领了新一代人机交互的潮流。
但早期的语音交互技术并不成熟。传统构建语音聊天机器人的方式,是将自动语音识别(ASR)模型、LLM 和文本转语音(TTS)模型串联起来使用。这种方法虽然容易实现,却存在不少问题。首先,错误会在各个阶段不断累积,就好比接力比赛中,每一棒都可能出现失误,最后导致整个比赛成绩不佳。其次,由于多个模型是按顺序依次处理信息,整体响应延迟较高,你说句话,得等好一会儿才能得到回应,体验感很差。再者,系统很难捕捉到输入语音中的一些隐含信息,比如说话者的情绪、语气变化等。
为了解决这些问题,端到端的语音语言模型(SpeechLMs)应运而生。它主要分为原生和模块化两种类型。原生 SpeechLMs 会把语音离散成一个个小单元(token),采用类似 GPT 的解码器架构,在统一的语言模型中处理语音和文本。这种架构的优势在于可以利用大量无监督语音数据进行预训练,有利于模型在参数规模和数据量上的扩展,甚至可能让模型产生一些像人类一样的语音表达能力。不过,它的缺点也很明显,需要大规模的语音数据集(比如数百万小时的数据)来进行预训练,这在数据收集和训练成本上都是巨大的挑战,而且还可能导致模型对文本能力的遗忘。
相比之下,模块化 SpeechLMs 则是在 LLM 的基础上,增加了语音编码器和解码器,以此来处理语音的理解和生成。这种方式的好处是能够充分发挥每个模块的固有能力,只需要少量的数据进行微调(比如几百或几千小时的语音数据),就能让模型获得语音交互能力,同时还能保留 LLM 原有的大部分能力。而且,模块化 SpeechLMs 生成的语音通常由文本输出引导,保证了生成语音的智能性。
LLaMA-Omni2登场:多项技术融合的 “智慧结晶”
LLaMA-Omni2就是模块化 SpeechLMs 中的佼佼者。它以 Qwen2.5系列模型为基础,这个系列在各种基准测试中都表现出色,为 LLaMA-Omni2奠定了坚实的基础。同时,它采用了 Whisper 的编码器,这个编码器就像是一个精准的 “翻译官”,能够将输入的语音准确地转换为一系列特征表示。
在语音解码器方面,LLaMA-Omni2借鉴了先进的 CosyVoice2模型。它首先使用一个由 Qwen2.5-0.5B 初始化的自回归文本转语音语言模型,将 LLM 的输出转换为语音 token,并通过交替读写操作实现流式生成。接着,语音 token 会经过一个块感知因果流匹配模型,以流式的方式生成梅尔频谱图,最后再通过 HiFi-GAN 声码器生成最终的语音波形。
为了训练这个模型,研究团队合成了200K 多轮语音到语音的对话样本。这些样本的输入语音具有多样性,而输出语音则保持统一风格,模拟了真实场景下的对话情况。训练过程分为两个阶段:在第一阶段,分别训练语音到文本和文本到语音的组件;第二阶段,则专注于训练模型的语音到语音生成能力。通过这种分阶段的训练方式,LLaMA-Omni2能够更好地学习和优化各个模块的性能。
数据构建:精心打造的 “学习素材”
数据对于模型的训练至关重要。LLaMA-Omni2的数据是在 InstructS2S-200K 数据集的基础上进行扩展的。原始数据集包含200K 单轮指令跟随样本,这些样本是从 Alpaca 和 UltraChat 数据集通过 LLMs 改写而来的。研究人员通过泊松分布采样确定对话轮数,并将其限制在1到5轮之间,然后使用 Llama-3.3-70B-Instruct 模型迭代生成多轮文本对话样本。
在将文本对话转换为语音时,为了模拟真实应用场景,研究人员为指令设置了多样化的声音,而回复则使用统一的声音。具体实现方法是,先用 fishspeech-1.5模型合成一个随机语音提示,再用这个提示引导 CosyVoice20.5B 模型将指令合成为语音,并克隆语音风格。对于所有回复,则使用统一的语音提示,通过 CosyVoice2-0.5B 模型合成语音。这样的数据构建方式,使得训练数据更加真实、丰富,有助于模型学习到更准确的语音交互模式。
实验评测:实力强劲,超越 “前辈”
为了全面评估 LLaMA-Omni2的性能,研究人员进行了一系列实验。在模型配置上,采用 Whisper-large-v3的编码器、进行5× 下采样和具有2048中间维度 FFN 的语音适配器,以及不同参数规模的 Qwen2.5系列 LLM,并对文本转语音语言模型进行特定的初始化和设置读写策略。
训练过程中,使用合成的200K 多轮语音对话数据,分阶段进行训练,每个阶段设置不同的批大小、训练轮数和学习率,并采用热身策略和余弦退火学习率调度器。在评估环节,主要进行了口语问答和语音指令跟随两个任务,并对模型的语音到文本和语音到语音能力进行评估。评估指标包括准确率、ChatGPT 评分(使用 GPT-4o 进行评分)、ASR-WER(评估文本和语音响应的一致性)、UTMOS(评估生成语音的自然度)以及延迟(测量从接收语音指令到生成第一个语音块的时间)。
研究人员还选择了 LLaMA-Omni 和 GLM-4-Voice 等作为基线系统进行对比。实验结果显示,LLaMA-Omni2在口语问答和语音指令跟随任务中表现出色。在口语问答任务中,相同参数规模下,LLaMA-Omni2-7B 在语音到文本和语音到语音设置下均优于 GLM-4-Voice 和 LLaMA-Omni,并且显著缩小了两种设置下的性能差距;不同参数规模下,随着 LLM 大小的增加,模型准确率提高,较小的模型如 LLaMA-Omni2-1.5B/3B 在语音到语音设置下超过了 GLM-4-Voice 和 LLaMA-Omni,适合用于边缘设备,而较大的模型如 LLaMA-Omni2-14B 则展现出更大的潜力。在语音指令跟随任务中,LLaMA-Omni2-3B/7B/14B 在语音到文本和语音到语音设置下均优于基线系统,模型的 ASR-WER 较低,UTMOS 评分较高,延迟也满足实时交互的要求。
此外,研究人员还对 LLaMA-Omni2-7B 模型进行了一系列消融研究,分析了门融合模块、TTS 预训练策略、读写策略以及训练数据大小等因素对模型性能的影响。结果表明,这些因素都对模型的整体性能有着重要作用,比如门融合模块能够有效提升模型性能,合适的 TTS 预训练策略和读写策略能够优化语音质量和响应延迟,多轮对话数据比单轮对话数据更有利于模型训练,并且200K 的训练数据量能够在保证训练效率的同时使模型性能达到较好的水平。
未来展望:持续进化,潜力无限
LLaMA-Omni2虽然已经取得了显著的成果,但也存在一些局限性。目前,它还无法根据输入语音的内容或潜在的副语言信息生成不同风格(如情感、语速)的语音,不过研究团队认为通过数据驱动的方法,在进一步训练后模型有望获得这一能力。同时,由于它基于 LLMs 构建,可能会存在与 LLMs 类似的风险,如输出内容可能出现事实错误或幻觉等问题,因此在实际使用中需要对输出进行检查。
总体而言,LLaMA-Omni2在语音交互领域迈出了重要的一步,为未来的研究和应用提供了新的思路和方向。相信在未来,随着技术的不断发展和改进,LLaMA-Omni2以及类似的模型将会在更多领域得到应用,为人们的生活和工作带来更多便利和创新。让我们一起拭目以待!
论文地址:https://arxiv.org/pdf/2505.02625
模型地址:https://huggingface.co/collections/ICTNLP/llama-omni-67fdfb852c60470175e36e9c