LongLLaVA:香港中文大学推出的多模态上下文混合架构大语言模型

本文涉及的产品
图像搜索,7款服务类型 1个月
简介: LongLLaVA是由香港中文大学推出的多模态大型语言模型,采用混合架构,结合Mamba和Transformer模块,旨在高效处理大量图像数据。该模型能够在单个A100 80GB GPU上处理多达1000张图像,通过2D池化技术压缩图像token,显著降低计算成本,同时保留关键的空间关系信息。LongLLaVA在视频理解、高分辨率图像分析和多模态代理等应用场景中展现出卓越的性能。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦


🚀 快速阅读

模型架构:结合Mamba和Transformer模块,提高处理大量图像数据的效率。
功能特点:在单个GPU上处理多达1000张图像,展示高效图像处理能力。
应用场景:适用于视频理解、高分辨率图像分析和多模态代理等任务。

正文(附运行示例)

LongLLaVA 是什么

公众号: 蚝油菜花 - LongLLaVA

LongLLaVA是由香港中文大学(深圳)的研究人员推出的多模态大型语言模型(MLLM)。该模型基于混合架构,结合了Mamba和Transformer模块,旨在提高处理大量图像数据的效率。LongLLaVA能够在单个A100 80GB GPU上处理多达1000张图像,同时保持高性能和低内存消耗。

通过2D池化技术,LongLLaVA压缩图像token,显著降低计算成本,同时保留关键的空间关系信息。这使得模型在视频理解、高分辨率图像分析和多模态代理等应用场景中展现出卓越的性能,特别是在检索、计数和排序任务中。

LongLLaVA 的主要功能

  • 多模态长上下文理解:处理包含大量图像的长上下文信息,适用于视频理解、高分辨率图像分析等场景。
  • 高效图像处理:在单个GPU上处理多达1000张图像,展示在处理大规模视觉数据时的高效能力。
  • 混合架构优化:结合Mamba和Transformer架构,平衡模型的效率和效果。
  • 数据构建与训练策略:基于特殊的数据构建方法和分阶段训练策略,增强模型对多图像场景的理解能力。
  • 优异的基准测试表现:在多个基准测试中,展现卓越的性能,尤其在检索、计数和排序任务中。

LongLLaVA 的技术原理

  • 混合架构:基于混合架构,整合Mamba和Transformer模块。Mamba模块提供线性时间复杂度的序列建模能力,Transformer模块处理需要上下文学习的复杂任务。
  • 2D池化压缩:用2D池化方法压缩图像token,减少token的数量,同时保留图像间的空间关系。
  • 数据构建:在数据构建时考虑图像之间的时间和空间依赖性,设计独特的数据格式,让模型更好地理解多图像场景。
  • 渐进式训练策略:模型采用三阶段的训练方法,包括单图像对齐、单图像指令调优和多图像指令调优,逐步提升模型处理多模态长上下文的能力。
  • 效率与性能平衡:在保持高性能的同时,基于架构和训练策略的优化,实现低内存消耗和高吞吐量,展现在资源管理上的优势。
  • 多模态输入处理:能处理多种多模态输入,包括图像、视频和文本,有效地在内部混合架构中统一管理预处理输入。

如何运行 LongLLaVA

环境设置

pip install -r requirements.txt

数据下载与构建

数据下载与构建的详细步骤即将发布。

训练

下载语言模型

🤗 <a href="https://huggingface.co/FreedomIntelligence/Jamba-9B-Instruct" target="_blank">Jamba-9B-Instruct</a>

阶段一:单图像对齐

bash Align.sh

阶段二:单图像指令调优

bash SingleImageSFT.sh

阶段三:多图像指令调优

bash MultiImageSFT.sh

评估

命令行接口

python cli.py --model_dir path-to-longllava

模型推理

query = 'What does the picture show?'
image_paths = ['image_path1'] # image or video path

from cli import Chatbot
bot = Chatbot(path-to-longllava)
output = bot.chat(query, image_paths)
print(output) # Prints the output of the model

基准测试

python Eval.sh

重现论文中的其他结果

FLOPs

python /utils/cal_flops.py

预填充时间、吞吐量和GPU内存使用

python ./benchmarks/Efficiency/evaluate.py
python ./benchmarks/Efficiency/evaluatevllm.py

DownCycling

将Jamba-MoE转换为Dense

python ./utils/dense_downcycling.py

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

相关文章
|
3月前
|
人工智能 测试技术 数据处理
首个Mamba+Transformer混合架构多模态大模型来了,实现单卡千图推理
【10月更文挑战第18天】《LongLLaVA: Scaling Multi-modal LLMs to 1000 Images Efficiently via Hybrid Architecture》提出了一种新型多模态大模型LongLLaVA,结合了Mamba和Transformer架构,通过系统优化实现在单张A100 80GB GPU上处理近千张图像的突破。该模型在视频理解、高分辨率图像分析和多模态智能体任务中表现出色,显著提升了计算效率。
169 64
|
22天前
|
监控 安全 API
使用PaliGemma2构建多模态目标检测系统:从架构设计到性能优化的技术实践指南
本文详细介绍了PaliGemma2模型的微调流程及其在目标检测任务中的应用。PaliGemma2通过整合SigLIP-So400m视觉编码器与Gemma 2系列语言模型,实现了多模态数据的高效处理。文章涵盖了开发环境构建、数据集预处理、模型初始化与配置、数据加载系统实现、模型微调、推理与评估系统以及性能分析与优化策略等内容。特别强调了计算资源优化、训练过程监控和自动化优化流程的重要性,为机器学习工程师和研究人员提供了系统化的技术方案。
142 77
使用PaliGemma2构建多模态目标检测系统:从架构设计到性能优化的技术实践指南
|
12天前
|
人工智能 自然语言处理
RWKV-7:RWKV系列开源最新的大模型架构,具有强大的上下文学习能力,超越传统的Attention范式
RWKV-7是RWKV系列的最新大模型架构版本,具有强大的上下文学习能力,超越了传统的attention和linear attention范式。本文详细介绍了RWKV-7的主要功能、技术原理及其在多语言处理、文本生成等领域的应用场景。
91 7
RWKV-7:RWKV系列开源最新的大模型架构,具有强大的上下文学习能力,超越传统的Attention范式
|
2月前
|
监控
SMoA: 基于稀疏混合架构的大语言模型协同优化框架
通过引入稀疏化和角色多样性,SMoA为大语言模型多代理系统的发展开辟了新的方向。
53 6
SMoA: 基于稀疏混合架构的大语言模型协同优化框架
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
医疗行业的语音识别技术解析:AI多模态能力平台的应用与架构
AI多模态能力平台通过语音识别技术,实现实时转录医患对话,自动生成结构化数据,提高医疗效率。平台具备强大的环境降噪、语音分离及自然语言处理能力,支持与医院系统无缝集成,广泛应用于门诊记录、多学科会诊和急诊场景,显著提升工作效率和数据准确性。
|
2月前
|
编解码 人工智能 开发者
长短大小样样精通!原始分辨率、超长视频输入:更灵活的全开源多模态架构Oryx
【10月更文挑战第23天】Oryx 是一种新型多模态架构,能够灵活处理各种分辨率的图像和视频数据。其核心创新在于能够对图像和视频进行任意分辨率编码,并通过动态压缩器模块提高处理效率。Oryx 在处理长视觉上下文(如视频)时表现出色,同时在图像、视频和3D多模态理解方面也展现了强大能力。该模型的开源性质为多模态研究社区提供了宝贵资源,但同时也面临一些挑战,如选择合适的分辨率和压缩率以及计算资源的需求。
37 3
|
8月前
|
存储 缓存 分布式计算
You Only Cache Once:YOCO 基于Decoder-Decoder 的一个新的大语言模型架构
YOCO是一种新的解码器-解码器架构,旨在解决大型语言模型推理时的内存限制问题。通过只缓存一次键值对,YOCO显著减少了GPU内存占用,与Transformer相比,内存使用降低了约L倍。模型由自解码器和交叉解码器组成,自解码器使用滑动窗口注意力,而交叉解码器利用全局KV缓存。实验表明,YOCO在保持竞争力的性能同时,提高了推理速度,尤其是在处理长序列时。此外,YOCO还减少了预填充时间,提升了吞吐量。
298 3
|
7月前
|
机器学习/深度学习 语音技术
多模态大模型不够灵活,谷歌DeepMind创新架构Zipper:分开训练再压缩
【6月更文挑战第12天】谷歌DeepMind的Zipper架构解决了多模态大模型灵活性问题,通过分解为单模态模型并用“压缩”过程组合,实现多模态生成。该方法允许独立训练每个模态,提升灵活性和可扩展性,适用于数据有限或领域特定的模态。Zipper利用交叉注意力机制融合模态输出,适用于图像描述、语音识别等任务。尽管需要更多计算资源且性能受限于单模态模型质量,但已在ASR和TTS领域展现潜力。论文链接:https://arxiv.org/pdf/2405.18669
72 3
|
8月前
|
自然语言处理
LLM上下文窗口突破200万!无需架构变化+复杂微调,轻松扩展8倍
【5月更文挑战第12天】LongRoPE研究突破LLM上下文窗口限制,无需架构变更和复杂微调,实现8倍扩展至2048万个token。该方法利用位置嵌入非均匀性,通过高效搜索和优化初始化,适用于处理长文本任务,对模型性能影响小。但可能需要较多计算资源,且2048万的长度是否足够所有任务尚待探讨。[论文链接](https://arxiv.org/abs/2402.13753)
190 1
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
革命新架构掀翻Transformer!无限上下文处理,2万亿token碾压Llama 2
【4月更文挑战第28天】清华大学研究团队提出了Megalodon,一种针对长序列数据优化的Transformer模型。为解决Transformer的计算复杂度和上下文限制,Megalodon采用了CEMA改进注意力机制,降低计算量和内存需求;引入时间步长归一化层增强稳定性;使用归一化注意力机制提升注意力分配;并借助预归一化与双跳残差配置加速模型收敛。在与Llama 2的对比实验中,Megalodon在70亿参数和2万亿训练token规模下展现出更优性能。论文链接:https://arxiv.org/abs/2404.08801
80 2

热门文章

最新文章