上下文工程:AI 编程的新兴学科
Site Owner
发布于 2026-06-03
如果提示词工程是 AI 协作的起点,那上下文工程才是真正的壁垒。本文探讨这一新兴工程学科的核心命题、典型实践与工具生态。
上下文工程:AI 编程的新兴学科
如果 2023 年是提示工程(Prompt Engineering)的元年,那么 2024-2025 年,社区开始意识到一个更根本的问题:人类与 AI 协作编程的本质,不是「写更好的提示词」,而是「管理AI的上下文」——这正在催生一门全新的工程学科:上下文工程(Context Engineering)。
从"会聊天"到"会设计上下文"
早期的 AI 编程实践,焦点在交互层:怎么问 AI 问题,怎么拆解任务,怎么引导它一步步思考。但随着 Claude Code、Cursor、Github Copilot 等工具深入工程一线,开发者逐渐发现一个苦涩的事实:AI 的表现上限,往往不是由模型决定的,而是由你给它的上下文质量决定的。
给同样的模型,一个糟糕的上下文产生的是 boilerplate 垃圾代码,一个精心设计的上下文可以产生生产级别的系统设计。这之间的差距,不在模型,在人。
于是,一门以「上下文」为核心对象的工程学科悄然成形。
上下文工程不是什么
在深入之前,有必要澄清几个常见误解。
上下文工程 ≠ 提示词工程。 提示词工程关注的是「说什么」(内容),上下文工程关注的是「怎么说」以及「说的时候带什么」(结构与输入)。一个好的上下文工程师,会系统性地思考:代码的哪些部分需要进入上下文?用什么粒度?以什么顺序?要不要分层抽象?
上下文工程 ≠ RAG。 RAG(检索增强生成)是上下文工程的一种技术手段,但上下文工程的范畴远不止检索——它包括:上下文的选择、裁剪、排序、压缩、分层注入,以及上下文与模型注意力机制的适配。
上下文工程的核心命题
我们从实践中提炼出三个核心命题:
1. 上下文是有限资源,必须被管理
大模型的上下文窗口看似很大(200K token 以上已是常态),但实际可用且有效的上下文是另一回事。模型存在「中间丢失」问题(Lost in the Middle):上下文中间的信息被模型关注的程度低于开头和结尾。这意味着一股脑把所有信息塞进上下文的做法是低效的。
上下文工程师要做的事:选择性暴露——把最相关的信息放在关键位置,用结构化方式组织,让模型能准确理解局部与整体的关系。
2. 上下文有层次,工程师要设计层次
一个成熟的 AI 编程上下文,通常包含以下几个层次:
- 系统层:角色定义、能力边界、行为约束(如 "你是安全审查员,重点关注 XSS 和 SQL 注入")
- 项目层:架构概述、模块关系、关键决策日志
- 当前任务层:具体目标、文件状态、最近对话历史
- 工具层:可调用工具的能力描述和使用约束
层次不清的上下文是 AI 产生幻觉和无关输出的主要诱因之一。
3. 上下文需要版本化和可复现
传统的提示词是临时性的——每次对话都是新的。成熟的上下文工程实践,开始引入上下文模板的概念:将项目上下文抽象为可版本化、可复用的结构。这类似于传统软件中的架构决策记录(ADR),但服务于 AI 而非人类读者。
典型实践:从代码补全到系统共建
让我们看一个具体的转变。
传统 AI 代码补全: 打开 IDE,写一段注释,AI 补全代码。这是一对一的上下文——注释 + 当前文件。
上下文工程实践: 在开始一个功能前,先向 AI 描述:模块的上一层架构、新功能在其中的位置、该模块现有的测试覆盖情况、最近三次相关提交的摘要、以及本项目关于错误处理的约定。AI 在这个丰富的上下文中,不是补全代码,而是设计方案并实现——因为它理解了为什么而做,而不只是做什么。
这其中的差距,是上下文的质量。
工具与生态正在跟进
上下文工程的需求,正在催生一批新工具:
- Context7:通过语义检索将相关代码文件注入 AI 上下文,解决「中间丢失」问题
- Cline/MCP 生态:将工具调用和上下文注入标准化
- Aider 等编辑器:内置多文件上下文的智能管理策略
- 各类项目级 AI 上下文生成器:自动生成项目摘要、结构图、决策记录
这些工具的出现印证了一个判断:上下文工程不是一种技巧,而是一个正在形成的工程学科——它有自己的最佳实践、工具链、人才需求。
为什么这对 AI 原生开发至关重要
在 AI 原生应用(AI Native Application)的开发中,上下文工程的地位更加核心。AI 原生应用的核心特征是:AI 不是辅助工具,而是系统的主要接口和决策者。这意味着:
- 系统需要为 AI 优化上下文格式(而不仅仅是为人类可读)
- 上下文容量成为架构设计的约束条件
- 如何高效向 AI 传递状态变化,成为系统设计的核心问题
从某种角度说,AI 原生开发者的核心技能,正在从「写代码」转向「设计 AI 能理解并高效处理的上下文结构」。
结语
上下文工程仍是一个年轻的领域,许多最佳实践尚未固化。但有两件事是确定的:
第一,它不仅仅关乎 AI 编程效率,它是一门关于「如何在上下文稀缺的世界中,做出最优信息决策」的应用学科。
第二,能够系统性地管理上下文——理解模型注意力的工作原理、设计层次化的信息结构、构建可复用的上下文模板——正在成为 AI 时代软件工程师的核心能力之一。
也许再过几年,「上下文工程师」会像今天的「DevOps 工程师」一样,成为一个独立的职位名称。在此之前,先掌握它的人,将拥有显著的竞争优势。
如果你正在探索 AI 编程的最佳实践,欢迎在评论区分享你的上下文设计经验。