网站点击代码能进网站的浏览器
2026/5/19 1:40:27 网站建设 项目流程
网站点击代码,能进网站的浏览器,智能建站服务平台,芜湖企业网站建设0. 省流版#xff08;TL;DR#xff09; 痛点#xff1a;长文本推理中#xff0c;Full Attention 太慢太贵#xff0c;固定比例的 Sparse Attention 又容易在困难任务上掉点。Method#xff1a;Elastic Attention。在 Attention 层引入类似 MoE 的 Router#xff08;路由…0. 省流版TL;DR痛点长文本推理中Full Attention 太慢太贵固定比例的 Sparse Attention 又容易在困难任务上掉点。MethodElastic Attention。在 Attention 层引入类似 MoE 的Router路由器根据输入内容动态决定每个 Head 是走 Full Attention全关注还是 Sparse Attention稀疏关注。工程优化手写了Fused Kernel在一个 Kernel 内并行处理稀疏和稠密计算拒绝 Python 层面的串行调度延迟。效果在 LongBench 等多个榜单上超越 DuoAttention、InfLLM-v2 等基线性能逼近部分超越 Full Attention但速度显著提升 。1. 为什么我们需要“弹性”的注意力大模型处理长文本时Attention 的 复杂度是最大的拦路虎 。为了解决这个问题业界提出了很多Hybrid Attention混合注意力方案比如 DuoAttention 或 PruLong。它们的核心思想是一部分 Head 负责看全局Full Attention一部分 Head 只看局部或滑动窗口Sparse Attention。但现有的方法有一个明显的问题即使是 Hybrid 策略其“稀疏 vs 稠密”的比例通常是静态的或者是预先设定好的 。然而我们在实验中发现下游任务对稀疏度的敏感性截然不同 Sparsity-Robust 任务如文档摘要只需要粗粒度信息很高的稀疏度也能由不错的效果。Sparsity-Sensitive 任务如多跳 QA需要精准检索细节稀疏度一高性能立马崩盘。如果模型不能动态调整计算策略就必然会在“效率”和“效果”之间顾此失彼。于是我们想到了 MoE。2. Elastic AttentionAttention 层面的 MoEMoEMixture-of-Experts的核心魅力在于Dynamic Computation动态计算。既然 MLP 层可以路由到不同的专家为什么 Attention 层不能路由到不同的计算模式呢2.1 核心架构Attention Router我们在预训练好的 LLM如 Qwen3, Llama-3.1中插入了一个轻量级的Attention Router。它的工作原理如下输入感知Router 接收当前的 Key hidden states 作为输入 。路由决策通过一个简单的 MLP 网络Router 为每一层的每一个 Head 生成一个路由信号r rr。r 0 r 0r0该 Head 执行 Full Attention (FA)确保精准召回。r 1 r 1r1该 Head 执行 Sparse Attention (SA)大幅节省计算 。结果融合最后将不同模式计算出的结果 Concat 起来 。整个过程完全是Instance-aware输入感知的。面对简单的 Token 或任务Router 会自动加大 SA 的比例面对复杂的推理它会自动切换回 FA。训练Trick为了让离散的路由决策0或1可导我们使用了Gumbel-Softmax结合Straight-Through Estimator (STE)技术确保在反向传播时梯度能正常流动 。2.2 并不增加负担大家可能会担心 Router 会不会很重完全不会。对于 8B 模型Attention Router 仅增加了每层 0.27M 参数且不需要对 Backbone 进行重新训练只需12小时8卡 A800的轻量级微调即可完成适配 。3. 硬核工程优化Fused Kernel这是我们在工程实现上花费精力最多的地方。在 PyTorch 层面实现这种混合注意力通常很慢因为你需要先把 Head 分成两组FA组和SA组分别计算后再拼回去。这种Serial Dispatch串行调度会导致 GPU 上的 Kernel Launch 开销巨大且破坏了流水线并行 。为了解决这个问题我们基于 Triton/CUDA 开发了Fused Kernel融合算子。统一视角我们将路由决策作为 Metadata 传入 Kernel 。并行执行Kernel 内部通过 Thread Block 分支逻辑让同一个 Kernel Launch 可以同时处理执行 FA 的 Head 和执行 SA 的 Head 。效果相比 PyTorch 原生实现Prefill 阶段获得了显著的加速显存占用也大幅降低 。4. 实验结果效果与速度的双赢我们在Qwen3-4B/8B和Llama-3.1-8B上进行了广泛验证 。4.1 性能表现在LongBench-E和LongBench-V2等主流榜单上Elastic Attention 的平均性能均优于现有的 SOTA 方法如 InfLLM-V2, DuoAttention, PruLong 。特别是在RULER长度外推测试中我们将上下文扩展到256KElastic Attention 依然保持了极高的性能稳定性而其他基线方法在超长文本下往往出现严重衰退 。4.2 任务自适应性最有意思的发现是 Router 的行为模式。如下图论文 Figure 6所示对于Code代码任务模型自动分配了约 85% 的稀疏度而对于QA问答任务稀疏度则降低到 68% 左右 。这完美印证了我们的初衷模型学会了根据任务难度“看菜下碟”。5. 总结与展望Elastic Attention 是我们在 Dynamic Sparse Attention 方向的一次尝试。通过引入 MoE 路由机制我们打破了静态稀疏注意力的限制证明了“动态路由”在 Attention 层同样大有可为。目前代码、模型和论文均已开源欢迎大家 Star、引用和交流Paper: arXiv:2601.17367Code: GitHub LinkModel: ModelScope Link如果你对长文本优化、MoE 架构或底层算子优化感兴趣欢迎在评论区留言讨论

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询