前几天整理书签,翻到 2017 年的一篇论文,《Attention Is All You Need》。到现在 9 年了,ChatGPT、Claude、Gemini、DeepSeek、Kimi、Qwen,你叫得出名字的大模型,底下垫的全是它提出的结构:Transformer。中间不是没人挑战过,是没挑战动。
这篇就把它讲清楚。不推公式,只回答三个问题:它解决了什么,注意力到底是个什么动作,为什么 9 年了还没人换掉它。
一、Transformer 出现之前,模型是怎么读句子的
2017 年之前,主流读句子的结构叫 RNN,循环神经网络。它的读法很朴素:一个词一个词往前读,每读到一个新词,就把它和之前攒下的记忆揉在一起,传给下一步。
听着挺合理,人读书也是这么读的。但 RNN 有两个毛病,都很要命。
一个是记性。句子一长,早先读到的信息会被后面的词一步步冲淡,读到句号,开头的主语可能已经糊了。你跟一个人说话,他说到第 50 个词就忘了你开头说什么,这对话没法进行。
另一个是没法并行。必须一个词接一个词读,第 100 个词必须等第 99 个处理完。GPU 是干并行计算的行家,上千个核心,结果被这个串行读法按着一个核干活,其他全在旁边看。2017 年那会儿算力已经上来了,就是喂不进去。
二、注意力机制:让每个词直接看所有词
论文作者的做法是把读法反过来。句子里的每个词,同时看一眼句子里所有的词,然后自己决定该重点看谁。
这就是注意力机制(Attention)。
用查字典来打比方。你在句子里遇到"它"这个字,想知道"它"指的是什么,就会回头扫整句话,把目光多停在几个候选词上,最后锁定"这只猫"。注意力的过程跟这个动作一模一样,分三步:
先拿"它"生成一个查询(Query),相当于带着问题去找:"我在找我的指代对象"。再给句子里每个词配一把钥匙(Key),相当于各词举着的名牌:"我是名词""我是动词"。然后拿查询去对每一把钥匙,匹配度高的,就把那个词的内容(Value)多吸收一点过来。
走完这一步,"它"身上已经带上大量"这只猫"的信息,模型自然懂了指代关系。句子有多长,这一步就能看多远,中间不打折扣。RNN 那种隔 50 个词就忘的问题,在这里不存在。
效果可以用论文里的数字说话。WMT 2014 英德翻译任务拿到 28.4 BLEU,比之前最好成绩高出 2 BLEU 以上,之前参赛的可是多个模型集成起来的成绩;英法任务 41.8 BLEU,单模型新纪录。数字出自论文摘要,arXiv 编号 1706.03762,我核对过原文。
三、"注意力就是一切"这个标题的由来
论文标题起得很直白:Attention Is All You Need,注意力就是你所需要的一切。
因为作者做得比"用注意力"更彻底。注意力机制不是他们发明的,之前的模型也在用,但只是当辅助,主体还是 RNN。这篇论文把循环和卷积整个扔了,只留注意力。摘要里的原话是"dispensing with recurrence and convolutions entirely",完全弃用循环和卷积。
回头看这个决定是对了,但放在当时需要点胆子。8 位作者,来自 Google Brain、Google Research 和多伦多大学,论文 2017 年 6 月 12 日提交到 arXiv。9 年过去,这篇论文的引用量已经是 AI 领域的天花板级别。
训练成本也顺带降了。扔掉串行结构之后,整个模型可以大规模并行,英法翻译任务用 8 块 GPU,练了 3 天半。放在 2017 年,这个成本便宜得出奇,摘要里还专门强调了这一点。
四、为什么今天的大模型还离不开它
你可能会问,都 2026 年了,就没有新架构把 Transformer 换掉吗?
还真没有。这几年五花八门的进展,大多是往这栋楼里加装修。
MoE(混合专家)改的是"大脑怎么省电",让模型每次推理只动用一小部分参数,信息怎么流动还是注意力在管。671B 参数的 DeepSeek-V3 每次只动 37B,就是这个思路,我之前写过一篇 MoE 的入门。
多模态是把图片、音频编码成 token,塞进同一个注意力框架里一起处理。推理模型改的是"先想后说"的生成策略,底层算的还是注意力。Qwen3 的技术报告我翻了,从 0.6B 到 235B 的全系模型,dense 也好 MoE 也好,架构那一栏写的都是 Transformer。
换句话说,今天你用任何一家大模型,背后跑的都是 2017 年那篇论文定下的结构。变的是规模、数据和训练技巧,地基没动过。
五、它也不是白来的便宜
注意力的代价是算起来贵。让每个词看所有词,计算量随句子长度平方涨,句子翻倍,计算量变四倍。
这解释了几件你可能有体感的事。为什么长上下文的 API 调用死贵,token 计费里长输入是主要开销。为什么很多模型标着超长上下文,实际用长了就开始忘事,注意力被摊薄了。为什么上下文缓存能省那么多钱,缓存跳过的正是重复算注意力的那部分。
这三点我分别写过:token 和账单怎么算,上下文缓存怎么开,上下文工程怎么对付忘事,链接都放在文末。
最后
想读原文的话,arXiv 搜 1706.03762 就能下到 PDF。建议跳过中间的公式推导,先读摘要和引言,再看那张架构图。9 年前的论文,读起来比大多数二手教程清楚。
一个朴素的判断:地基级的结构不会每年换,就像 CPU 里晶体管的原理没变过,变的只是堆了多少个。什么时候有论文敢把注意力也扔了,还能跑赢,那才是下一个时代。在那之前,看懂注意力这笔账,就是看懂了大模型的成本和脾气。