📢 Gate广场 #MBG任务挑战# 发帖赢大奖活动火热开启!
想要瓜分1,000枚MBG?现在就来参与,展示你的洞察与实操,成为MBG推广达人!
💰️ 本期将评选出20位优质发帖用户,每人可轻松获得50枚MBG!
如何参与:
1️⃣ 调研MBG项目
对MBG的基本面、社区治理、发展目标、代币经济模型等方面进行研究,分享你对项目的深度研究。
2️⃣ 参与并分享真实体验
参与MBG相关活动(包括CandyDrop、Launchpool或现货交易),并晒出你的参与截图、收益图或实用教程。可以是收益展示、简明易懂的新手攻略、小窍门,也可以是现货行情点位分析,内容详实优先。
3️⃣ 鼓励带新互动
如果你的帖子吸引到他人参与活动,或者有好友评论“已参与/已交易”,将大幅提升你的获奖概率!
MBG热门活动(帖文需附下列活动链接):
Gate第287期Launchpool:MBG — 质押ETH、MBG即可免费瓜分112,500 MBG,每小时领取奖励!参与攻略见公告:https://www.gate.com/announcements/article/46230
Gate CandyDrop第55期:CandyDrop x MBG — 通过首次交易、交易MBG、邀请好友注册交易即可分187,500 MBG!参与攻略见公告:https://www.gate.com/announcements
最多400万token上下文、推理提速22倍,StreamingLLM火了,已获GitHub 2.5K星
编辑:蛋酱
如果你体验过与任何一款对话式 AI 机器人的交流,你一定能想起某些极具「挫败感」的时刻。比如,你在前一天的对话中讲述过的要点,被 AI 忘得干干净净……
这是因为当前的多数 LLM 只能记住有限的上下文,就像为考试而临时抱佛脚的学生,稍加盘问就会「露出马脚」。
想象一下,如果 AI 助手在聊天中能够根据上下文参考几周或几个月前的对话,或者,你可以要求 AI 助手总结长达数千页的报告,这样的能力是不是令人羡慕?
为了让 LLM 记住更多、记得更好,研究者们正在不断努力。最近,来自 MIT、Meta AI、CMU 的研究者提出了一种名为「StreamingLLM」的方法,使语言模型能够流畅地处理无穷无尽的文本。
StreamingLLM 的工作原理是识别并保存模型固有的「注意力池」(attention sinks)锚定其推理的初始 token。结合最近 token 的滚动缓存,StreamingLLM 的推理速度提高了 22 倍,而不需要牺牲任何的准确性。短短几天,该项目在 GitHub 平台已斩获 2.5K 星:
方法创新
通常,LLM 在预训练时受到注意力窗口的限制。尽管为扩大这一窗口大小、提高训练和推理效率,此前已有很多工作,但 LLM 可接受的序列长度仍然是有限的,这对于持久部署来说并不友好。
在这篇论文中,研究者首先介绍了 LLM 流应用的概念,并提出了一个问题:「能否在不牺牲效率和性能的情况下以无限长输入部署 LLM?」
将 LLM 应用于无限长输入流时,会面临两个主要挑战:
1、在解码阶段,基于 transformer 的 LLM 会缓存所有先前 token 的 Key 和 Value 状态(KV),如图 1 (a) 所示,这可能会导致内存使用过多,并增加解码延迟;
2、现有模型的长度外推能力有限,即当序列长度超过预训练时设定的注意力窗口大小时,其性能就会下降。
在理解窗口注意力失效的过程中,研究者发现了自回归 LLM 的一个有趣现象:如图 2 所示,大量注意力分数被分配给了初始 token,而不管这些 token 与语言建模任务是否相关。
基于上述洞察,研究者提出了 StreamingLLM,这是一个简单而高效的框架,它可以让使用有限注意力窗口训练的注意力模型在不进行微调的情况下处理无限长的文本。
StreamingLLM 利用了注意力池具有高注意力值这一事实,保留这些注意力池可以使注意力分数分布接近正态分布。因此,StreamingLLM 只需保留注意力池 token 的 KV 值(只需 4 个初始 token 即可)和滑动窗口的 KV 值,就能锚定注意力计算并稳定模型的性能。
使用 StreamingLLM,包括 Llama-2-[7,13,70] B、MPT-[7,30] B、Falcon-[7,40] B 和 Pythia [2.9,6.9,12] B 在内的模型可以可靠地模拟 400 万个 token,甚至更多。
与唯一可行的 baseline—— 重新计算滑动窗口相比,StreamingLLM 的速度提高了 22.2 倍,而没有损耗性能。
测评
在实验环节,如图 3 所示,在跨度为 20K token 的文本上,StreamingLLM 的困惑度可以与 Oracle 基线(重新计算滑动窗口)相媲美。同时,当输入长度超过预训练窗口时,密集注意力就会失效,而当输入长度超过缓存大小时,窗口注意力就会陷入困境,导致初始 token 被剔除。
最后,研究者将 StreamingLLM 的解码延迟和内存使用率与重新计算滑动窗口进行了比较,并使用 Llama-2-7B 和 Llama-2-13B 模型在单个英伟达 A6000 GPU 上进行了测试。如图 10 所示,随着缓存大小的增加,StreamingLLM 的解码速度呈线性增长。后者解码延迟则呈二次曲线上升。实验证明,StreamingLLM 实现了令人印象深刻的提速,每个 token 速度的提升高达 22.2 倍。