上下文工程:从提示工程到AI应用的核心技术(干货收藏)
虽然“上下文工程”的原理并非全新,但这个术语提供了一个有用的抽象,帮助我们理解构建有效 AI 智能体时面临的最紧迫挑战。简单来说,AI 智能体需要相关上下文才能合理地执行任务。与传统“提示工程”主要关注如何巧妙措辞和提供指令不同,上下文工程将重点放在如何用最相关的信息填充 LLM 的上下文窗口,无论这些信息来源于何处。它不仅仅是短任务描述,更是“将正确的信息在正确的时间填入上下文窗口的精妙艺术与科
本文介绍了上下文工程作为AI应用开发的新核心,关注如何为LLM提供最相关的上下文信息,包括系统提示词、用户输入、记忆、知识库等多种元素。良好的上下文工程能减少AI失败、确保一致性、实现复杂功能并优化成本。文章介绍了上下文排序、压缩、长期记忆存储等技术策略,以及通过模板和PRPs进行实践的方法,使AI编码助手更高效地完成任务。
一、什么是上下文工程?
虽然“上下文工程”的原理并非全新,但这个术语提供了一个有用的抽象,帮助我们理解构建有效 AI 智能体时面临的最紧迫挑战。简单来说,AI 智能体需要相关上下文才能合理地执行任务。
与传统“提示工程”主要关注如何巧妙措辞和提供指令不同,上下文工程将重点放在如何用最相关的信息填充 LLM 的上下文窗口,无论这些信息来源于何处。它不仅仅是短任务描述,更是“将正确的信息在正确的时间填入上下文窗口的精妙艺术与科学”。Andrej Karpathy 将 LLM 类比为新型操作系统,模型是 CPU,而上下文窗口就是 RAM,上下文工程正是精巧地把对的信息在对的时机塞进上下文窗口的微妙艺术与科学。它就像为 AI 编写一个完整的剧本,而非仅仅一张便条或提词器。
二、上下文的构成要素
在实际的 AI 智能体或 LLM 应用中,上下文由多种元素组成:
- 系统提示词/指令(
System Prompt/Instruction):为智能体设定场景,定义模型行为的初始指令和风格,明确其任务类型。 - 用户输入(
User Input):用户的具体问题或任务请求。 - 短期记忆或聊天历史(
Short Term Memory / Chat History):提供 LLM 关于当前对话的上下文,包含用户和模型的所有回应。 - 长期记忆(
Long-Term Memory):用于存储和检索长期聊天历史或其它相关信息,例如跨对话的用户偏好、过去对话摘要、被告知要记住的事实等。 - 从知识库中检索的信息(
Information retrieved from a knowledge base):通过RAG(Retrieval Augmented Generation)技术从数据库、API 调用、MCP工具或其它外部来源检索到的相关信息。 - 工具及其定义(
Toolsandtheir definitions):向 LLM 提供它可访问的工具的额外上下文。 - 工具的响应(
Responses from tools):工具运行后返回给 LLM 的结果,作为新的上下文供其继续工作。 - 结构化输出(
Structured Outputs):定义模型回应的格式,也可以反过来提供凝练的结构化信息作为特定任务的上下文。 - 全局状态/工作流上下文(
Global State/Workflow Context):特别适用于 LlamaIndex 构建的智能体,可作为暂存器,在智能体步骤中存储和检索全局信息,或在多步骤 Agent/Workflow 中暂存任务进度、先前结果等。
所有这些元素的某种组合构成了几乎所有智能体 AI 应用程序中底层 LLM 的上下文。

三、上下文工程的重要性
上下文工程之所以如此重要,原因在于它能显著提升 AI 系统的性能和可靠性:
- 减少 AI 失败:大多数智能体失败并非模型本身的失败,而是上下文提供的不足或不当。
- 确保一致性:通过提供全面的上下文,AI 能更好地遵循项目模式和约定。
- 实现复杂功能:AI 能够处理多步骤的复杂实现,得益于适当的上下文。
- 自我纠正能力:结合验证循环,AI 能够识别并修正自身的错误。
- 将“原始智力”转化为“智慧软件系统”:LLM 的“智力”只是基石,要使其真正有效,必须通过上下文工程提供其所需的所有信息和工具。
- 成本效益:上下文并非免费,每个 token 都有成本,并且会影响模型行为。因此,动态管理上下文能有效优化成本和性能。

四、上下文工程的技术与策略
鉴于上下文构成的复杂性,上下文工程面临两大挑战:选择正确的上下文和让上下文适应上下文窗口限制。以下是一些关键的架构选择和策略:
- 知识库或工具选择(
Knowledge base or tool selection): 与仅针对单一知识库(如向量存储)进行问答的 RAG 应用不同,现在的智能体应用通常需要访问多个知识库和工具。智能体首先需要关于可用工具或知识库的信息,这是确保智能体选择正确资源的关键上下文。 - 上下文排序或压缩(
Context ordering or compression): 由于上下文窗口的限制,需要最大化利用有限空间。技术包括:
- 上下文摘要:在检索步骤后对结果进行摘要,再添加到 LLM 上下文中。
- 排序:在某些情况下,信息的顺序也很重要,例如当信息的日期高度相关时,通过排序步骤可以确保 LLM 收到最相关的信息。
- 自动压缩(
Auto-compact):例如Claude Code在上下文窗口超过 95% 时,会执行自动压缩,总结当前状态并重新开始。
- 长期记忆存储与检索(
Long-term memory storage and retrieval): 对于需要持续对话的应用,对话历史本身就是上下文。LlamaIndex 提供了多种长期记忆实现方式,例如:
VectorMemoryBlock:从向量数据库存储和检索聊天消息。FactExtractionMemoryBlock:从聊天历史中提取事实。StaticMemoryBlock:存储静态信息。 选择合适的长期记忆类型以及它应返回多少上下文,是构建智能体时的重要决策。
- 结构化信息(
Structured Information): 避免提供所有不必要的上下文是常见错误。结构化输出能显著提高提供给 LLM 上下文的相关性:
- 请求结构:向 LLM 提供一个 schema,要求其输出符合该 schema。
- 作为额外上下文提供的结构化数据:以凝练的方式提供相关上下文,避免上下文过载。 LlamaExtract 等工具可以从复杂文件中提取最相关的数据,然后将这些结构化输出用作下游智能体应用的精简上下文。
- 工作流工程(
Workflow Engineering): 虽然上下文工程关注优化每次 LLM 调用中的信息,但工作流工程则更宏观地考虑“需要什么样的 LLM 调用序列和非 LLM 步骤才能可靠地完成工作?”。它能从根本上优化上下文:
- 定义明确的步骤序列:规划复杂任务所需任务的确切流程。
- 战略性控制上下文:精确决定何时调用 LLM,何时使用确定性逻辑或外部工具。
- 确保可靠性:内置验证、错误处理和回退机制。
- 优化特定结果:创建专门的工作流,持续交付业务所需结果。 从上下文工程的角度来看,工作流至关重要,因为它们可以防止上下文过载。通过将复杂任务分解为专注的步骤,每个步骤都有自己的优化上下文窗口,而不是将所有内容塞入一个 LLM 调用。
- 隔离上下文(
Isolating Context): 通常出现在多智能体(Multi-Agents)的实现中。任务可以拆分到另一个子智能体(Sub Agent)去执行,执行完成后只返回结果,从而大大节省主智能体的上下文用量。 - 自定义格式(
Custom Formats): 不一定需要遵循模型厂商预设的 message-based 格式。可以为特定使用场景创建优化的上下文格式,例如将上下文用 XML 格式都塞到单一用户提示中,以获得最大的信息密度,用更少的 Token 传递相同信息。

五、实践:利用模板进行上下文工程
要将上下文工程付诸实践,我们可以参考一些优秀的项目,例如coleam00/context-engineering-intro这个 GitHub 仓库。它提供了一个全面的上下文工程模板,旨在帮助用户为 AI 编码助手设计和工程化上下文,使其能够端到端地完成工作。该模板以 Claude Code 为中心,但其策略可应用于任何 AI 编码助手。 该模板强调:上下文工程比提示工程优秀 10 倍,比“vibe coding”优秀 100 倍。它是一个完整的系统,用于提供全面的上下文,包括文档、示例、规则、模式和验证。 其模板结构包括:
.claude/commands/:定义自定义命令,如generate-prp(生成综合性 PRP)和execute-prp(执行 PRP 以实现功能)。PRPs/:存放PRP(Product Requirements Prompts),这是一种综合的实现蓝图,包含完整上下文、文档、实现步骤、验证、错误处理模式和测试要求。examples/:存放代码示例,这对于成功至关重要,AI 编码助手在有模式可循时表现更好。CLAUDE.md:定义项目范围内的全局规则,如项目意识、代码结构、测试要求、风格约定和文档标准。INITIAL.md:用于描述初始功能请求,包含功能描述、示例引用、相关文档链接和其它注意事项。
整个工作流程大致如下:
- 设置全局规则:在
CLAUDE.md中定义项目范围的规范。 - 创建初始功能请求:编辑
INITIAL.md,详细描述要构建的功能。 - 生成 PRP:使用
/generate-prp INITIAL.md命令,该命令会阅读功能请求、研究代码库、搜索相关文档,并生成一份全面的 PRP 文档。 - 执行 PRP:使用
/execute-prp PRPs/your-feature-name.md命令,AI 编码助手会阅读 PRP 中的所有上下文,创建详细的实现计划,执行每个步骤并进行验证,运行测试并修复问题,确保满足所有成功标准。
这种方法大大减少了 AI 智能体的失败,确保了一致性,并使复杂功能的实现成为可能。
结语
上下文工程已经成为 AI 时代更重要的能力。它意味着提示工程师需要转型,可以转变为上下文工程师。这种工程思路要比vibe coding更具流程性和专业性。未来,无论是构建复杂的智能体还是优化现有的 AI 应用,理解并精通上下文工程都将是 AI 工程师的核心竞争力。它将解放工程师,并让人们能够更直观、更强大地控制计算机,实现真正的人机协作。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】


为什么要学习大模型?
我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年,人才缺口已超百万,凸显培养不足。随着AI技术飞速发展,预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。


大模型入门到实战全套学习大礼包
1、大模型系统化学习路线
作为学习AI大模型技术的新手,方向至关重要。 正确的学习路线可以为你节省时间,少走弯路;方向不对,努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划,带你从零基础入门到精通!

2、大模型学习书籍&文档
学习AI大模型离不开书籍文档,我精选了一系列大模型技术的书籍和学习文档(电子版),它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。

3、AI大模型最新行业报告
2025最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

4、大模型项目实战&配套源码
学以致用,在项目实战中检验和巩固你所学到的知识,同时为你找工作就业和职业发展打下坚实的基础。

5、大模型大厂面试真题
面试不仅是技术的较量,更需要充分的准备。在你已经掌握了大模型技术之后,就需要开始准备面试,我精心整理了一份大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。

适用人群

第一阶段(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%免费】

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)