继 Vibe Coding(氛围编程) 火了之后,Andrej Karpathy 又带火了一个词:Context Engineering(上下文工程)。
那么,上下文工程(Context Engineering)和提示词工程(Prompt Engineering)又有什么关联和区别?
提示词工程是通过巧妙设计指令(比如:“你是 X 领域专家,按 Z 方式做 Y”),让大模型精准理解任务。适合创意任务或一次性对话,使用对象是普通用户。
上下文工程则更深入,是构建大模型的“心智世界”,提供丰富背景,让大模型全面理解需求,使用对象是开发者,如下图所示包括:大模型能看到什么(文档、RAG、历史对话、示例、摘要)、怎么看(结构化还是杂乱的)、何时看(动态注入、静态固定、基于记忆)。
在上下文工程只你要考虑的是 tokens,不只是指令:系统提示词、记忆槽、工具输出、历史窗口,都在其范畴内。
总之,上下文工程是 AI 智能体架构落地的关键新技术,下文详细剖析之。
AI 智能体架构中的上下文工程剖析
AI 智能体需要上下文来执行任务。上下文工程是一门艺术和科学,旨在在 AI 智能体的每一步中,通过上下文工程策略:写(Write)、选(Select)、压缩(Compress)和隔离(Isolate)将上下文窗口填充到刚刚好的信息量。
1、什么是上下文工程?
正如 Andrej Karpathy 所说,大语言模型(LLM)就像一种新的操作系统。LLM 就像 CPU,而它的上下文窗口就像 RAM,作为大模型的工作记忆。就像 RAM 一样,LLM 的上下文窗口也有容量限制,无法处理各种来源的上下文。就像操作系统会管理哪些内容可以放入 CPU 的 RAM 中一样,我们可以将“上下文工程”视为类似的角色。Karpathy 很好地总结了这一点:
[上下文工程是]“……将上下文窗口填充到下一步所需信息的微妙艺术和科学。”
在构建 LLM 应用时,我们需要管理哪些类型的上下文?上下文工程是一个涵盖几种不同上下文类型的总称:
-
指令:提示词、记忆、少量样本、工具描述等;
-
知识:事实、记忆等;
-
工具:工具调用的反馈。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
2、AI 智能体架构中的上下文工程
今年,随着 LLM 在推理和工具调用方面变得更好,AI 智能体的热度急剧上升。AI 智能体会交替调用LLM 和工具,通常用于长期任务。它们利用工具反馈来决定下一步。
然而,长期任务和工具调用的累积反馈意味着 AI 智能体经常使用大量的标记(tokens)。这可能会引发许多问题:它可能会超出上下文窗口的大小,增加成本/延迟,或者降低 AI 智能体的性能。上下文过长可能导致性能问题的几种具体方式,包括:
-
上下文污染(Context Poisoning):当幻觉内容进入上下文时;
-
上下文干扰(Context Distraction):当上下文压倒了训练内容时;
-
上下文混淆(Context Confusion):当多余的上下文影响响应时;
-
上下文冲突(Context Clash):当上下文中的部分内容相互矛盾时;
工具调用的上下文会在多个 AI 智能体回合中累积。鉴于此,上下文工程的重要性如下:
“上下文工程”……实际上是构建 AI 智能体的第一要务。
Anthropic 也明确指出:
AI 智能体经常进行跨越数百个回合的对话,需要谨慎的上下文管理策略。
那么,在 AI 智能体企业级落地中是如何应对这一挑战的呢?我们将常见的 AI智能体上下文工程策略分为四类:写、选、压缩和隔离,下文继续剖析。
3、上下文工程的四种策略剖析
3.1、写上下文(Write Context)
写上下文意味着将信息保存在上下文窗口之外,以帮助 AI 智能体执行任务,分为:便签处理和记忆处理两种方式。
第一、便签(Scratchpads)
当人类解决问题时,我们会做笔记并记住事情,以便用于未来的相关任务。AI 智能体也在获得这些能力!通过“便签”做笔记是一种在执行任务时持久化信息的方法。其想法是将信息保存在上下文窗口之外,以便 AI 智能体可以使用。Anthropic 的多智能体研究员举了一个清晰的例子:
主研究员首先思考方法,并将其计划保存到内存中以持久化上下文,因为如果上下文窗口超过200,000个标记,它将被截断,而保留计划非常重要。
便签(可以理解为短期记忆)可以通过几种不同的方式实现。它可以是一个工具调用,简单地将信息写入文件。它也可以是运行时状态对象中的一个字段,在会话期间持久化。无论哪种情况,便签都允许智能代理保存有用的信息,以帮助它们完成任务。
第二、记忆(Memories)
便签有助于 AI 智能体在给定会话(或线程)内解决任务,但有时 AI 智能体从多个会话中记住事情也会受益!可以引入了在每个 AI 智能体回合后进行反思并重用这些自动生成的记忆的方法。生成式 AI 智能体会定期从过去的 AI 智能体反馈中合成记忆。
这些概念已经被 ChatGPT、Cursor 和 Windsurf 等流行产品采用,它们都有机制根据用户与 AI 智能体的互动自动生成长期记忆,这些记忆可以在会话之间持久化。
3.2、选上下文(Select Context)
选上下文意味着将上下文拉入上下文窗口,以帮助 AI 智能体执行任务,分为:便签处理、记忆处理、工具处理、知识处理四种方式。
第一、便签(Scratchpads)
从便签中选择上下文的机制取决于便签的实现方式。如果是工具,则 AI 智能体可以通过工具调用来读取它。如果是 AI 智能体的运行时状态的一部分,则开发人员可以选择在每一步将状态的哪些部分暴露给 AI 智能体。这为在后续回合中将便签上下文暴露给 LLM 提供了细粒度的控制。
第二、记忆(Memories)
如果 AI 智能体能够保存记忆,它们也需要能够选择与它们正在执行的任务相关的记忆。这可能有几个原因。AI 智能体可能会选择少量样本(情景记忆 episodic memories)作为期望行为的示例,指令(程序记忆 procedural memories)来引导行为,或者事实(语义记忆 semantic memories)作为任务相关的上下文。
一个挑战是确保选择了相关记忆。一些流行的 AI 智能体简单地使用一组狭窄的文件,这些文件总是被拉入上下文。比如:许多代码 AI 智能体使用特定文件来保存指令(“程序”记忆),或者在某些情况下,示例(“情景”记忆)。Claude Code 使用 CLAUDE.md。Cursor 和 Windsurf 使用规则文件。
但是,如果 AI 智能体存储了大量事实和/或关系(比如:语义记忆),选择就更难了。ChatGPT 是一个很好的例子,它存储并从大量用户特定的记忆中选择。嵌入和/或知识图谱通常用于记忆索引,以协助选择。然而,记忆选择仍然是一个挑战。在 AIEngineer 世界博览会上,Simon Willison 分享了一个选择失败的例子:ChatGPT 从记忆中获取了他的位置,并意外地将其注入到请求的图像中。这种意外或不期望的记忆检索可能会让一些用户觉得上下文窗口“不再属于他们”!
第三、工具(Tools)
AI 智能体使用工具,但如果提供过多工具,它们可能会不堪重负。这通常是因为工具描述重叠,导致大模型对使用哪个工具感到困惑。一种方法《RAG-MCP 新架构设计解决大模型提示词膨胀的工具选择问题》是将 RAG (检索增强生成)应用于工具描述,以便只为任务获取最相关的工具。一些最近的论文表明,这可以将工具选择的准确性提高3倍。
第四、知识(Knowledge)
RAG 是一个丰富的话题,它可能是一个核心的上下文工程挑战。代码 AI 智能体是大规模生产中 RAG 的最佳例子之一。Windsurf 的 Varun 很好地捕捉了其中的一些挑战:
索引代码≠上下文检索……[我们正在做索引和嵌入搜索……[通过] AST 解析代码并在语义上有意义的边界进行分块……随着代码库规模的增大,嵌入搜索作为检索启发式方法变得不可靠……我们必须依赖于多种技术的组合,比如:grep/文件搜索、基于知识图谱的检索,以及……一个重新排序步骤,其中[上下文]按相关性顺序排列。
在 LangGraph AI 智能体的每个节点(步骤)中,你可以获取状态。这让你可以精细控制在 AI 智能体的每一步中向 LLM 展示哪些上下文。
此外,LangGraph 的长期记忆在每个节点中都是可访问的,并支持各种类型的检索(比如:获取文件以及基于嵌入的对记忆集合的检索)。
3.3、压缩上下文(Compressing Context)
压缩上下文涉及仅保留执行任务所需的 tokens,分为:上下文摘要、上下文修剪两种方式。
第一、上下文摘要(Context Summarization)
AI 智能体的交互可能跨越数百个回合,并使用 token 密集型的工具调用。摘要是管理这些挑战的一种常见方法。如果你使用过 Claude Code,你已经看到了它的实际应用。Claude Code 在你超过上下文窗口的95%后运行“自动压缩”,它将总结用户与 AI 智能体的完整轨迹。这种跨越 AI 智能体轨迹的压缩可以使用递归或分层总结等各种策略。
摘要是 AI 智能体设计的一个关键技术。它可以用于后处理某些工具调用(比如:token 密集型搜索工具)。作为第二个例子:在 AI 智能体与 AI 智能体的边界进行总结,以减少知识传递期间的 tokens。如果需要捕获特定事件或决策,摘要可能会是一个挑战。可以使用了一个微调模型来完成这一步,这突显了这一步骤可能需要多少工作。
第二、上下文修剪(Context Trimming)
与摘要通常使用 LLM 提炼最相关的上下文片段不同,修剪通常可以过滤或者可以使用硬编码的启发式方法,比如:从列表中移除较旧的消息,上下文修剪往往使用规则,相对比较简单和好落地。
3.4、隔离上下文(Isolating Context)
隔离上下文涉及将其拆分,以帮助 AI 智能体执行任务,分为:多 AI 智能体、使用环境隔离上下文、状态等三种方式。
第一、多 AI 智能体(Multi-agent)
隔离上下文的最流行方法之一是将其拆分到子 AI 智能体中。OpenAI Swarm 库的一个动机是分离关注点,一个 AI 智能体团队可以处理特定的子任务。每个 AI 智能体都有特定的工具集、指令和自己的上下文窗口。
Anthropic 的多智能体研究员为这种方法提供了依据:具有隔离上下文的多个 AI 智能体通常优于单个 AI 智能体,主要是因为每个子 AI 智能体的上下文窗口可以分配给更狭窄的子任务。正如博客所说:
[子 AI 智能体]并行运行,每个 AI 智能体都有自己的上下文窗口,同时探索问题的不同方面。
然而,多 AI 智能体的挑战包括 token 使用(比如:Anthropic 报告的比聊天多15倍的 tokens)、需要精心的提示词工程来规划子 AI 智能体的工作,以及子 AI 智能体的协调。
第二、使用环境隔离上下文(Context Isolation with Environments)
HuggingFace 的深度研究者展示了另一个有趣的上下文隔离例子。大多数 AI 智能体使用工具调用 API,这些 API 返回 JSON 对象(工具参数),可以传递给工具(比如:搜索 API)以获取工具反馈(比如:搜索结果)。HuggingFace 使用了一个 CodeAgent,它输出包含所需工具调用的内容。然后代码在沙箱中运行。从工具调用中选择的上下文(比如:返回值)然后被传递回 LLM。
沙箱可以将上下文从 LLM 中隔离出来。这允许上下文在环境中被隔离。Hugging Face 指出,这是一种隔离 token 密集型对象的好方法:
[代码 AI 智能体允许]更好地处理状态……需要稍后使用这个图像/音频/其他吗?没问题,只需将其作为变量分配到你的状态中,你就可以[稍后使用它]。
第三、状态(State)
值得注意的是,AI 智能体的运行时状态对象(State Object)也可以是一个很好的上下文隔离方式。它可以起到沙箱的作用。状态对象可以设计成具有可以写入上下文的字段的模式。模式的一个字段(例如,消息)可以在 AI 智能体的每个回合中暴露给 LLM,但模式可以将其他字段中的信息隔离起来,以便更有选择性地使用。
上下文工程正在成为一种 AI 智能体构建者应该努力掌握的关键技术。在这里,我们涵盖了一些在当今许多流行 AI 智能体中看到的常见模式:
-
写上下文:将上下文保存在上下文窗口之外,以帮助 AI 智能体执行任务。
-
选上下文:将上下文拉入上下文窗口,以帮助 AI 智能体执行任务。
-
压缩上下文:仅保留执行任务所需的 tokens。
-
隔离上下文:将其拆分,以帮助 AI 智能体执行任务。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
一、大模型风口已至:月薪30K+的AI岗正在批量诞生
2025年大模型应用呈现爆发式增长,根据工信部最新数据:
国内大模型相关岗位缺口达47万
初级工程师平均薪资28K
70%企业存在"能用模型不会调优"的痛点
真实案例:某二本机械专业学员,通过4个月系统学习,成功拿到某AI医疗公司大模型优化岗offer,薪资直接翻3倍!
二、如何学习大模型 AI ?
🔥AI取代的不是人类,而是不会用AI的人!麦肯锡最新报告显示:掌握AI工具的从业者生产效率提升47%,薪资溢价达34%!🚀
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
1️⃣ 提示词工程:把ChatGPT从玩具变成生产工具
2️⃣ RAG系统:让大模型精准输出行业知识
3️⃣ 智能体开发:用AutoGPT打造24小时数字员工
📦熬了三个大夜整理的《AI进化工具包》送你:
✔️ 大厂内部LLM落地手册(含58个真实案例)
✔️ 提示词设计模板库(覆盖12大应用场景)
✔️ 私藏学习路径图(0基础到项目实战仅需90天)
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
* 大模型 AI 能干什么?
* 大模型是怎样获得「智能」的?
* 用好 AI 的核心心法
* 大模型应用业务架构
* 大模型应用技术架构
* 代码示例:向 GPT-3.5 灌入新知识
* 提示工程的意义和核心思想
* Prompt 典型构成
* 指令调优方法论
* 思维链和思维树
* Prompt 攻击和防范
* …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
* 为什么要做 RAG
* 搭建一个简单的 ChatPDF
* 检索的基础概念
* 什么是向量表示(Embeddings)
* 向量数据库与向量检索
* 基于向量检索的 RAG
* 搭建 RAG 系统的扩展知识
* 混合检索与 RAG-Fusion 简介
* 向量模型本地部署
* …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
* 为什么要做 RAG
* 什么是模型
* 什么是模型训练
* 求解器 & 损失函数简介
* 小实验2:手写一个简单的神经网络并训练它
* 什么是训练/预训练/微调/轻量化微调
* Transformer结构简介
* 轻量化微调
* 实验数据集的构建
* …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
* 硬件选型
* 带你了解全球大模型
* 使用国产大模型服务
* 搭建 OpenAI 代理
* 热身:基于阿里云 PAI 部署 Stable Diffusion
* 在本地计算机运行大模型
* 大模型的私有化部署
* 基于 vLLM 部署大模型
* 案例:如何优雅地在阿里云私有部署开源大模型
* 部署一套开源 LLM 项目
* 内容安全
* 互联网信息服务算法备案
* …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】