AI技术工程进化:上下文工程(Context Engineering)-- 从提示词工匠到上下文架构师
引言过去,Prompt Engineering 几乎是每个 LLM 应用开发者的必修课:如何写出更好的 System Prompt、如何用 Few-shot 示例引导模型、如何用"Let’s think step by step"激发推理能力……但当你真正开始构建一个需要跑几十甚至上百轮工具调用的 Agent 系统时,会很快发现一个残酷的事实——再精妙的提示词,也救不了一个被垃圾信息淹没的上下文窗口。这正是行业在 2025 年集中讨论"上下文工程"(Context Engineering)的背景。Cognition AI 直言,"上下文工程"已经是构建 AI Agent 工程师的第一职责;Anthropic 在 2025 年 9 月发表的《Effective Context Engineering for AI Agents》中,将其正式定义为一套独立于 Prompt Engineering 的系统性策略;LangChain 也在同期给出了自己的方法论框架。三家公司的表述略有差异,但共识是清晰的:当模型从"单次问答"走向"多轮自主运行的 Agent",管理的对象已经从"一句话怎么写"升级为"一整套动态信息供给系统怎么设计"。本文将系统梳理上下文工程的定义、与 Prompt Engineering 的本质区别、核心技术方法(RAG、上下文管理优化、工具调用),并给出一个可运行的 RAG 实践案例,最后讨论这一领域当前面临的挑战与未来方向。一、什么是上下文工程?1.1 明确定义Anthropic 给出的定义相当精确:Context Engineering 指的是在 LLM 推理过程中,用于筹划和维护"最优 Token 集合"的一整套策略,这里的"最优 Token"不仅包括提示词本身,还包括推理时落入上下文窗口的所有其他信息——系统指令、工具定义、外部检索到的数据、历史消息记录等。用更工程化的语言表述:LLM 的上下文窗口就像操作系统里的 RAM——容量有限、按需分配、需要精心管理;而模型本身则像 CPU。Andrej Karpathy 把这件事描述得很传神:“上下文工程是一门精妙的艺术与科学,核心是在下一步推理时,往上下文窗口里填入恰到好处的信息”。1.2 与 Prompt Engineering 的本质区别Prompt Engineering 和 Context Engineering 不是替代关系,而是范围包含与阶段演进的关系:维度Prompt EngineeringContext Engineering关注对象提示词本身的措辞、结构、示例设计整个上下文窗口中所有 Token 的来源、组织与生命周期典型场景单轮问答、一次性分类/生成任务多轮 Agent 循环、长时间跨度任务工作性质一次性的、静态的写作任务迭代的、动态的系统构建过程涉及组件System/User Prompt、Few-shot 示例Prompt + 工具定义 + 检索结果 + 历史消息 + 记忆系统