❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!
🥦 微信公众号|搜一搜:蚝油菜花 🥦
大家好,我是蚝油菜花,今天跟大家分享一下 Ola 这个由清华大学、腾讯等团队联合推出的全模态语言模型。
🚀 快速阅读
Ola 是一个支持多种模态输入的语言模型,旨在实现对文本、图像、视频和音频的全面理解。
- 核心功能:支持多模态输入和实时流式解码。
- 技术原理:采用渐进式模态对齐策略,逐步扩展语言模型支持的模态,从图像和文本开始,再引入语音和视频数据。
Ola 是什么
Ola 是由清华大学、腾讯 Hunyuan 研究团队和新加坡国立大学 S-Lab 合作开发的全模态语言模型。该模型通过渐进式模态对齐策略,逐步扩展语言模型支持的模态,从图像和文本开始,再引入语音和视频数据,最终实现对多种模态的理解。Ola 的架构支持全模态输入,包括文本、图像、视频和音频,能够同时处理这些输入。
Ola 的设计不仅注重多模态输入的支持,还特别强调用户友好的实时流式解码功能,用于提升交互体验。这种设计使得 Ola 在多模态基准测试中表现出色,超越了现有的开源全模态 LLMs,在某些任务上甚至与专门的单模态模型相当。
Ola 的主要功能
- 多模态理解:支持文本、图像、视频和音频四种模态的输入,能同时处理这些输入,在理解任务中表现出色。
- 实时流式解码:支持用户友好的实时流式解码,可用于文本和语音生成,提供流畅的交互体验。
- 渐进式模态对齐:通过逐步扩展语言模型支持的模态,从图像和文本开始,再引入语音和视频数据,实现对多种模态的理解。
- 高性能表现:在多模态基准测试中性能卓越,超越了现有的开源全模态 LLMs,在某些任务上与专门的单模态模型相当。
Ola 的技术原理
- 渐进式模态对齐策略:Ola 的训练流程从最基础的模态(图像和文本)开始,逐步引入语音数据(连接语言和音频知识)以及视频数据(连接所有模态)。这种渐进式学习方法使模型能逐步扩展其模态理解能力,保持了跨模态对齐数据的规模相对较小,降低了从现有视觉-语言模型开发全模态模型的难度和成本。
- 多模态输入与实时流式解码:Ola 支持全模态输入,包括文本、图像、视频和音频,能同时处理这些输入。Ola 设计了逐句解码方案,用于流式语音生成,支持用户友好的实时交互体验。
- 跨模态数据的高效利用:为了更好地捕捉模态之间的关系,Ola 的训练数据包括传统的视觉和音频数据,还设计了跨模态视频-音频数据。数据通过视频中的视觉和音频信息构建桥梁,帮助模型学习模态之间的内在联系。
- 高性能架构设计:Ola 的架构支持高效的多模态处理,包括视觉编码器、音频编码器、文本解码器和语音解码器。通过局部-全局注意力池化(Local-Global Attention Pooling)等技术,模型能更好地融合不同模态的特征。
如何运行 Ola
1. 克隆仓库
git clone https://github.com/Ola-Omni/Ola
cd Ola
2. 安装依赖包
conda create -n ola python=3.10 -y
conda activate ola
pip install --upgrade pip
pip install -e .
3. 安装额外的训练包
pip install -e ".[train]"
pip install flash-attn --no-build-isolation
4. 下载模型权重
下载 Ola-7b
模型权重,可以从HuggingFace
获取,或者直接使用在线权重。
- HuggingFace:https://huggingface.co/THUdyh/Ola-7b
5. 下载音频编码器
从HuggingFace
下载音频编码器权重 large-v3.pt
和 BEATs_iter3_plus_AS2M_finetuned_on_AS2M_cpt2.pt
,并将它们放置在 path/to/Ola/pretrained
目录下。
6. 运行推理脚本
文本与图像理解
python3 inference/infer.py --image_path *.png,jpg --text user_instruction
文本与视频理解
python3 inference/infer.py --video_path *.mp4 --text user_instruction
文本与音频理解
python3 inference/infer.py --audio_path *.wav,mp3 --text user_instruction
音频与图像理解
python3 inference/infer.py --audio_path *.png,jpg --audio_path *.wav,mp3
资源
- Ola 模型介绍:https://ola-omni.github.io/
- GitHub 仓库:https://github.com/Ola-Omni/Ola
- HuggingFace 仓库:https://huggingface.co/THUdyh/Ola-7b
❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!
🥦 微信公众号|搜一搜:蚝油菜花 🥦