在人工智能领域,大型语言模型(LLMs)如ChatGPT已经展现出了强大的任务解决能力,成为人们日常生活中的得力助手。然而,这些模型主要支持文本交互,限制了它们在非文本输入输出场景中的应用。最近,OpenAI推出了GPT-4o,实现了通过语音与LLMs的实时交互,极大地提升了用户体验。然而,如何基于开源LLMs构建类似的语音交互模型,在学术界仍是一个亟待探索的领域。
针对这一挑战,中国科学院计算技术研究所的一支研究团队提出了一种名为LLaMA-Omni的新型模型架构。该模型旨在实现与LLMs的低延迟、高质量语音交互。LLaMA-Omni集成了预训练的语音编码器、语音适配器、LLM和流式语音解码器,能够直接从语音指令生成文本和语音响应,而无需进行语音转录,从而实现了极低的延迟。
LLaMA-Omni的模型架构包括四个主要组件:语音编码器、语音适配器、LLM和语音解码器。
语音编码器:研究团队采用了Whisper-large-v3的编码器作为语音编码器。Whisper是一种通用的语音识别模型,在大量音频数据上进行了训练,能够从语音中提取有意义的表示。
语音适配器:为了帮助LLM理解输入的语音,研究团队引入了一个可训练的语音适配器,将语音表示映射到LLM的嵌入空间。该适配器首先对语音表示进行下采样,以减少序列长度,然后通过一个两层感知机进行处理,得到最终的语音表示。
大型语言模型:研究团队选择了Llama-3.1-8B-Instruct作为LLM。这是目前最先进的开源LLM之一,具有强大的推理能力和与人类偏好的良好对齐性。
语音解码器:语音解码器是一个非自回归(NAR)的流式Transformer,它以LLM的输出隐藏状态作为输入,并使用连接主义时间分类(CTC)来预测与语音响应对应的离散单元序列。在推理过程中,当LLM自回归地生成文本响应时,语音解码器会同时生成相应的离散单元。
为了更好地适应语音交互场景的特点,研究团队构建了一个名为InstructS2S-200K的数据集,该数据集包含200K条语音指令和相应的语音响应。这些数据是通过重写现有的文本指令数据并进行语音合成而得到的。
在训练策略上,研究团队采用了两阶段的训练方法。第一阶段,他们使用文本指令数据对LLM进行微调,以使其能够根据文本指令生成相应的文本响应。第二阶段,他们使用InstructS2S-200K数据集对整个模型进行联合训练,以使其能够根据语音指令直接生成文本和语音响应。
实验结果表明,LLaMA-Omni在内容和风格上都能够提供更好的响应,并且响应延迟低至226ms。与之前的语音语言模型相比,LLaMA-Omni在训练数据和计算资源方面都有了显著的减少。仅使用4块GPU,不到3天的时间就完成了模型的训练。
这一成果不仅为基于最新LLMs的强大语音交互模型的高效开发铺平了道路,也为开源社区提供了一个可参考的解决方案。通过LLaMA-Omni,用户可以更自然地与LLMs进行交互,无需依赖文本输入输出,从而拓展了LLMs的应用场景。
正面评价:
- 创新性:LLaMA-Omni的提出为基于开源LLMs的语音交互模型构建提供了新的思路和方法。其独特的模型架构和训练策略使得在有限的计算资源下实现高质量、低延迟的语音交互成为可能。
- 实用性:该模型能够直接从语音指令生成文本和语音响应,无需进行语音转录,从而大大减少了系统延迟,提升了用户体验。这对于需要实时交互的应用场景,如智能助手、语音翻译等,具有重要的实用价值。
- 开源性:研究团队将代码和模型开源,为学术界和工业界提供了一个可参考、可复现的解决方案。这有助于推动语音交互技术的发展和应用。
反面评价:
-数据集局限性:虽然研究团队构建了InstructS2S-200K数据集,但该数据集的规模和多样性可能仍存在一定的局限性。在实际应用中,模型可能需要面对更复杂、更多样化的语音指令和响应,因此数据集的进一步扩充和优化可能是必要的。
- 模型鲁棒性:虽然LLaMA-Omni在实验中表现出了良好的性能,但在实际应用中,模型可能需要面对各种噪声、口音、语速变化等挑战。因此,模型的鲁棒性和泛化能力仍需要进一步验证和提升。
-计算资源需求:虽然LLaMA-Omni在训练过程中仅使用了4块GPU,但对于一些资源有限的研究者或机构来说,这可能仍是一个较高的门槛。因此,如何进一步降低模型的训练和推理成本,使其能够更广泛地应用于各种场景,仍是一个值得探索的问题。