深圳Yolo 视觉
深圳
立即加入
词汇表

Prompt 缓存

通过提示缓存提高 AI 效率!了解如何使用这种强大的技术来减少延迟、降低成本和扩展 AI 应用程序。

提示缓存是一种专门的优化技术,用于部署 大型语言模型(LLM)的部署中使用的专门优化技术。 大幅减少推理延迟和计算成本。 计算成本。在生成式人工智能中,提示缓存是一种专门的优化技术、 在生成式人工智能中,处理提示涉及将文本转换为数字表示法,并使用计算器计算每个标记之间的关系。 之间的关系。 注意机制计算每个标记之间的关系。当提示的大部分 提示的很大一部分--比如一条长长的系统指令或一组示例--在多次请求中保持静态时,提示缓存可以让系统存储中间的数学运算结果。 缓存允许系统存储静态文本的中间数学状态(特别是键值对)。 文本。推理引擎无需为每次新查询重新计算这些状态,而是从内存中检索这些状态。 推理引擎会从内存中检索这些状态、 这样,模型就能将其处理能力完全集中在输入的新动态部分上。

机制和益处

提示缓存背后的核心机制依赖于有效管理上下文窗口。 有效管理上下文窗口。当 LLM 处理输入时 输入时,会生成一个 "KV 缓存"(键值缓存),代表模型对文本的理解。 的理解。提示缓存将提示的segment (前缀)视为可重复使用的资产。

  • 减少延迟:通过跳过对缓存前缀的计算,首次令牌时间 (TTFT) 到第一个令牌的时间 (TTFT) 大大缩短,从而在 实时推理场景中响应速度。
  • 成本效益:因为 图形处理器(GPU) 花在处理冗余令牌上的时间更少,因此每个请求所需的总体计算资源减少,从而降低了 运行 人工智能 (AI)服务的运营成本。
  • 提高吞吐量:系统可处理更大量的并发请求,因为每个请求的计算负担已降至最低。 每个请求的计算负担降至最低。

实际应用

即时缓存正在改变开发人员构建和扩展 机器学习 (ML)应用程序、 特别是那些涉及大量文本处理的应用。

  1. 情境感知编码助手:在提供代码自动补全功能的工具中,当前文件和引用库的全部内容通常作为提示上下文。 当前文件和引用库的全部内容通常作为提示上下文。这个 "前缀 "可能长达数千 长的标记。通过使用提示缓存,助手可以缓存文件的状态。当开发人员键入(添加 新标记)时,模型只处理新字符,而不是重新读取整个文件结构,这样就能实现亚秒级的响应时间。 现代集成开发环境(IDE 响应时间。
  2. 文档分析和问答:考虑设计一个系统来回答有关 50 页 PDF 手册的问题。使用 检索增强生成 (RAG),将手册文本输入模型。如果没有缓存,每次用户提问时,模型必须 重新处理整个手册和问题。有了及时缓存,理解手册的繁重计算工作只需完成一次并存储起来。 手册的繁重计算工作只需完成一次并存储起来。随后的问题会附加到缓存状态,从而使 问题解答交互变得流畅高效。 高效。

技术实施概念

虽然提示缓存是 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 术语表中的其他术语,以便采用正确的优化策略。

  • Vs.提示工程:提示工程的重点是精心设计文本输入的内容结构,以引起 最佳响应。提示缓存侧重于优化输入的计算执行
  • Vs.语义搜索:语义搜索(常用于缓存输出)查找类似的查询,返回预先编写好的 响应。提示缓存仍在运行模型,以生成唯一的响应;它只是通过快进方式 读取输入上下文。
  • Vs.微调:微调永久性地改变 模型权重来学习新信息。提示 缓存不会改变模型的权重,而是暂时存储特定输入会话的激活状态。 会话。
  • Vs.模型量化量化降低了模型参数的精度,以节省内存并加快整体推理速度。 提示缓存是专门针对输入数据的运行时优化,通常与量化结合使用。 量化。

提示缓存是 自然语言处理 (NLP)、 效率原则是通用的。在 计算机视觉(CV)中,像 YOLO11等模型在架构上进行了速度优化,以确保 物体检测任务实现高帧 无需自回归语言模型中使用的同类状态缓存。然而,随着 多模态模型发展到同时处理视频和文本时 文本的多模态模型的发展,缓存视觉标记正成为一个新兴的研究领域。 arXiv.

加入Ultralytics 社区

加入人工智能的未来。与全球创新者联系、协作和共同成长

立即加入