通过提示缓存提高 AI 效率!了解如何使用这种强大的技术来减少延迟、降低成本和扩展 AI 应用程序。
提示缓存是一种专门的优化技术,用于部署 大型语言模型(LLM)的部署中使用的专门优化技术。 大幅减少推理延迟和计算成本。 计算成本。在生成式人工智能中,提示缓存是一种专门的优化技术、 在生成式人工智能中,处理提示涉及将文本转换为数字表示法,并使用计算器计算每个标记之间的关系。 之间的关系。 注意机制计算每个标记之间的关系。当提示的大部分 提示的很大一部分--比如一条长长的系统指令或一组示例--在多次请求中保持静态时,提示缓存可以让系统存储中间的数学运算结果。 缓存允许系统存储静态文本的中间数学状态(特别是键值对)。 文本。推理引擎无需为每次新查询重新计算这些状态,而是从内存中检索这些状态。 推理引擎会从内存中检索这些状态、 这样,模型就能将其处理能力完全集中在输入的新动态部分上。
提示缓存背后的核心机制依赖于有效管理上下文窗口。 有效管理上下文窗口。当 LLM 处理输入时 输入时,会生成一个 "KV 缓存"(键值缓存),代表模型对文本的理解。 的理解。提示缓存将提示的segment (前缀)视为可重复使用的资产。
即时缓存正在改变开发人员构建和扩展 机器学习 (ML)应用程序、 特别是那些涉及大量文本处理的应用。
虽然提示缓存是 LLM 推理服务器的内部功能,但了解其数据结构有助于澄清这一概念。 缓存 "主要存储代表注意力状态的张量(多维数组)。
下面的Python 代码段使用 torch 展示了键值缓存tensor的形状和概念、
的形状和概念:
import torch
# Simulate a KV Cache tensor for a transformer model
# Shape: (Batch_Size, Num_Heads, Sequence_Length, Head_Dim)
batch_size, num_heads, seq_len, head_dim = 1, 32, 1024, 128
# Create a random tensor representing the pre-computed state of a long prompt
kv_cache_state = torch.randn(batch_size, num_heads, seq_len, head_dim)
print(f"Cached state shape: {kv_cache_state.shape}")
print(f"Number of cached parameters: {kv_cache_state.numel()}")
# In practice, this tensor is passed to the model's forward() method
# to skip processing the first 1024 tokens.
将提示缓存与 Ultralytics 术语表中的其他术语区分开来非常重要。 Ultralytics 术语表中的其他术语,以便采用正确的优化策略。
提示缓存是 自然语言处理 (NLP)、 效率原则是通用的。在 计算机视觉(CV)中,像 YOLO11等模型在架构上进行了速度优化,以确保 物体检测任务实现高帧 无需自回归语言模型中使用的同类状态缓存。然而,随着 多模态模型发展到同时处理视频和文本时 文本的多模态模型的发展,缓存视觉标记正成为一个新兴的研究领域。 arXiv.