❤️ 如果你也关注 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 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

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