Context Engineering 2.0: The Context of Context Engineering
Context Rot: How Increasing Input Tokens Impacts LLM Performance
当前对大型语言模型(LLM)长上下文能力的研究,普遍集中于如何将上下文窗口扩大到数百万 Token,或如何优化自注意力机制的 \(O(N^2)\) 复杂度。然而,这篇由 Hua 等人撰写的《Context Engineering 2.0: The Context of Context Engineering》论文,提出了一个更基础的理论框架:**上下文工程(Context Engineering)的本质是一个跨越历史的熵减(Entropy Reduction)**过程。它不仅将当前 LLM 的实践与人机交互(HCI)的深厚历史相连接,更通过系统化的架构原则,为解决长上下文带来的内在性能衰减提供了工程指导。
一、理论基石:上下文与上下文工程的形式化定义#
论文首先明确了上下文工程的理论根基,为这一领域提供了一套形式化语言,避免了对“上下文”的模糊理解。
1. 上下文的集合论定义#
论文借鉴并形式化了 Anind K. Dey(2001b)的经典定义。它将上下文 \(C\) 定义为所有与特定用户-应用交互相关的实体 \(\mathcal{E}_{rel}\) 的表征信息的并集:
$$ C = \bigcup_ {e \in \mathcal {E} _ {r e l}} \operatorname {C h a r} (e) \tag {2} $$其中:
- \(e\) 是实体(用户、应用、环境、工具、记忆模块等)。
- \(\operatorname{Char}(e)\) 返回描述实体 \(e\) 的信息集合(如用户输入、系统指令、当前工作目录)。
- \(\mathcal{E}_{rel}\) 是与当前交互相关的实体集合。
这一定义强调了上下文的整体性(Holistic),它远超于对话历史或系统提示的范畴,涵盖了环境、设备、状态等多个维度,是对当前狭隘实践的直接修正。
2. 上下文工程的转化函数#
上下文工程被定义为一个系统性的过程,其目标是增强机器理解和任务性能。在形式上,它被视为一个转化函数 \(CE\),将原始上下文 \(C\) 和目标任务 \(\mathcal{T}\) 映射为一个优化的上下文处理函数 \(f_{\text{context}}\):
$$ C E: (C, \mathcal {T}) \rightarrow f _ {\text {context}} \tag {3} $$$$ f _ {\text {context}} (C) = \mathcal {F} \left(\phi_ {1}, \phi_ {2}, \dots , \phi_ {n}\right) (C) \tag {4} $$\(f_{\text{context}}\) 本身是各种具体操作(如收集、存储、选择、抽象)的灵活组合,体现了上下文工程是一项有目的、主动介入的工程活动。

3. 熵减是核心驱动力#
论文将上下文工程的核心使命定义为熵减:人类意图是高熵的,机器需要低熵的表示。因此,上下文工程的“努力”在于将高熵的人类意图转化为机器可理解的低熵表示。这种努力的成本是衡量人机交互效率的关键,并随着机器智能的提升而逐渐从人向机器转移,构成了论文四阶段模型(Era 1.0 到 Era 4.0)演进的根本逻辑。

二、实证批判:Context Rot 与长上下文的内在脆弱性#
论文强调了上下文管理的重要性,这一观点得到了现代 LLM 性能衰减的实证支持。最新的研究报告《Context Rot: How Increasing Input Tokens Impacts LLM Performance》提供了一个关键的实证验证,即简单地堆叠上下文本身就会系统性地损害模型性能。
- 传统误区:行业长期以来以 LLM 在如 NIAH(Needle in a Haystack)等测试中的高分,来标榜其长上下文能力。
- 问题诊断:Context Rot 指出,这些测试往往是简单的词汇匹配,难以反映模型在进行真实语义推理、事实整合或遵循复杂指令时的鲁棒性。
- 关键发现:实证实验表明,即使在上下文窗口容量未满的情况下,随着输入长度的增加,模型的性能仍会系统性、非均匀性地衰减。这种衰减是由于海量 Token 引入了噪音和分散注意力,降低了输入上下文的信噪比。

Context Rot 的发现,从经验层面佐证了《Context Engineering 2.0》的理论需求:长上下文窗口并非银弹。单纯的容量扩张并不能解决信息熵的问题。当高熵的、未经处理的上下文被堆叠时,它会压倒模型的注意力机制,导致推理的脆弱。因此,上下文工程——即对上下文的主动降熵——成为确保系统鲁棒性的必要条件。
三、战略响应:鲁棒的上下文管理架构#
为应对长上下文带来的挑战,论文提出了从收集、管理到使用的系统性策略,其核心在于建立分层(Layered)、抽象(Abstracted)、**隔离(Isolated)**的记忆架构。
1. 分层记忆与结构化存储#
上下文的存储必须遵循 “最小充分原则”,并根据时间尺度和重要性进行分层管理:
短期记忆 (\(M_s\)):具备高时间相关性,通常是当前的对话历史或上下文窗口。
$$ M _ {s} = f _ {\text {short}} \left(c \in C: w _ {\text {temporal}} (c) > \theta_ {s}\right) \tag {5} $$其中 \(w_{\text{temporal}}(c)\) 是时间相关性权重,\(\theta_s\) 是短期记忆阈值。
长期记忆 (\(M_l\)):是经过处理和抽象、具备高重要性的上下文,通常存储在外部数据库(如向量数据库、结构化文件系统)。
$$ M _ {l} = f_{\text {long}} \left(c \in C: w_{\text {importance}} (c) > \theta_{l} \wedge w_{\text {temporal}} (c) \leq \theta_ {s}\right) \tag {6} $$\(w_{\text{importance}}(c)\)是重要性权重。
记忆转移 (\(f_{\text{transfer}}\)):连接两层记忆的机制,即“自烘焙”(Self-Baking)过程,用于将短期的、频繁访问的信息固化为长期知识。
2. 自烘焙(Self-Baking)与信息抽象#
“Context Rot”的实证研究表明,原始、未经处理的上下文会作为性能衰减的噪声源。为解决这一根本问题,论文引入了一个关键的上下文管理机制:自烘焙(Self-Baking)。

Self-Baking是一个系统性的过程,智能体通过该过程,主动地、选择性地将其自身的原始、高熵上下文,转化为紧凑、结构化、低熵的知识表示。
这个过程并非简单的信息压缩,而是知识的提炼与固化。它在概念上类似于人类的认知过程:我们将日常经历的、琐碎的情景记忆(Episodic Memory,如“昨天下午我和张三讨论了项目A的预算问题”),逐步巩固为更稳定、更普适的语义记忆(Semantic Memory,如“项目A的预算非常紧张”)。
从工程角度看,“Self-Baking”是实现论文核心理论——“熵减”——的主要实践手段。它主动地管理信息信噪比,确保智能体在与环境的长期交互中,能够构建一个稳定、可用、不断演进的知识库,而不是被自身不断膨胀的原始记忆所淹没。
这一过程并非单一方法,而是可以通过多种架构模式实现,每种模式在结构、灵活性和计算成本上都有不同的权衡:
| 抽象模式 | 描述 | 优势与挑战 | 典型案例 |
|---|---|---|---|
| 自然语言摘要 | 定期对长上下文生成简洁的自然语言概述。 | 优势: 简单灵活。 挑战: 摘要本身仍是非结构化文本,难以支持深度推理。 | 任务日志、对话总结 |
| 结构化 Schema 提取 | 将关键信息编码到预定义结构(如任务树、实体图、事件记录)中。 | 优势: 极利于逻辑推理和关系查询。 挑战: 需设计复杂提取器,维护多层表示时可能出现不一致。 | CodeRabbit 的结构化 Case File |
| 向量压缩/融合 | 将原始上下文编码为密集向量(Embedding),并通过池化等操作将旧向量融合成更抽象的语义表示。 | 优势: 紧凑、灵活,利于语义搜索。 挑战: 人类不可读,难以编辑或检查。 | 层次化向量记忆系统 |
最终,“Self-Baking”标志着一个根本性的范式转变:它将工程焦点从被动地在不断扩大的上下文窗口中累积数据,转向主动地将信息构建为一个持久、演进的知识库。这是使智能体能够从经验中学习、保持长期任务连贯性,并扩展其推理能力而免于被自身历史淹没的关键所在。
3. 上下文隔离与协调#
在单一、扁平的上下文中,所有信息——无论其来源、重要性或时间相关性——都被混合在一起。这种架构直接导致了论文所警示的**“上下文污染”(Context Pollution)**,这也是“Context Rot”现象背后的关键驱动因素之一。上下文污染指的是不相关的历史信息、工具输出或并行任务的细节,干扰了当前任务的执行,导致模型注意力分散、产生逻辑错误,并无谓地消耗计算资源。
为解决此问题,上下文工程必须引入架构性约束。上下文隔离(Context Isolation)正是这样一种核心的架构原则,它通过建立明确的边界来主动管理信息流,从根本上防止污染。一旦系统由多个隔离的单元(如不同的智能体或子智能体)组成,它们之间的**协调(Coordination)**就成为新的核心挑战。
论文中的 Figure 7(如下图所示)为跨智能体的上下文共享模式提供了一个清晰的分类框架,展示了从高熵、脆弱的通信到低熵、鲁棒的协调机制的演进路径。

模式 A: 将上下文嵌入提示(Embedding Context Into Prompts)
这是最基础、最直接的通信方式。一个智能体的输出(通常是自然语言形式的总结或思考过程)被直接拼接或嵌入到下一个智能体的输入提示中。
- 机制:Agent 1 Output → Prompt → Agent 2 Input
- 熵与鲁棒性:这种方式的熵值最高。自然语言的内在歧义性、缺乏结构,以及对上下文长度的快速消耗,都使其成为一种**脆弱的(Brittle)**通信协议。接收方智能体需要付出额外的认知努力去解析和理解非结构化的输入,极易产生误解,导致任务链的失败。
- 适用场景:适用于简单的、线性的、短链条的任务流,其中智能体间的交互信息量小且无歧义。
模式 B: 交换结构化消息(Structured Messages Exchange)
为克服模式 A 的脆弱性,此模式引入了预定义的通信协议。智能体之间不再传递自由文本,而是交换遵循特定 Schema 的结构化消息。
- 机制:Agent 1 →
Message(task_type, inputs, outputs, ...)→ Agent 2 - 熵与鲁棒性:通过强制执行 Schema(如 JSON),该模式显著降低了通信的熵。信息被组织在明确的字段中,消除了歧义,使通信内容机器原生可读。这大幅提升了系统的鲁棒性和可预测性,因为接口是明确且稳定的。
- 适用场景:适用于需要清晰、可靠信息交接的协作任务,是大多数生产级多智能体系统的基础通信方式。
模式 C: 使用共享内存进行间接通信(Shared Memory for Indirect Communication)
这是最先进、最灵活的协调模式。智能体之间不进行直接点对点通信,而是通过读写一个共享的中央数据存储区来异步协作。这种模式进一步降低了系统耦合度。Figure 7 将其细分为三种复杂程度递增的实现:
- C1. 内存块(Memory Blocks):最简单的共享内存形式,可以看作是一个共享的日志或便笺(Scratchpad)。智能体将条目(Entry)写入,其他智能体按需读取。它实现了基础的异步通信,但信息本身缺乏组织。
- C2. 结构化黑板(Structured Blackboard):这是内存块的演进。共享内存被划分为不同的区域或主题(如“待办任务”、“已完成分析”、“关键发现”)。智能体只订阅和操作与其职责相关的分区,实现了更高层次的组织性和更低的协调复杂性。
- C3. 基于图的内存(Graph-based Memory):这是最复杂的形态。上下文被组织为一个知识图谱,其中节点代表任务、实体或知识点,边代表它们之间的逻辑关系(如“依赖于”、“细化了”、“因果关系是”)。这种方式提供了对复杂协作过程最高保真度的、最低熵的表示,因为它明确编码了信息之间的深层逻辑依赖关系,而无需 LLM 从扁平文本中进行推断。
三种模式的比较
| 协调模式 | 通信风格 | 熵水平 | 鲁棒性 | 耦合度 | 核心优势 |
|---|---|---|---|---|---|
| A. 提示嵌入 | 同步 / 直接 | 高 | 低 | 紧密 | 实现简单,适用于短链条任务 |
| B. 结构化消息 | 同步 / 直接 | 中 | 中 | 中 | 通信明确,接口稳定,可靠性高 |
| C. 共享内存 | 异步 / 间接 | 低 | 高 | 松散 | 解耦智能体,支持复杂、动态的协作 |
综上所述,从模式 A 到模式 C 的演进,不仅是技术复杂度的提升,更体现了上下文工程在架构层面的成熟。它标志着智能体系统的设计从临时的、点对点的“对话”,转向了持久的、系统化的“协作”。通过构建坚实的“信息防火墙”(隔离)和高效的“通信总线”(协调),为构建可扩展、可维护且真正鲁棒的复杂AI系统提供了必要的结构性保障。
四、语义操作系统与未解的难题#
论文将上下文工程的终极目标定为构建一个能够管理和演化个体一生数字痕迹的**“语义操作系统”,并提出了“数字存在”(Digital Presence)的宏伟愿景。这要求系统具备类人的记忆管理能力:主动添加、修改,甚至进行“智慧的遗忘”**。
然而,这种愿景同时指向了当前研究中被严重低估的挑战:
- 量化与可解释性挑战:在实践层面,如何精确量化抽象(Self-Baking)带来的“熵减”效益?如何构建一个能够追溯、校验、甚至“撤销”错误记忆的系统,以确保推理链的可靠性?
- 伦理与安全挑战:一个拥有个体所有上下文的“语义操作系统”将构成人类历史上最强大的数据集合。其隐私、安全、以及被用于操纵个体意图的潜在风险是巨大的。论文对这一点的讨论略显不足,无法构成对未来系统设计者的充分警示。
- 可持续性挑战:存储和持续处理终身数据所需的计算资源和能源成本是天文数字。在当前的硬件和经济模型下,“终身上下文工程”在很大程度上仍然是一个缺乏可持续性的概念。
结语:上下文工程的时代#
《Context Engineering 2.0》是一份关键性的路线图。它“纠正”了 LLM 时代将“上下文”物化为“Token 数量”的工程偏误,并将问题重新聚焦于信息的本质(高熵 vs. 低熵)。
无论是 Context Rot 的实证研究,还是 \(O(N^2)\) 的算法瓶颈,都指向了同一个结论:智能体的鲁棒性和可扩展性,也许不再取决于底层模型的原始能力,而是在于外部上下文管理架构的设计质量。
对于开发者而言,构建高级 AI 智能体的关键,不在于无止境地扩大 token 限制,而在于设计出精巧、高效、多层次的上下文管理架构——从多模态的整体性收集,到分层存储,再到以“Self-Baking”为核心的降熵抽象,最终实现多智能体间结构化的、高信噪比的信息交换。