KV Cache 详解:新手也能理解的 LLM 推理加速技巧

KV Cache 详解:新手也能理解的 LLM 推理加速技巧

在大语言模型(LLM)推理时,我们通常使用 KV Cache(Key-Value Cache) 来加速计算,避免重复计算已有的 token。这篇文章将从零开始,帮助你理解 KV Cache 的作用、工作原理,以及它如何显著提升推理效率。

1. KV Cache 在推理中的作用

Transformer 生成文本 时,每次只会生成一个新 token,然后再把这个 token 作为输入继续生成下一个 token。

对于 标准的自注意力(Self-Attention),完整计算的公式是:

\text{Attention}(Q, K, V) = \text{softmax}(\frac{Q K^T}{\sqrt{d_k}}) V

其中:

  • Q:当前 token 的查询向量

  • K:所有 tokens 的键向量

  • V:所有 tokens 的值向量

在训练时,所有 K, V 都是同时计算的。但在 推理(inference) 时,我们可以用 KV Cache 来优化计算。

2. 什么是 KV Cache?

Transformer 生成文本的过程中,模型是 自回归(Autoregressive)生成的,即每次生成一个 token,然后将其作为输入继续生成下一个 token。例如:

  • 输入:"The cat is"

  • 生成:"The cat is cute"

  • 继续生成:"The cat is cute and"

在标准的 Transformer 自注意力(Self-Attention)计算中,每个新 token 都需要重新计算整个序列的 Key(K)和 Value(V),即:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

茫茫人海一粒沙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值