遇见 YOLO26: 下一代视觉 AI。
Ultralytics
返回 Ultralytics 词汇表

KV Cache

了解 KV Cache 如何优化像 LLM 这样的 Transformer 模型。探索该技术如何减少推理延迟并提高 Ultralytics YOLO26 的效率。

KV Cache (Key-Value Cache) 是一项关键的优化技术,主要用于 大语言模型 (LLMs) 和其他基于 Transformer 的架构中,以加速 推理延迟 并降低计算成本。其核心在于,KV Cache 存储了由 注意力机制 为序列中先前 token 生成的 Key 和 Value 矩阵。通过保存这些中间计算结果,模型在生成每个新 token 时,无需为对话的整个历史记录重新计算注意力状态。这一过程将 文本生成 工作流从二次复杂度操作转变为线性操作,从而使得与聊天机器人和 AI 智能体 的实时交互变得切实可行。

Link to this section机制与优势#

在标准的 Transformer 模型中,生成下一个单词需要关注所有先前的单词以理解上下文。如果没有缓存,模型将需要在每一步都重新计算整个序列的数学关系。KV Cache 通过充当内存库解决了这个问题。

  • 速度提升: 通过从内存中检索预计算的 Key 和 Value,系统能显著加快 推理引擎 的速度。这对于需要低延迟的应用(例如客服机器人中的 实时推理)至关重要。
  • 资源效率: 虽然它增加了内存使用量(VRAM),但显著减少了每个 token 所需的计算量(FLOPs)。这种权衡通常通过诸如 模型量化 或分页等技术来管理,类似于操作系统管理 RAM 的方式。
  • 扩展上下文: 对 KV Cache 的高效管理使模型能够处理更大的 上下文窗口,从而使其能够处理长文档或在长时间内保持连贯的对话。

Link to this section实际应用#

KV Cache 是部署现代生成式 AI 的基础组件,但其原理也延伸到了 计算机视觉 (CV) 领域。

  1. 生成式聊天机器人: 诸如 ChatGPTClaude 等服务非常依赖 KV 缓存。当用户提出后续问题时,模型不会从头开始重新读取整个聊天历史。相反,它会将新的输入附加到上一轮的缓存状态中,从而实现近乎即时的响应。

  2. 视频理解:视频理解 任务中,模型会按顺序处理帧。与文本 token 类似,过去帧中的视觉特征可以被缓存,以帮助模型跟踪对象或识别动作,而无需重新处理整个视频历史。这对于时间上下文至关重要的 动作识别 尤为相关。

Link to this section高效内存管理#

随着模型规模的增长,KV Cache 的大小可能成为瓶颈,消耗掉数 GB 的 GPU 内存。近期的进展集中在优化这种存储方式上。

  • PagedAttention: 受操作系统中虚拟内存的启发,PagedAttention(由 vLLM 引入)允许将 KV Cache 存储在非连续的内存块中。这减少了碎片化并允许在 模型服务 期间实现更高的批处理大小。
  • KV Cache 量化: 为了节省空间,开发者通常会将 混合精度 或 int8 量化专门应用于缓存值。这减小了内存占用,使 RAM 有限的 边缘 AI 设备也能够运行高性能模型。
  • 提示词缓存 (Prompt Caching): 一种相关技术,将静态系统提示词(例如:“你是一位乐于助人的编程助手”)的 KV 状态计算一次,并在多个不同的用户会话中重复使用。这是在大规模优化 提示工程 工作流时的核心功能。

Link to this section区分相关概念#

区分 KV Cache 与其他缓存及优化术语非常有帮助:

  • KV Cache 与 提示词缓存 的区别: KV Cache 通常指在单个生成流期间使用的动态、逐 token 的内存。提示词缓存专门指存储固定输入指令的处理状态,以便在多个独立的推理调用中重复使用。
  • KV Cache 与 嵌入 (Embeddings) 的区别: 嵌入是输入数据(文本或图像)的向量表示,用以捕捉语义含义。KV Cache 存储的是在注意力层内从这些嵌入中派生出来的“激活值”(即 Keys 和 Values),其目的是专门用于序列生成。
  • KV Cache 与 模型权重 的区别: 模型权重是神经网络的静态学习参数。KV Cache 则由特定输入序列在前向传播过程中生成的动态临时数据组成。

Link to this section示例:视觉模型中的上下文#

虽然 KV 缓存最常用于 NLP,但维护状态的概念也适用于先进的视觉模型。在下面的示例中,我们使用 Ultralytics YOLO26 来模拟在视频跟踪场景中传递状态(上下文)的理念。在这里,跟踪器在帧之间维护对象的身份,这在概念上与缓存如何跨 token 维护上下文非常相似。

from ultralytics import YOLO

# Load the Ultralytics YOLO26 model
model = YOLO("yolo26n.pt")

# Track objects in a video, maintaining identity state across frames
# The 'track' mode effectively caches object features to link detections
results = model.track(source="https://ultralytics.com/images/bus.jpg", show=False)

# Print the ID of the tracked objects
if results[0].boxes.id is not None:
    print(f"Tracked IDs: {results[0].boxes.id.numpy()}")

希望管理数据集并部署优化后模型的开发者可以使用 Ultralytics Platform,它简化了从数据标注到高效 模型部署 的流程。对于那些对注意力机制有更深入研究兴趣的人,诸如 PyTorch 之类的库提供了实现这些缓存机制的基础构建块。

Explore solutions

Real-time AI that works with your team

机器人技术中的 AI

使用 Ultralytics YOLO 模型为智能机器赋能。机器人技术中的视觉 AI 可推动自主导航、感知、物体跟踪和实时控制。
了解更多
Real-time AI that works with your team

物流中的 AI

使用 Ultralytics YOLO 模型简化物流。视觉 AI 可实现包裹检查、分拣、车辆跟踪和实时仓库安全监控。
了解更多
Real-time AI that works with your team

零售业 AI

使用 Ultralytics YOLO 模型重塑零售业。视觉 AI 推动库存跟踪、货架监控、队列管理和更智能的客户洞察。
了解更多
Real-time AI that works with your team

医疗保健中的 AI

利用 Ultralytics YOLO 模型构建医疗保健解决方案。医疗保健中的视觉 AI 可助力更快速的医学影像分析、更智能的诊断和患者监测。
了解更多
Real-time AI that works with your team

制造业中的 AI

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 推动质量控制、缺陷检测、PPE 合规性和装配线自动化。
了解更多
Real-time AI that works with your operation

汽车中的 AI

将计算机视觉应用于汽车行业,并配合 Ultralytics YOLO 模型。汽车视觉 AI 可提升道路安全、辅助驾驶和车辆自动化,打造更智能的道路。
了解更多
Real-time AI tailored to your operation

农业中的 AI

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。赋能作物监测、牲畜追踪和精准农业,实现更高、更智能的产量。
了解更多
Real-time AI that works with your team

机器人技术中的 AI

使用 Ultralytics YOLO 模型为智能机器赋能。机器人技术中的视觉 AI 可推动自主导航、感知、物体跟踪和实时控制。
了解更多
Real-time AI that works with your team

物流中的 AI

使用 Ultralytics YOLO 模型简化物流。视觉 AI 可实现包裹检查、分拣、车辆跟踪和实时仓库安全监控。
了解更多
Real-time AI that works with your team

零售业 AI

使用 Ultralytics YOLO 模型重塑零售业。视觉 AI 推动库存跟踪、货架监控、队列管理和更智能的客户洞察。
了解更多
Real-time AI that works with your team

医疗保健中的 AI

利用 Ultralytics YOLO 模型构建医疗保健解决方案。医疗保健中的视觉 AI 可助力更快速的医学影像分析、更智能的诊断和患者监测。
了解更多
Real-time AI that works with your team

制造业中的 AI

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 推动质量控制、缺陷检测、PPE 合规性和装配线自动化。
了解更多
Real-time AI that works with your operation

汽车中的 AI

将计算机视觉应用于汽车行业,并配合 Ultralytics YOLO 模型。汽车视觉 AI 可提升道路安全、辅助驾驶和车辆自动化,打造更智能的道路。
了解更多
Real-time AI tailored to your operation

农业中的 AI

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。赋能作物监测、牲畜追踪和精准农业,实现更高、更智能的产量。
了解更多
Real-time AI that works with your team

机器人技术中的 AI

使用 Ultralytics YOLO 模型为智能机器赋能。机器人技术中的视觉 AI 可推动自主导航、感知、物体跟踪和实时控制。
了解更多
Real-time AI that works with your team

物流中的 AI

使用 Ultralytics YOLO 模型简化物流。视觉 AI 可实现包裹检查、分拣、车辆跟踪和实时仓库安全监控。
了解更多
Real-time AI that works with your team

零售业 AI

使用 Ultralytics YOLO 模型重塑零售业。视觉 AI 推动库存跟踪、货架监控、队列管理和更智能的客户洞察。
了解更多
Real-time AI that works with your team

医疗保健中的 AI

利用 Ultralytics YOLO 模型构建医疗保健解决方案。医疗保健中的视觉 AI 可助力更快速的医学影像分析、更智能的诊断和患者监测。
了解更多
Real-time AI that works with your team

制造业中的 AI

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 推动质量控制、缺陷检测、PPE 合规性和装配线自动化。
了解更多
Real-time AI that works with your operation

汽车中的 AI

将计算机视觉应用于汽车行业,并配合 Ultralytics YOLO 模型。汽车视觉 AI 可提升道路安全、辅助驾驶和车辆自动化,打造更智能的道路。
了解更多
Real-time AI tailored to your operation

农业中的 AI

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。赋能作物监测、牲畜追踪和精准农业,实现更高、更智能的产量。
了解更多

让我们一起构建 AI 的未来!

开启你的机器学习未来之旅