LazyLLM:长上下文场景下提高LLM推理效率
LazyLLM旨在优化大型语言模型(LLM)在处理长文本语境下的推理效率。传统上,LLM的推理过程分为预填充和解码两个阶段,其中预填充阶段负责计算并存储输入提示的所有token的键值(KV)缓存,这一步骤在面对长提示时会显著增加首次生成token的时间消耗,成为效率瓶颈。LazyLLM通过动态剪枝策略解决了这一问题,它仅计算对下一个token预测至关重要的KV,并将剩余token的计算推迟到它们变得相关时。不同于一次性剪枝整个提示的静态方法,LazyLLM允许模型在不同生成步骤中灵活选取不同的上下文子集,即使这些子集在先前步骤中已被剪枝。LazyLLM能够大幅减少首次生成token的时间,同时几乎不牺牲性能。此外,该方法可以无缝集成到现有的基于Transformer的LLM中,无需任何微调,即可提升推理速度。

1 动态Token剪枝
推理过程分为两个阶段:预填充(Prefilling)和解码(Decoding)。预填充阶段需要计算所有提示(Prompt)token的键值(KV)缓存,这在长提示的情况下会显著增加“首次生成token时间”(Time-To-First-Token, TTFT),而成为性能瓶颈。动态token剪枝旨在选择性地计算那些对下一个token预测至关重要token的KV缓存。
-
方法: 采用渐进式token剪枝(Progressive Token Pruning),在预填充阶段而且在解码阶段动态选择重要token进行计算,允许模型在不同生成步骤中动态选择上下文的不同子集,战略性地在后期层中剪枝更多token,而在早期层中保留更多token,以平衡效率和性能。
-
实现: 在每个生成步骤中,使用注意力图确定token的重要性。具体来说,使用注意力概率来决定输入token相对于要预测的下一个token的重要性。与静态剪枝不同,动态剪枝在每个步骤优化下一个token的预测,即使某些token在先前的步骤中被剪枝过也可能再次被选中。

2 渐进式KV增长
传统的LLM推理过程中,预填充阶段需要计算所有输入token的KV缓存,这一步骤会显著增加生成第一个token所需的时间,成为生成过程中的瓶颈。通过分析,发现并非所有的输入token对于预测下一个token都是必要的,许多token可以被剪枝而不影响输出质量。LazyLLM采用动态token剪枝策略,只计算那些对下一个token预测重要的KV值,而“懒惰地”将剩余令牌的计算推迟到它们变得相关时。该方法允许模型在不同的生成步骤中动态地从上下文中选择不同的token子集,即使这些token在之前的步骤中被剪枝。
-
累积token使用率:累积token使用率定义为每个给定步骤的KV缓存大小,展示了在不同生成步骤中使用的token比例及其反向未使用的token比例。
-
层级敏感性:后期Transformer层相对于前期层对token剪枝更为不敏感,这意味着后期层保持更少的token也能有较好的性能。为了平衡速度和准确性,采用渐进式剪枝,早期层保留更多的token,而在后期层逐渐减少。
-
辅助缓存(Aux Cache):由于每个解码步骤依赖于预填充阶段计算的KV缓存来计算注意力,当token在后续层的KV缓存中缺失时,模型无法检索其KV值。引入辅助缓存以存储被剪枝token的隐藏状态,以便在后续迭代中潜在地检索,避免了重复计算同一token,确保每个token在每个Transformer层最多计算一次,并保证LazyLLM的最坏运行时间不会慢于基线。
3 结语
文章提出了LazyLLM技术,这是一种针对长上下文场景下提高大型语言模型(LLM)推理效率的方法,它通过动态选择性计算关键token来加速预填充阶段,同时保持推理性能,无需额外的模型微调。并且,LazyLLM可以无缝集成到现有的基于Transformer的LLM中,提高推理速度。
论文题目:LazyLLM: Dynamic Token Pruning for Efficient Long Context LLM Inference
论文链接:https://arxiv.org/abs/2407.14057
PS: 欢迎大家扫码关注公众号_,我们一起在AI的世界中探索前行,期待共同进步!

相关文章:
LazyLLM:长上下文场景下提高LLM推理效率
LazyLLM旨在优化大型语言模型(LLM)在处理长文本语境下的推理效率。传统上,LLM的推理过程分为预填充和解码两个阶段,其中预填充阶段负责计算并存储输入提示的所有token的键值(KV)缓存,这一步骤在…...
PDF文件点击打印无反应?是何原因造成能解决吗?
PDF无法打印怎么处理?在我们工作中,经常会遇见各种各样的文件问题,当我们想要将PDF文件打印出来纸质版使用,却不知什么原因,显示PDF无法打印,这时应该怎么处理呢? 一般情况下,PDF文件…...
初学者友好!从零到一快速上手PyCharm安装的超详细图解+避坑指南教程
一,pycharm的官网下载 下载地址:www.jetbrains.com/pycharm/ 本文将从 Python解释器安装到Pycharm专业版安装和配置汉化等使用都进行了详细介绍,希望能够帮助到大家。 Python解释器&Pycharm安装包&Pycharm破姐插件我都打包好了。 …...
AI大模型需要什么样的数据?
数据将是未来AI大模型竞争的关键要素 人工智能发展的突破得益于高质量数据的发展。例如,大型语言模型的最新进展依赖于更高质量、更丰富的训练数据集:与GPT-2相比,GPT-3对模型架构只进行了微小的修改,但花费精力收集更大的高质量…...
Java每日一练_模拟面试题1(死锁)
一、死锁的条件 死锁通常发生在两个或者更多的线程相互等待对方释放资源,从而导致它们都无法继续执行。死锁的条件通常被描述为四个必要条件,也就是互斥条件、不可剥夺条件、占有并等待条件和循环等待条件。 互斥条件:资源不能被共享&#x…...
第三方库认识- Mysql 数据库 API 认识
文章目录 一、msyql数据库API接口1.初始化mysql_init()——mysql_init2.链接数据库mysql_real_connect——mysql_real_connect3.设置当前客户端的字符集——mysql_set_character_set4.选择操作的数据库——mysql_select_db5.执行sql语句——mysql_query6.保存查询结果到本地——…...
Python兼职接单全攻略:掌握技能,拓宽收入渠道
引言 随着Python在数据处理、Web开发、自动化办公、爬虫技术等多个领域的广泛应用,越来越多的人开始利用Python技能进行兼职接单,以此拓宽收入渠道。本文将详细介绍Python兼职接单的注意事项、所需技能水平、常见单子类型、接单途径及平台,帮…...
一键编译并启动一个 ARM Linux qemu 虚拟机
需要事先自己编译 qemu-system-arm 可执行文件; 1,编译创建ARM 虚拟机 #!/usr/bin/bash sudo lssudo apt-get install gcc-arm-linux-gnueabi#wget https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.10.tar.gztar zxf linux-kernel-v5.10…...
KubeVirt虚拟机存储及网络卸载加速解决方案
1. 方案背景 1.1. KubeVirt介绍 随着云计算和容器技术的飞速发展,Kubernetes已成为业界公认的容器编排标准,为用户提供了强大、灵活且可扩展的平台来部署和管理各类应用。然而,在企业的实际应用中,仍有许多传统应用或遗留系统难…...
JVM—对象已死?
参考资料:深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)周志明 在堆里面存放着 Java 世界中几乎所有的对象实例,垃圾收集器在对堆进行回收前,第一件事情就是要确定这些对象之中哪些还“存活”着,哪些已经“死去”。 1、如何判…...
【前端面试3+1】20 css三栏布局6种实现方式、多行文本溢出怎么实现、token过期了怎么处理、【二叉树的中序遍历】
一、css三栏布局6种实现方式 1.浮动布局(Floats) .container {overflow: auto; /* 清除浮动 */ }.left, .right {width: 20%; /* 左右栏宽度 */float: left; }.middle {width: 60%; /* 中间栏宽度 */margin: 0 20%; /* 左右栏宽度 */ } 2.Flexbox .conta…...
【C++】vector介绍以及模拟实现(超级详细<=>源码并存)
欢迎来到我的Blog,点击关注哦💕 【C】vector介绍以及模拟实现 前言vector介绍 vector常见操作构造函数iteratorcapacitymodify vector模拟实现存储结构默认构造函数构造函数拷贝构造函数赋值运算符重载析构函数 容量(capacity)si…...
【Redis 进阶】主从复制(重点理解流程和原理)
在分布式系统中为了解决单点问题(某个服务器程序只有一个节点(只搞一个物理服务器来部署这个服务器程序)。可用性不高:如果这个机器挂了意味着服务就中断了;性能 / 支持的并发量比较有限)。通常会把数据复制…...
Git常用命
转自:https://blog.csdn.net/ahjxhy2010/article/details/80047553 1.查看某个文件或目录的修改历史 git log filename #查看fileName相关的commit记录 git log -p filenam # 显示每次提交的diff#只看某次提交中的某个文件变化,commit-id 文件名…...
强化学习时序差分算法之Q-learning算法——以悬崖漫步环境为例
0.简介 基于时序差分算法的强化学习算法除了Sarsa算法以外还有一种著名算法为Q-learning算法,为离线策略算法,与在线策略算法Sarsa算法相比,其时序差分更新方式变为 Q(St,At)←Q(St,At)α[Rt1γmaxaQ(St1,a)−Q(St,At)] 对于 Sarsa 来说&am…...
111推流111
推流推流...
刷题——数组中只出现一次的两个数字
数组中只出现一次的两个数字_牛客题霸_牛客网 描述 一个整型数组里除了两个数字只出现一次,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。 数据范围:数组长度 2≤n≤10002≤n≤1000,数组中每个数的大小 0<val≤100000…...
《剖析程序员面试“八股文”:助力、阻力还是噱头?》
#“八股文”在实际工作中是助力、阻力还是空谈? 作为现在各类大中小企业面试程序员时的必问内容,“八股文”似乎是很重要的存在。但“八股文”是否能在实际工作中发挥它“敲门砖”应有的作用呢?有IT人士不禁发出疑问:程序员面试考…...
Redis过期key的删除策略
在 Redis 中,设置了过期时间的键在过期时间到达后,并不会立即从内存中删除。如果不是,那过期后到底什么时候被删除呢? 下面对这三种删除策略进行具体分析。 立即删除: 立即删除能够保证内存数据的及时性和空间的有效…...
软件管理
设备挂载在目录下才可以读 挂载类似于将u盘插在电脑上 mount /dev/sr0 /opt/openeuler/ vim /etc/rc.d/rc.local #开机自运行脚本,将挂载命令写入脚本,并给这个脚本执行权限 chmod x /etc/rc.d/rc.local [rootlocalhost ~]# cd /etc/yum.repos.d/ […...
为什么Windows用户需要APK安装器?三大场景解决你的跨平台痛点
为什么Windows用户需要APK安装器?三大场景解决你的跨平台痛点 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾经遇到过这样的困境:在电…...
终极抢票指南:如何用DamaiHelper轻松获取演唱会门票
终极抢票指南:如何用DamaiHelper轻松获取演唱会门票 【免费下载链接】damaihelper 支持大麦网,淘票票、缤玩岛等多个平台,演唱会演出抢票脚本 项目地址: https://gitcode.com/gh_mirrors/dam/damaihelper 你是否曾为抢不到心仪演唱会门…...
自动化测试系统开关架构与继电器选型指南
1. 自动化测试系统中的开关架构选择在自动化测试系统中,开关架构的选择直接影响着测试效率、信号完整性和系统成本。根据测试需求和被测设备(DUT)特性,我们可以将开关架构分为四种基本类型。1.1 无开关架构无开关架构是最直接的连接方式,每个…...
MiGPT终极指南:如何将小爱音箱改造成AI语音助手
MiGPT终极指南:如何将小爱音箱改造成AI语音助手 【免费下载链接】mi-gpt 🏠 将小爱音箱接入 ChatGPT 和豆包,改造成你的专属语音助手。 项目地址: https://gitcode.com/GitHub_Trending/mi/mi-gpt 在智能家居日益普及的今天࿰…...
Flutter+开源鸿蒙实战|城市共享驿站智能存取系统 Day7 最终闭环篇 多端适配演示+毕设总结+源码梳理+功能扩展
Flutter开源鸿蒙实战|城市共享驿站智能存取系统 Day7 最终闭环篇 多端适配演示毕设总结源码梳理功能扩展 欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.csdn.net <!-- Schema.org 结构化数据 --> <script type"applicati…...
搜极星破局:拆解企业 “看不见、控不住、比不过” 困局
引言:AI 时代,企业陷入三重信息绝境2026 年,生成式 AI 全面主导用户决策链路,品牌竞争从搜索排名转向 AI 认知权重。但多数企业正深陷看不见、控不住、比不过的三重困局:看不见自身在 AI 平台的真实曝光状态࿰…...
国产替代之NVMFS5C673NWFT1G 与 VBQA1615 参数对比报告
N沟道功率MOSFET参数对比分析报告一、产品概述NVMFS5C673NWFT1G:安森美(onsemi)N沟道功率MOSFET,耐压60V,极低导通电阻(10.7mΩ),采用先进沟槽工艺,具有低栅极电荷和电容…...
2026 年 Docker 镜像加速终极方案:告别拉取卡顿,一键提速
大家好!相信很多开发者都遇到过这样的问题:在配置 Docker 环境时,docker pull 命令经常卡住不动,进度条仿佛静止了一般,严重影响开发效率。为了解决这个痛点,我深入研究并测试了多种方案,最终整…...
基于矩阵分解与独立向量分析的深度神经网络后门攻击检测方法
1. 项目概述:当深度神经网络遭遇“潜伏者”在深度神经网络(DNN)如卷积神经网络(CNN)、Transformer模型等成为计算机视觉、自然语言处理乃至语音识别领域基石的今天,我们享受着其带来的高精度与自动化红利。…...
(5月最新版)OpenClaw 小龙虾 Windows 一键安装与问题排查
OpenClaw(小龙虾)Windows 11 一键部署教程|2026 新版|零代码・免配置・解压即用 适用系统:Windows 11 专业版 / 家庭版 / 正式版(全版本兼容)当前版本:v2.7.1 下载地址:…...
