Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KV-Cache 稀疏化推理框架

致谢 / 参考项目

本项目在实现过程中参考并融合了以下开源工作,在此表示感谢:

这些项目为 KV Cache 稀疏化与高效推理提供了重要思路。本项目在此基础上结合多种算法思想,并对缓存替换策略和实现方式进行了进一步优化。


项目简介

在大型语言模型(LLM)的推理过程中,键值缓存(Key-Value Cache, KV Cache) 是影响模型推理效率和上下文长度的关键组件。
在基于 Transformer 架构的模型中,由于自注意力机制的特性:

  • 计算复杂度 随序列长度 呈二次方增长
  • KV Cache 内存占用 随序列长度 线性增长

因此,在部署大规模模型或进行长文本生成任务时,KV Cache 的规模往往成为 限制推理效率和上下文长度的重要瓶颈

为了解决这一问题,本项目提出了一种 融合多种 KV Cache 压缩与稀疏化算法的高效推理方案。该方法结合了以下三种算法的优势:

  • IntactKV
  • StreamingLLM
  • H2O

通过改进 缓存替换策略(Cache Replacement Strategy) 并优化实现方式,本方法在无需额外训练或微调模型的情况下,实现了 KV Cache 稀疏化与高效推理


方法特点

本项目的核心特点包括:

  • 🚀 无需训练或微调
    支持直接在已有模型上使用

  • 高效推理性能
    显著提升模型推理吞吐量

  • 🧠 长上下文支持
    在有限显存预算下支持更长的上下文

  • 🔌 即插即用
    可方便集成到现有 LLM 推理框架中

  • 📦 显存友好
    通过 KV Cache 稀疏化显著降低显存占用

此外,本项目还对部分代码进行了 重构与优化,扩展了对部分模型特性的支持,例如基于 Rotary Position Embedding(RoPE) 的模型结构。


实验设置

实验基于以下环境进行:

模型

  • Llama 3.2 1B Instruct

硬件

  • NVIDIA RTX 3060 (12GB)

测试任务

  • 长文本生成
  • 文档总结

实验主要对比以下方法:

  1. 全量自注意力模型(Full Attention)
  2. 各单一 KV Cache 稀疏化算法
  3. 本文提出的融合算法

实验结果

20% KV Cache 显存预算 的条件下:

  • 相比 全量自注意力模型

    • 推理吞吐量 最高提升 29.12%
    • 各项任务性能 保持在 95% 以上
  • 相比 原始算法实现

    • 推理吞吐量 最高提升 35.19%

实验结果表明,该方法在 推理效率与显存占用之间取得了良好的平衡,能够在保持模型性能的同时显著提升推理效率。


应用场景

该方法适用于多种 LLM 推理场景,例如:

  • 长文本生成
  • 文档总结
  • 长上下文对话系统
  • 显存受限的 GPU 推理环境
  • 边缘设备部署

关键词

  • KV Cache 稀疏化
  • 长上下文推理
  • 大语言模型推理优化
  • 缓存压缩
  • 旋转位置编码

About

大模型键值缓存压缩高效推理方法,本科毕业设计项目

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages