← 返回概念解读

Concept Fable精修版

滑动窗口注意力

Sliding Window Attention · Architecture

先读故事。这里不急着给定义,先让问题自己长出来。

寓言故事

巡夜人只看身边七条街

大城巡夜司过去要求每个巡夜人随时掌握全城动静。城市小时还能做到,城市变大后,每个人都被远处消息拖住,近处火情反而没人第一时间处理。

司长先增加传令兵,把全城消息更快送到每个人手里。消息更多了,判断更慢了,巡夜人每天都在读通报。第二次修补是只保留总摘要。摘要能减负,却常漏掉近处刚发生的小变化,而这些变化最可能影响下一步行动。

有一夜,西城三里外的仓库失火。附近巡夜人还在读东门商队纠纷的长报,等发现烟味时,火已经烧过两间屋。后来司长改了巡逻规则:每个巡夜人主要查看自己身边七条街,随着队伍前进,窗口也往前滑。

这不代表永远不看远处。重要远程消息可以通过专门钟声、摘要或高塔旗号传来,但日常注意力先给局部上下文。

新规则让长城巡逻成本可控。每个人处理的信息量稳定,不会因为城市加长而无限膨胀,近处变化也不再被远方消息淹没。

司长一度要求巡夜人把所有通报背熟。可北城的酒肆争吵传到南门时,南门已起了油锅火;西郊的犬吠写进册子,东坊真正的烟味反而没人闻。全城消息越完整,脚下越迟钝。

老巡夜人改了法子:每人重点照看身前身后三条街,交界处用短哨互传,只有大火、洪水、盗贼入城这类事才传遍全城。巡夜人不再假装同时看见所有地方,而是把有限目光滑着往前推,近处清楚,远处只留必要提醒。后来司里仍保存全城大册,但那是事后复盘用的,不再压到每个巡夜人的肩上。夜里救火靠近处判断,长时追踪靠窗口一路滑过,两种眼光各有位置。

司长最后说,长路不是每一步都看全城。先稳定看好身边,再设计少数跨远处的桥,才是可扩展的秩序。

揭示

这个故事讲的是:滑动窗口注意力

Sliding Window Attention 限制每个 token 只关注其附近固定窗口内的 token,从而把长序列注意力成本从全局二次增长降下来。它适合长文本、语音、日志等局部依赖强的场景,也常与全局注意力或稀疏注意力结合。企业 Agent 中,它意味着长上下文并非总要全量互看,局部窗口能显著改善推理成本和吞吐,但远距离依赖需要额外机制补足。

它重要的地方在于:它不只是一个术语,而是在真实 AI / Agent 系统里会反复出现的结构性问题。理解它,才能判断什么时候该加模型,什么时候该改流程,什么时候该补治理。

隐喻映射

  • 巡夜人:序列中的 token 或局部处理单元
  • 全城动静:全局注意力
  • 更多传令兵:堆资源传递所有信息的修补
  • 总摘要:压缩但可能丢细节的修补
  • 身边七条街:滑动窗口
  • 窗口随队伍前进:Sliding Window Attention
  • 最后洞察:长上下文要区分局部依赖和远程依赖,不能默认全局互看

Soloharness 判断

这个概念的实战价值,是帮你把“看起来聪明的 AI 功能”拆成可交付、可验收、可治理的工作单元。

long contextefficient attentionMistral