深度解析 Attention Sinks 究竟为啥有效?

《How Attention Sinks Keep Language Models Stable》 语言模型在处理长对话时之所以会“崩溃”,是因为当为了节省内存而移除最开始的几个token时,模型会失去稳定性。研究者发现,模型会将大量的注意力“倾倒”在最初的几个token上,把它们当作“注意力池”,用来存放那些无处安放的注意力(因为Softmax函数强制要求所有注意力权重加起来等于1)。基于此,作者提出了StreamingLLM方案,即永久保留最初的4个token,其余部分则正常使用滑动窗口,从而让模型能稳定处理超过400万个token的超长文本。这一机制已被OpenAI、HuggingFace和英伟达等公司采纳。OpenAI在其最新的开源模型中,通过为每个注意力头增加一个可学习的标量$b$来实现类似功能,其公式为:$a_i' = softmax(q_i^T K + b)$。这个简单的改动,让模型在必要时可以选择“不关注任何token”,其设计思想正是源于这项研究。 流式处理的挑战与意外发现 者在2023年暑期实习时面临一个根本性问题:如何让大模型处理超出其预训练长度的对话?直接的方案是使用“滑动窗口”,即只保留最近一部分token的键值缓存(KV Cache),丢掉最旧的。这种方法虽然高效,但实验结果却出乎意料地失败了。一旦最开始的几个token(哪怕只是一个起始符或“the”之类的普通词)被从缓存中移除,模型的困惑度(Perplexity)就会急剧飙升,输出的文本瞬间变得语无伦次。这个现象令人费解,因为这些初始token在语义上似乎并不重要,但移除它们却导致了灾难性的后果,这激发了作者深入探究其背后原因的好奇心。 “注意力池”的发现与数学原理 为了解开谜团,作者对Llama-2等模型的注意力分布进行了可视化分析,结果发现了一个惊人的固定模式:在模型的多数层中,无论当前模型在预测哪个词,总有大量的注意力会“回头看”,集中在序列最开始的几个token上。这种行为让作者联想到了图论中的“汇点”(Sink Node),即一个只进不出的节点。这些初始token就像汇点一样,吸收了来自序列中其他位置的注意力,因此作者将其命名为“注意力池”(Attention Sinks)。其背后的数学原理源于Transformer架构的核心——Softmax函数:$softmax(z)_i = \frac{e^{z_i}}{\sum_{j=1}^{K} e^{z_j}}$。这个函数有一个硬性约束:$\sum_{i=1}^{n} w_i = 1.0$,即所有注意力权重之和必须等于1。这意味着注意力机制不能“弃权”,必须把注意力分配到某个地方。当一个注意力头找不到特别相关的上下文时,它就会把这份“预算”投向那些因在训练中频繁出现而具有轻微偏见的初始位置,这些位置逐渐演变成专门存放闲置注意力的“泄压阀”。 问题的症结与简单的解决方案 这个发现让之前滑动窗口失败的原因豁然开朗。当移除初始token时,我们不只是丢掉了旧的上下文,而是破坏了Softmax函数分母中的一个重要部分,从而摧毁了模型维持注意力稳定的基础机制。解决方案因此变得异常简单:既然模型如此依赖这些注意力池,那我们就永远不要丢掉它们。作者提出的StreamingLLM方法,就是对传统KV缓存管理做了一个微小但关键的修改:永久保留最开始的4个“池”token,同时对其余内容使用滑动窗口。这个简单的改动带来了惊人的效果,像Llama这样原本处理几千个token就崩溃的模型,现在可以在超过400万个token的长度上保持稳定的低困惑度,实现了近乎无限长度的文本生成。 注意力池数量的探究与预训练实验 为什么恰好需要保留4个注意力池?为了回答这个问题,作者进行了一项预训练实验。他们从头训练了两个模型,一个采用标准方式,另一个则在每个训练样本的开头都加入了一个专门的[SINK](池)token。结果揭示了一个深刻的现象:标准模型在流式处理时需要保留大约4个初始token才能稳定,因为它是在“挪用”普通内容token作为隐式的注意力池;而被投喂了专用[SINK]token的模型,在流式处理时只需要保留这1个专用的池token就足够了,而且其训练收敛效果甚至更好。这个实验证明,模型天生就需要注意力池这个功能,并且可以通过预训练让它更高效地学会使用一个专门设计的“池”,而不是临时征用多个内容token。 两种实现路径:StreamingLLM与OpenAI的设计对比 OpenAI的实现代表了解决同一问题的不同思路。作者的StreamingLLM方法是在序列开头设置一个专门的、可学习的池token $k_0$,其注意力计算方式为:$Attention(q_i, K) = softmax(q_i^T K_c, q_i^T k_0)$,其中$K_c$是内容token。而OpenAI则采用了一个更简洁的通用标量方法:$a_i' = softmax(q_i^T K + b)$`。两者的核心区别在于:StreamingLLM的设计允许不同token与“池”建立不同的关系(更具表达性),而OpenAI的设计则将“池”视为一个对所有token都一样的通用“逃生通道”(更简洁)。这体现了两种不同的设计哲学:一个是将“池”视为一个可学习的组件,另一个则是将其作为一种架构上的必需品。 注意力池的科学解释与实际应用 有研究表明,注意力池可以充当“泄压阀”,防止深度模型在处理长序列时出现“信息过度混合”(over-mixing)的病态现象,即不同token的表征变得模糊不清。注意力池通过吸引注意力,限制了信息和噪声的过度传播,从而使模型更稳健。这一效应在LLaMA 3.1 405B这样的大模型中尤为明显,其80%的注意力头都表现出注意力池现象。另一项研究则指出,如果用不要求权重和为1的其他注意力操作替换Softmax,注意力池现象就会消失,这从根本上证实了其与Softmax归一化约束的直接关系。这些理论洞见也催生了实际应用,例如CushionCache技术利用精心设计的注意力池前缀来平滑激活峰值,从而改善模型的量化效果。这也让人推测,OpenAI模型内置的注意力池机制,可能是其能够实现激进的4-bit量化的关键技术之一。 从研究到现实:一个思想的快速演进 这个始于实习期工程难题的研究,最终演变成了对Transformer架构的深刻洞见。从2023年10月英特尔集成StreamingLLM,到12月HuggingFace和苹果手机上的演示,再到2024年1月英伟达TensorRT-LLM的采纳,最后到2025年8月OpenAI开源内置注意力池的模型,这项技术在不到两年的时间里迅速从学术论文走向了全行业的主流应用。这个故事告诉我们,有时重大的科学发现并非源于宏大的理论突破,而是来自于对那些被他人忽视的、微小而奇特现象的刨根问底。通过质疑几个看似无意义的token为何如此重要,作者团队揭示了一个隐藏在所有Transformer模型中、至关重要的底层机制。

August 12, 2025 · 小茄墩

关于 OpenAI 的一些思考 -- Calvin French-Owen

《Reflections on OpenAI》 2025年7月15日 我是三周前离开 OpenAI 的,而我加入公司是在 2024 年 5 月。 我想分享我的思考,是因为外界对 OpenAI 的所作所为众说纷纭、传闻不断,但却鲜有人亲口讲述在那儿工作的真实文化氛围。 Nabeel Quereshi 写过一篇很棒的文章,叫《关于 Palantir 的一些思考》,文中他详细阐述了 Palantir 的特别之处。我也想趁着记忆犹新,为 OpenAI 写下同样的文字。你在这里不会看到任何商业机密,更多的是关于这个史上最引人入胜的组织之一,在当前这个极不寻常时期的一些个人感悟。 首先声明:我决定离开并非出于任何个人恩怨——实际上,这个决定曾让我内心无比纠结。从一个创业公司的创始人,转变为一个三千人大机构的员工,这个过程并不容易。眼下,我渴望的是一个全新的开始。 这份工作的魅力完全有可能再次将我吸引回来。毕竟,很难想象有什么工作能比构建通用人工智能 (AGI) 更具影响力了,而大语言模型 (LLM) 无疑是这十年来的顶尖技术创新。能够亲身见证一些技术进展,并参与 Codex 项目的发布,我深感幸运。 当然,这些仅为个人观察,不代表公司立场。OpenAI 是个庞大的机构,本文只是我管中窥豹,所见一斑。 文化 了解 OpenAI,首先要知道它的发展速度有多惊人。我刚加入时,公司才 1000 多人。一年后,员工数已超过 3000,而按司龄算,我已经排进了前 30%。几乎所有领导层当前的工作,都和他们两三年前的职责大相径庭。 当然,如此迅猛的扩张之下,各种问题都会暴露出来:公司层面的沟通方式、汇报结构、产品交付流程、人员管理与组织、招聘过程等等。不同团队的文化也大相径庭:有些团队始终在全力冲刺,有些则需要时刻盯着大型计算任务,还有一些则保持着更为稳健的节奏。在 OpenAI 没有所谓的单一体验,研究、应用和市场(GTM)团队的运作周期和视角也截然不同。 OpenAI 有一个特别之处:所有事情——我是说所有事情——都在 Slack 上进行。这里没有电子邮件。我在那里的全部时间里,大概总共只收到过 10 封邮件。如果你不善于整理信息,会觉得这种工作方式极易让人分心。但如果你能精心管理自己的频道和通知,它还是相当高效的。 OpenAI 的文化是高度自下而上的,在研究领域尤其如此。我刚加入时,曾询问下一季度的路线图。得到的答复是:“我们没有那东西”(不过现在有了)。好的想法可以来自任何地方,而且事先往往很难判断哪个想法会最有成效。这里没有宏大的“总体规划”,所谓的进展,是在新研究不断结出硕果的过程中,一步步探索出来的。 正是得益于这种自下而上的文化,OpenAI 也非常任人唯贤。长久以来,公司领导者的晋升,主要看他们是否能提出好想法并将其付诸实践。许多能力超群的领导者,其实并不擅长在全员大会上演讲或玩弄办公室政治。但在 OpenAI,这些能力远不如在其他公司那么重要。最终,最好的想法总能脱颖而出。 这里有一种强烈的行动偏好(即“先做再说”)。不同团队(即使业务不相关)不约而同地想到一块儿去,是常有的事。我最初就参与了一个与 ChatGPT Connectors 类似的内部并行项目。在我们决定正式推出 Codex 之前,公司内部至少同时存在三到四个不同的原型。这些项目通常由少数几个人在没有申请许可的情况下自发启动。一旦项目显现出潜力,团队就会迅速围绕它们组建起来。 Andrey(Codex 项目负责人)曾对我说,你应该把每个研究员都看作是独立的“迷你 CEO”。他们有强烈的自主性,喜欢专注于自己的项目,看最终能做出什么。这里有一个推论——大部分研究课题,都是通过用一个极具吸引力的技术难题去“钓”(nerd-sniping)一个研究员来解决的。如果一件事被认为是无聊或“已解决”的,那它很可能就没人去做了。 优秀的研究经理影响力巨大,同时也极其稀缺。最顶尖的经理能将许多不同研究方向的成果串联起来,整合成更大规模的模型训练。优秀的 PM(产品经理)也是如此(在此特别感谢 ae)。 我合作过的 ChatGPT 团队的 EM(工程经理)们(Akshay、Rizzo、Sulman)是我见过的最沉着冷静的“客户”。你真的会觉得,他们在这个位置上已经见过了各种大风大浪。他们中的大多数人管理风格都比较放手,但他们会招募优秀的人才,并努力为这些人创造成功所需的一切条件。 ...

July 16, 2025 · 小茄墩

OpenAI 构建智能体指南

https://cdn.openai.com/business-guides-and-resources/a-practical-guide-to-building-agents.pdf 目录 什么是智能体? 4 何时应该构建智能体? 5 智能体设计基础 7 防护机制 24 结论 32 引言 大语言模型(Large Language Models)正变得越来越有能力处理复杂的多步骤任务。在推理、多模态(multi-modality)和工具使用方面的进步,催生了一类新的由大语言模型驱动的系统,称为 AI 智能体(AI Agent)。 本指南专为探索如何构建其首个 AI 智能体的产品和工程团队设计,将来自众多客户部署的见解提炼为实用且可操作的最佳实践。它包括用于识别有前景用例的框架、设计 AI 智能体逻辑和编排的清晰模式,以及确保您的 AI 智能体安全、可预测且有效运行的最佳实践。 阅读本指南后,您将拥有自信地开始构建您的第一个 AI 智能体所需的基础知识。 什么是 AI 智能体? 虽然传统软件能让用户简化和自动化workflows,但 AI 智能体能够代表用户以高度的独立性执行相同的workflows。 AI 智能体是能够代表你独立完成任务的系统。 workflows是为了实现用户目标而必须执行的一系列步骤,无论是解决客户服务问题、预订餐厅、提交代码更改,还是生成报告。 那些集成了大语言模型(LLM)但不使用它们来控制workflows执行的应用程序——例如简单的聊天机器人、单轮大语言模型或情感分类器——不是 AI 智能体。 更具体地说,一个 AI 智能体拥有核心特征,使其能够代表用户可靠且一致地行动: 它利用大语言模型(LLM)来管理workflows执行和做出决策。它能识别workflows何时完成,并能在需要时主动纠正其行为。在失败的情况下,它可以停止执行并将控制权交还给用户。 它能访问各种工具以与外部系统交互——既为了收集上下文信息,也为了采取行动——并根据workflows的当前状态动态选择合适的工具,始终在明确定义的防护措施内操作。 何时应该构建 AI 智能体? 构建 AI 智能体需要重新思考您的系统如何制定决策和处理复杂性。与传统自动化不同,AI 智能体特别适用于传统确定性和基于规则的方法力不从心的workflows。 以支付欺诈分析为例。传统的规则引擎像核对清单一样工作,根据预设标准标记交易。相比之下,大语言模型 AI 智能体更像一位资深调查员,评估上下文,考虑细微模式,并在没有明确违反规则的情况下识别可疑活动。这种细致入微的推理能力正是使 AI 智能体能够有效管理复杂、模糊情况的关键所在。 在评估 AI 智能体可以在哪些方面增加价值时,应优先考虑那些以前难以自动化、特别是传统方法遭遇瓶颈的workflows: 01 复杂的决策制定: 涉及细致判断、例外情况或需结合上下文决策的workflows,例如客户服务workflows中的退款审批。 02 难以维护的规则: 因规则集过于庞大和复杂而变得难以管理,导致更新成本高昂或容易出错的系统,例如执行供应商安全审查。 03 严重依赖非结构化数据: 涉及解释自然语言、从文档中提取含义或与用户进行对话式交互的场景,例如处理房屋保险索赔。 ...

April 18, 2025 · 小茄墩

OpenAI发布一批Agent工具

OpenAI发布了第一批Agent构建模块,旨在帮助开发者和企业构建实用且可靠的 AI 智能体。过去一年,OpenAI推出了一系列新的模型功能,例如高级推理、多模态交互以及最新的安全技术,这些都为OpenAI的模型奠定了基础,使其能够处理构建 AI 智能体 所需的复杂、多步骤任务。 然而,客户反馈表明,将这些功能转化为可用于生产环境的 AI 智能体 极具挑战性,通常需要大量的提示词迭代和自定义编排逻辑,且缺乏足够的可见性或内置支持。 为了解决这些难题,OpenAI推出了一套全新的 API 和工具,专门用于简化 AI 智能体 应用的开发: 全新的 Responses API ,它结合了 Chat Completions API 的简洁性和 Assistants API 的工具使用能力,旨在帮助开发者构建 AI 智能体 内置工具,包括网页搜索 、文件搜索 和计算机使用 全新的 Agents SDK ,用于编排单 AI 智能体 和多 AI 智能体 工作流程 集成的可观测性工具 ,用于追踪和检查 AI 智能体 工作流程的执行情况 这些新工具简化了核心 AI 智能体逻辑、编排和交互,从而显著降低了开发者构建 AI 智能体的入门门槛。 在接下来的几周和几个月里,OpenAI计划发布更多工具和功能,以进一步简化和加速在OpenAI平台上构建 AI 智能体应用。 隆重推出 Responses API Responses API 是OpenAI用于构建 AI 智能体的全新 API 原语,它利用 OpenAI 的内置工具,兼具 Chat Completions 的简洁性和 Assistants API 的工具使用能力。 随着模型能力的不断发展,OpenAI相信 Responses API 将为开发者构建 AI 智能体应用提供更灵活的基础。 通过单个 Responses API 调用,开发者将能够使用多种工具和模型交互来解决日益复杂的任务。 ...

March 12, 2025 · 小茄墩

GPT-4.5

GPT-4.5正式发布,作为"研究预览版"面向OpenAI Pro会员(200美元/月)及持有API密钥的开发者开放。 目前定价体系极为高昂:输入Token每百万75美元,输出Token每百万150美元。作为对比,o1模型价格为15/60美元,GPT-4o仅需2.50/10美元。 官方公布的胜率对比图表显示,GPT-4.5在不同查询类别中相对GPT-4o的胜率介于56.8%-63.2%: 在SimpleQA幻觉率测试中,该模型降至37.1%——较GPT-4o(61.8%)和o3-mini(80.3%)显著优化,但与o1(44%)相比提升有限。编码基准测试成绩与o3-mini基本持平。 OpenAI对模型前景持审慎态度: 鉴于GPT-4.5作为超大规模计算密集型模型,其使用成本⁠高于GPT-4o且不具备替代性,我们正在评估是否长期维持其API服务,以平衡现有能力支持与未来模型研发。 Andrej Karpathy指出相较GPT-4训练成本增加10倍的情况下改进幅度有限: 每个 0.5 版本号大致对应 10 倍预训练算力。回顾历史:GPT-1 几乎无法生成连贯文本,GPT-2 是个混乱的玩具,GPT-2.5 被直接跳过升级到 GPT-3(后者更加有趣),GPT-3.5 跨越了产品化门槛并引发 OpenAI 的"ChatGPT 时刻",而 GPT-4 虽感知更好但提升微妙。记得在黑客马拉松中,我们曾费力寻找能体现 GPT-4 明显优于 3.5 的具体提示案例——这类案例确实存在,但明确且具说服力的"完胜"示例却难以寻觅。这种提升如同潮水托起所有船只:措辞更富创意,提示的细微理解更精准,类比更合理,幽默感更佳,冷门领域知识更完善,幻觉频率略降。整体氛围提升约 20%。带着这种预期,我测试了已接触数日的 GPT-4.5(其预训练算力是 GPT-4 的 10 倍),却仿佛重演两年前场景:所有方面都有提升,但这种进步依旧难以具体量化。尽管如此,作为通过简单预训练更大模型就能"免费"获得能力提升的又一次定性测量,这仍令人极度兴奋。 需特别说明,GPT-4.5 仅通过预训练、监督微调和 RLHF 训练,尚未成为推理型模型。因此在需要关键推理的领域(数学、编程等),本次发布并未推进模型能力。这些领域仍需基于旧版基础模型(如 GPT-4 级别)进行强化学习训练来培养思维能力。当前该领域标杆仍是完整版 o1 系统。预计 OpenAI 将在 GPT-4.5 基础上继续强化学习训练以提升推理能力。 但我们确实预期非重度推理任务会有改进——这些任务更多涉及情商(而非智商),受限于世界知识、创造力、类比能力、综合理解力和幽默感等维度。这正是我在氛围测试中最关注的部分。 关于OpenAI GPT-4.5 System Card的部分摘录 我们正式发布OpenAI GPT-4.5的研究预览版,这是目前规模最大、知识储备最丰富的模型。该模型基于GPT-4o构建,通过扩展预训练规模,其设计比专注STEM领域推理的模型更具通用性。==我们采用新型监督技术结合监督微调(SFT)和基于人类反馈的强化学习(RLHF)等传统方法进行训练,这些方法与GPT-4o的训练策略相似==。部署前进行的全面安全评估表明,相较于现有模型,其安全风险未见显著增加。 初期测试显示,与GPT-4.5的交互更加自然。凭借更广泛的知识库、更强的用户意图对齐能力以及提升的情感智能,该模型在写作、编程和解决实际问题等任务中表现优异,且==产生幻觉的概率更低==。我们以研究预览版形式发布GPT-4.5,旨在深入理解其优势与局限。我们持续探索其能力边界,并期待用户开发出超乎预期的应用场景。 本系统说明书遵循OpenAI安全流程和准备框架,详细阐述了GPT-4.5的构建训练过程、能力评估体系与安全强化措施。 2 模型数据与训练 推进无监督学习前沿 我们通过扩展两大范式提升AI能力:==无监督学习与思维链推理==。扩展思维链推理( Scaling chain-of-thought reasoning)使模型具备"先思考后应答"的能力,可处理复杂STEM问题或逻辑难题。而无监督学习范式的扩展( scaling unsupervised learning)则能提高世界模型的准确性,降低幻觉率,增强联想思维能力。==GPT-4.5正是我们在无监督学习范式扩展道路上的最新里程碑==。 新型对齐技术促进人机协作随着模型规模扩大及其解决问题的广度复杂度提升,增强模型对人类需求与意图的理解变得至关重要。针对GPT-4.5,我们开发了新型可扩展对齐技术,==可利用小模型衍生的数据训练更强大的模型==。这些技术显著提升了GPT-4.5的可控性、细微语义理解能力和自然对话水平。内部测试反馈显示,GPT-4.5具有温润、直觉化的交互特质。面对情感类诉求时,能精准把握提供建议、化解负面情绪或单纯倾听的时机。 ...

February 28, 2025 · 小茄墩

OpenAI:Competitive Programming with Large Reasoning Models

摘要 我们展示了应用于大语言模型(LLM)的强化学习能够显著提升在复杂编码和推理任务上的性能。此外,我们将两个通用推理模型——OpenAI o1 和 o3 的早期检查点——与一个特定领域的系统 o1-ioi 进行比较,后者使用为参加 2024 年国际信息学奥林匹克竞赛(IOI)而手工设计的推理策略。我们使用 o1-ioi 参加了 2024 年 IOI 的现场比赛,并使用手工制作的测试时策略,placed in the 49th percentile。在放宽比赛限制的条件下,o1-ioi 获得了金牌。然而,在评估像 o3 这样的后期模型时,我们发现 o3 在没有手工制作的特定领域策略或放宽限制的条件下获得了金牌。我们的研究结果表明,尽管像 o1-ioi 这样的专门流程产生了可靠的改进,但扩展的通用 o3 模型超越了这些结果,而无需依赖手工制作的推理启发式方法。值得注意的是,o3 在 2024 年 IOI 上获得了金牌,并在 [CodeForces]上获得了与精英人类竞争者相当的评分。总的来说,这些结果表明,扩展通用强化学习,而不是依赖于特定领域的技术,为在推理领域(如Competitive Programming)中实现最先进的 AI 提供了一条稳健的道路。 介绍 Competitive Programming被广泛认为是评估推理和编码能力的一个极具挑战性的基准。解决复杂的算法问题需要高级的计算思维和问题解决技能。此外,这些问题也是可以客观评分的,使其成为评估 AI 系统推理能力的理想试验平台。最近关于使用大语言模型进行程序合成的研究表明,即使是参数规模从 2.44 亿到 1370 亿的相对通用的模型,也可以从自然语言指令生成简短的 Python 脚本。重要的是,性能随着模型规模的增加呈对数线性增长,并且微调可以显著提高准确性。与此同时,Codex,一个早期以代码为中心的大语言模型,擅长 Python 程序生成,并为 GitHub Copilot 提供支持。进一步的进展来自 AlphaCode,它使用大规模代码生成和推理时的启发式方法来解决Competitive Programming任务,以及随后的 AlphaCode2,其改进使 AlphaCode 解决的问题数量几乎翻倍,并使其在 [CodeForces]平台上达到第 85 个百分位。在选择前 10 个提交的解决方案之前,两个 AlphaCode 系统都使用了大规模采样,每个问题最多生成一百万个候选解决方案,并采用手工设计的测试时策略。 自那以后,在利用强化学习来提高大语言模型(LLM)的推理能力方面取得了显著进展。这促使了大型推理模型(LRM)的出现:这些语言模型通过强化学习进行训练,以“推理”和“思考”延长的思维链。特别是,OpenAI 的 o1 及其即将发布的继任者 o3 使用思维链推理来处理复杂的任务,如数学和编码。 ...

February 12, 2025 · 小茄墩