心 智 七 篇 · Seven Mental Models
← Knowledge Atlas · 概念

Context Engineering(上下文工程)

上下文工程:策展和维护最优 token 集合的策略,区别于 prompt engineering
概念 · CONTEXT ENGINEERING · 推理前信息策展

Context Engineering

Context Engineering — 策展和维护最优 token 集合的策略总称

找到最小的高信号 token 集合,最大化期望结果的可能性。Prompt engineering 写好指令(静态);Context engineering 策展信息(动态)——每次推理前都要决定放什么、丢什么。

注意力预算
Transformer 的 n² pairwise 关系——随 token 数增长,注意力被摊薄;每个 token 都在消耗预算
Just-in-time
维护轻量级引用(路径/查询/链接),运行时动态加载;优于 upfront 堆砌
Compaction
超出 context 上限时压缩历史;结构化摘要(显式 section)胜过全量重生成
Sub-agent
长任务拆分到多个独立 context;跨 session 状态外部化(progress file)
静态策展
  • System prompt:不过度具体,不过度模糊
  • 工具设计:自包含、无歧义、最小重叠
  • CLAUDE.md / AGENTS.md 预加载
动态策展
  • glob/grep 按需检索,不维护陈旧索引
  • 工具结果选择性保留/丢弃
  • Note-taking:agent 自持外部笔记
→ Context Management · Context Rot · Compaction · Sub-agentAnthropic (2026) · Manus (2025)

Context Engineering(上下文工程)

定义

Context engineering 是策展和维护 LLM 推理时最优 token 集合的策略总称。它涵盖 system prompt、工具定义、MCP、外部数据、消息历史等所有进入 context window 的信息。

与 prompt engineering 的区别:prompt engineering 聚焦于写好指令(一次性的、静态的);context engineering 聚焦于策展信息(迭代的、动态的——每次推理前都要决定放什么、丢什么)。

核心原则

找到最小的高信号 token 集合,最大化期望结果的可能性。

这个原则来自两个架构约束:

注意力预算(Attention Budget)

Transformer 的自注意力机制让每个 token 关注所有其他 token,产生 n^2 的 pairwise 关系。随着 token 数增长,模型的注意力被摊薄。类比人类有限的工作记忆容量——LLM 也有注意力预算,每个新 token 都在消耗这个预算。

Context Rot

随着 context window 中 token 数量增加,模型准确回忆信息的能力下降。这是梯度退化而非断崖——模型在长 context 下仍然有能力,但精度降低。原因包括:

  • 训练数据中短序列更常见,模型对长距离依赖经验更少
  • 位置编码插值(position encoding interpolation)允许处理更长序列,但会损失位置理解精度

实践维度

静态策展:有效 Context 的构成

  • System prompt 的正确高度:在过度具体(脆弱的 if-else 逻辑)和过度模糊(缺乏信号)之间找平衡。最小但完备。
  • 工具设计:自包含、无歧义、最小功能重叠。膨胀的工具集是最常见的 agent 失败模式之一。
  • 示例:多样化的典型示例优于穷举边界情况。

动态策展:Just-in-time Context

从预处理全量数据转向按需加载:

  1. 轻量级引用:agent 维护文件路径、查询、链接等元数据,而非全量内容
  2. 运行时加载:通过工具动态拉取需要的数据
  3. 渐进式披露:agent 通过探索逐步发现相关 context——文件大小暗示复杂度、命名约定暗示用途、时间戳是相关性的代理
  4. 混合策略:部分关键信息预加载(如 CLAUDE.md),其余按需检索(如 glob/grep)

这镜像了人类认知:我们不记忆整个语料库,而是建立索引系统(文件系统、收件箱、书签)按需检索。

长时策展:跨 Context Window 的策略

三种互补策略应对 context window 耗尽:

策略机制适用场景
Compaction压缩对话历史,用摘要替换需要持续对话流的任务
Structured note-takingagent 主动写笔记到外部存储有明确里程碑的迭代开发
Sub-agent 架构子 agent 深入探索后返回压缩摘要(通常 1000-2000 token)需要并行探索的复杂研究

详见 context management 中对 compaction 机制的深入讨论。

与 Prompt Engineering 的演化关系

Context engineering 不是替代 prompt engineering,而是其自然延伸。当应用从单次分类/生成走向多轮自主 agent,工程对象从”prompt 文本”扩展为”整个 context 状态”。Agent 在循环中不断生成新数据,这些数据可能相关——context engineering 就是从这个不断膨胀的信息宇宙中策展出最优子集。

压缩评估:从理论到实证

Factory 的 Context Compression 评估 为 context engineering 的”最小高信号 token 集合”原则提供了实证支撑。研究表明压缩率不是正确的优化目标——OpenAI 的 99.3% 压缩率反而导致质量最低(3.35/5.0)。正确的指标是 tokens per task:丢失的信息最终需要 agent 重新获取,总 token 消耗可能更高。

这为 context engineering 增加了一个量化维度:压缩策略 的选择不仅是技术权衡,也是经济权衡——压缩的质量直接影响下游的 token 效率。

相关概念

References

  • sources/anthropic_official/effective-context-engineering-for-ai-agents.md
  • sources/factory-evaluating-context-compression.md