Inf-MLLM: Efficient Streaming Inference of Multimodal Large Language Models on a Single GPU
作者: Zhenyu Ning, Jieru Zhao, Qihao Jin, Wenchao Ding, Minyi Guo
分类: cs.LG, cs.AI, cs.CV, cs.DC, cs.PF
发布日期: 2024-09-11
💡 一句话要点
Inf-MLLM:在单GPU上实现多模态大语言模型的高效流式推理
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 多模态大语言模型 流式推理 长上下文 注意力机制 KV缓存 边缘计算 注意力鞍点
📋 核心要点
- 现有MLLM在长上下文推理时,需要缓存大量KV缓存,导致高延迟和内存消耗,限制了其在边缘设备上的流式推理部署。
- Inf-MLLM通过观察到的“注意力鞍点”模式,动态缓存最近和相关的token,从而维护一个大小受限的KV缓存。
- Inf-MLLM引入注意力偏差,使MLLM能够捕获长期依赖关系,并在长文本和长视频对话中实现稳定的性能,推理速度优于现有方法。
📝 摘要(中文)
多模态大语言模型(MLLM)以其多模态综合能力而著称,并广泛应用于包括GPT-4o、自动驾驶和机器人等诸多实际应用中。尽管它们性能卓越,但多模态输入通常会产生长上下文。长上下文推理需要缓存先前token的大量键和值状态(KV缓存),这会导致高延迟和过度的内存消耗。因此,在边缘设备上部署MLLM的流式推理具有挑战性,这在很大程度上限制了MLLM在实际应用中的能力和使用。在本文中,我们介绍了Inf-MLLM,一种用于MLLM的高效推理框架,它能够在单个GPU上实现具有无限上下文的MLLM流式推理。Inf-MLLM基于我们对LLM和MLLM中注意力模式的关键观察,我们称之为“注意力鞍点”。 借助新发现的注意力模式,Inf-MLLM通过动态缓存最近的token和相关的token来维护大小受限的KV缓存。此外,Inf-MLLM提出了一种新颖的注意力偏差方法,使MLLM能够捕获长期依赖关系。我们表明,Inf-MLLM使多个LLM和MLLM能够在单个GPU上,对超过400万token的长文本和1小时长的视频的多轮对话中实现稳定的性能。此外,Inf-MLLM比StreamingLLM等现有方法表现出卓越的流式推理质量,并且比H2O快2倍。
🔬 方法详解
问题定义:现有MLLM在处理长上下文时,由于需要缓存大量的Key和Value状态(KV Cache),导致推理延迟高,内存消耗大。这使得MLLM难以在资源受限的边缘设备上进行流式推理,限制了其在实际应用中的部署。现有方法无法有效管理KV Cache,导致性能瓶颈。
核心思路:Inf-MLLM的核心思路是利用LLM和MLLM中存在的“注意力鞍点”模式,动态地选择性缓存KV Cache。通过只保留最近的token和与当前推理相关的token,可以显著减少KV Cache的大小,从而降低内存需求和推理延迟。此外,引入注意力偏差机制,弥补因选择性缓存而可能损失的长期依赖关系。
技术框架:Inf-MLLM的整体框架包括以下几个主要模块:1) 注意力鞍点检测模块:用于识别和定位注意力矩阵中的鞍点,从而确定需要保留的关键token。2) KV Cache动态管理模块:根据注意力鞍点检测结果,动态地更新和维护KV Cache,只保留最近的token和与鞍点相关的token。3) 注意力偏差模块:通过引入额外的偏差项,增强模型对长期依赖关系的建模能力。4) 推理引擎:利用优化后的KV Cache和注意力偏差,进行高效的流式推理。
关键创新:Inf-MLLM的关键创新在于:1) 发现了LLM和MLLM中的“注意力鞍点”模式,并将其用于指导KV Cache的管理。2) 提出了动态KV Cache管理策略,能够显著减少内存占用,同时保持推理性能。3) 引入了注意力偏差机制,有效缓解了因KV Cache裁剪而导致的长期依赖关系损失。
关键设计:注意力鞍点检测模块使用启发式算法或机器学习模型来识别注意力矩阵中的鞍点。KV Cache动态管理模块采用LRU(Least Recently Used)策略来管理最近的token,并根据注意力鞍点的重要性来决定是否保留其他token。注意力偏差模块通过在注意力权重中添加一个可学习的偏差项,来增强模型对长期依赖关系的建模能力。具体的参数设置和损失函数细节在论文中未明确说明,属于未知信息。
🖼️ 关键图片
📊 实验亮点
Inf-MLLM在长文本和长视频对话任务中表现出优异的性能。实验结果表明,Inf-MLLM能够在单个GPU上处理超过400万token的长文本,并支持1小时长的视频的多轮对话。与StreamingLLM等现有方法相比,Inf-MLLM具有更高的流式推理质量,并且比H2O快2倍。这些结果验证了Inf-MLLM的有效性和优越性。
🎯 应用场景
Inf-MLLM具有广泛的应用前景,尤其是在资源受限的边缘设备上部署MLLM的场景。例如,它可以应用于自动驾驶、机器人、智能助手等领域,实现低延迟、高效率的多模态信息处理和决策。该研究有望推动MLLM在实际应用中的普及,并促进相关技术的发展。
📄 摘要(原文)
Multimodal Large Language Models (MLLMs) are distinguished by their multimodal comprehensive ability and widely used in many real-world applications including GPT-4o, autonomous driving and robotics. Despite their impressive performance, the multimodal inputs always incur long context. The inference under long context requires caching massive Key and Value states (KV cache) of previous tokens, which introduces high latency and excessive memory consumption. Due to this reason, it is challenging to deploy streaming inference of MLLMs on edge devices, which largely constrains the power and usage of MLLMs in real-world applications. In this paper, we introduce Inf-MLLM, an efficient inference framework for MLLMs, which enable streaming inference of MLLM on a single GPU with infinite context. Inf-MLLM is based on our key observation of the attention pattern in both LLMs and MLLMs called "attention saddles". Thanks to the newly discovered attention pattern, Inf-MLLM maintains a size-constrained KV cache by dynamically caching recent tokens and relevant tokens. Furthermore, Inf-MLLM proposes attention bias, a novel approach to enable MLLMs to capture long-term dependency. We show that Inf-MLLM enables multiple LLMs and MLLMs to achieve stable performance over 4M-token long texts and multi-round conversations with 1-hour-long videos on a single GPU. In addition, Inf-MLLM exhibits superior streaming reasoning quality than existing methods such as StreamingLLM and 2x speedup than H2O.