Context Engineering - 上下文工程

上一次更新:2026年4月

相关主题:LLM大语言模型 | RAG检索增强生成 | Prompt Engineering提示工程 | AI Agent人工智能体

概述

Context Engineering(上下文工程) 是2025-2026年AI开发领域最重要的技术 discipline,它代表了一种范式转变:从单纯优化单个提示词,转向系统性地设计和维护AI模型所接收的完整信息环境。

在生产级AI系统中,上下文窗口80-90%的内容由检索文档、对话历史和工具结果填充,而提示词本身仅占很小一部分。这解释了为什么上下文工程的质量往往比选择哪个模型更能决定AI输出的质量。


目录

  1. 核心概念与定义
  2. 上下文窗口管理
  3. 上下文构建技术
  4. 上下文结构化最佳实践
  5. RAG中的上下文工程
  6. 多轮对话管理
  7. 上下文质量评估
  8. 前沿技术
  9. 实操指南
  10. 工具推荐
  11. 参考资料

核心概念与定义

什么是Context Engineering

Context Engineering 是系统性地设计、构建和优化大型语言模型在推理时接收的完整信息环境的学科。根据Anthropic 2025年9月的文档,上下文工程涵盖“在LLM推理期间策展和维护最佳token集合的策略,包括进入上下文窗口的所有信息(提示词除外)”。

这一术语由Andrej Karpathy在2025年中期推广,他将上下文工程描述为“在上下文窗口中填充恰到好处的信息以完成下一步的微妙艺术和科学”。

Context Engineering vs Prompt Engineering

维度Prompt EngineeringContext Engineering
焦点优化单个查询的指令设计整个信息环境
范围孤立的交互优化跨会话的持久系统
控制方式每次交互手动提供自动化持续维护
时间成本每次查询15-25%时间解释上下文一次性设置,长期受益
一致性因开发者而异标准化统一

核心比喻:Prompt Engineering是选择问题的措辞,Context Engineering是决定在问题提出之前把哪些教科书、笔记和参考资料放在桌上。

五大支柱

上下文工程的五个核心支柱:

  1. 检索(Retrieval) - 从外部知识库获取相关信息
  2. 记忆管理(Memory Management) - 管理对话历史和持久化信息
  3. 状态管理(State Management) - 跟踪当前会话和任务状态
  4. 上下文压缩(Context Compression) - 在有限token预算内最大化信息价值
  5. 信息路由(Information Routing) - 决定哪些数据管道在何时激活

五类上下文

对于AI编码助手,上下文可分为五类:

类型描述示例
架构上下文系统结构和设计模式组件通信模式、数据流
代码库上下文现有代码和工具函数工具类、辅助函数
业务领域上下文业务规则和术语合规要求、工作流
开发工作流上下文流程和标准Git提交规范、代码审查
历史和执行上下文演化和运行时数据废弃模式、性能指标

上下文窗口管理

核心挑战

上下文窗口管理面临三大根本性挑战:

1. Token限制与成本

  • Claude 3 Sonnet: 200K tokens
  • GPT-4 Turbo: 128K tokens
  • Gemini 1.5 Pro: 2M tokens(2024年6月)
  • Claude Opus 4.6: 1M tokens(通用可用)

2. 信号稀释 当上下文扩展时,不相关信息会淹没关键信息,导致模型推理能力下降。研究表明,上下文漂移(Context Drift) 是2025年企业AI失败率65%的主要原因,而非单纯的上下文耗尽。

3. “中间丢失”效应 微软研究院2025年的研究发现,超过100K tokens后,有效上下文利用率降至约60%。模型难以整合或忽略长上下文中显著部分的信息。

主要压缩方法

1. 锚定迭代摘要(Anchored Iterative Summarization)

Factory在36,000个真实工程会话中的评估表明,这种方法通过扩展现有摘要(仅压缩新驱逐的消息并合并到持久状态)优于全量重建,在准确性、完整性和连续性上表现更佳。

2. ACON(Agent Context Optimization)

一种失败驱动的方法,通过分析压缩上下文导致任务失败的案例来迭代优化压缩指南。ACON在保持95%+任务准确率的同时,将内存使用减少26-54%,且可与闭源模型配合使用。

3. 提供商原生API

Anthropic的压缩API(compact-2026-01-12)在Claude、AWS Bedrock、Google Vertex AI和Microsoft Foundry上提供自动生产级压缩。

4. xRAG

使用模态融合将检索文档压缩为单一token,通过将文档嵌入整合到语言模型的表示空间中,在减少3.53倍计算量的同时提高10%性能。

5. CoLoR

通过偏好训练专门优化长上下文语言模型的压缩,实现6%检索提升,文档压缩比达1.91倍。

滑动窗口策略

滑动窗口是管理对话历史的经典方法:

[窗口大小: N条消息]
| 消息1 | 消息2 | ... | 消息N | → [保留] | → [丢弃]

变体

  • Token-based Window: 按token数量而非消息数量计算
  • Semantic Window: 按语义主题而非线性时间分段
  • Adaptive Window: 根据任务类型动态调整窗口大小

渐进式披露(Progressive Disclosure)

Anthropic在2025年12月发布的Agent Skills使用三级信息加载策略:

层级加载时机Token消耗示例
发现层始终可见~80 tokens名称、描述
激活层相关时加载275-2,000 tokens完整指令
执行层任务期间2,000-8,000 tokens脚本、材料

上下文构建技术

Few-Shot示例选择

Few-Shot Learning通过在提示中提供少量示例来引导模型理解任务。示例选择的质量直接影响模型性能。

核心策略

1. BM25检索

  • 基于概率的词匹配算法
  • 强Out-of-domain泛化能力
  • 低延迟,索引大小<0.4GB
  • 可通过查询增强和重加权提升

2. Embedding语义搜索

  • 使用稠密向量表示语义相似性
  • 超越关键词匹配的限制
  • 识别概念相关而非术语相同的内容

3. 最大边际相关性(MMR) MMR通过组合相似性和多样性来选择示例:

选择与输入嵌入余弦相似度最高的示例,
然后迭代添加示例时惩罚与已选示例的接近度。

MMR优于仅基于语义相似度选择示例的方法,确保选中的示例代表多样化概念。

示例池构建

高质量示例池的构建原则:

  1. 多样性覆盖:覆盖任务的各个维度和边界情况
  2. 代表性:反映真实分布而非极端案例
  3. 清晰标注:每个示例附带任务类型标签
  4. 定期更新:根据模型反馈迭代优化

上下文压缩技术

Contextual Compression Pipeline

LangChain的DocumentCompressor抽象实现:

检索文档 → 压缩处理 → 精炼上下文

关键压缩器

压缩器原理优势
LLMChainExtractor使用LLM从文档中提取相关陈述高精度
EmbeddingsFilter按嵌入相似度过滤文档自动化
DocumentCompressorPipeline链式组合多个压缩步骤灵活性

摘要技术

渐进式摘要(Progressive Summarization)

第1层: 保留完整原文
第2层: 提取关键句子
第3层: 生成摘要
第4层: 提取要点/标签

对话摘要 vs 记忆形成

研究显示,记忆形成优于摘要:选择性地存储关键事实而非压缩所有内容。Mem0等系统相比基础聊天历史管理,可削减80-90% token成本,同时将响应质量提高26%。


上下文结构化最佳实践

为什么结构重要

研究显示,提示结构对输出质量的影响与更换模型相当。当使用标准化格式时,你正在与LLM训练时接触的JSON(API)、XML(文档)、YAML(配置)等结构化数据格式对齐。

推荐格式

XML标签格式

Claude在XML结构化提示上达到87分(对比Markdown的71分)。

<role>你是一个Python后端开发专家</role>
<task>优化数据库查询性能</task>
<constraints>
  <limit>响应时间<100ms</limit>
  <limit>使用现有的ORM框架</limit>
</constraints>
<input>
  当前查询: {{query}}
  数据库schema: {{schema}}
</input>
<output_format>返回优化后的SQL和解释</output_format>

Markdown Fence格式

适用于混乱的有效载荷如堆栈跟踪、CSV和配置:

```json
{
  "error": "Connection timeout",
  "stack_trace": [...],
  "context": {...}
}
```

JSON格式

通用标准,适合需要机器可读输出的场景:

{
  "task": "code_review",
  "language": "python",
  "focus_areas": ["security", "performance"],
  "constraints": {
    "max_complexity": 10,
    "require_tests": true
  }
}

最佳实践清单

  • 使用祈使句而非描述(94%应用率 vs 73%)
  • 明确分离指令、约束、数据和输出格式
  • 跨提示使用一致的描述性标签名
  • 提供3-5个多样且相关的示例
  • 添加解释为什么的上下文动机
  • 将稳定内容(系统指令、工具定义)放在提示开头

RAG中的上下文工程

上下文工程 vs RAG

RAG是一种检索技术,而上下文工程是决定什么信息进入上下文窗口、如何进入、以什么顺序的架构层。

关系图

┌─────────────────────────────────────┐
│        Context Engineering          │
│  ┌─────────────────────────────┐   │
│  │     RAG (检索增强生成)        │   │
│  │  ┌─────────────────────────┐ │   │
│  │  │  Query Understanding    │ │   │
│  │  │  Context Routing       │ │   │
│  │  │  Hybrid Retrieval      │ │   │
│  │  └─────────────────────────┘ │   │
│  └─────────────────────────────┘   │
│  + System Prompts                   │
│  + Memory Management                │
│  + Tool Orchestration              │
└─────────────────────────────────────┘

查询理解(Query Understanding)

高质量RAG的第一步是理解用户查询的真实意图:

技术描述适用场景
Query Classification分类查询类型(事实性/解释性/探索性)路由到不同处理流程
Intent Detection检测多意图查询分解复合查询
Query Expansion扩展查询以提高召回同义词、相关概念
Query Decomposition分解为子查询复杂多步骤问题

上下文路由(Context Routing)

根据查询类型决定信息源:

用户查询 → 路由判断 → 专用处理管道
                ↓
    ┌───────────┼───────────┐
    ↓           ↓           ↓
  知识库     对话历史    工具/API
  检索       管理        调用

混合检索(Hybrid Retrieval)

结合多种检索策略的优势:

检索类型优势适用场景
关键词搜索精确匹配、语法灵活性专有名词、技术术语
语义向量搜索概念理解、语义相似性同义词、意图理解
结构分析依赖关系、模块关联代码库检索
时间过滤最新信息优先快速变化领域

Beyond Naive RAG

2025年的RAG已超越简单的“嵌入并搜索”方法:

  • 推理增强搜索:结合LLM推理能力优化检索
  • 晚交互模型:Late Interaction(如ColBERT)支持token级别交互
  • 多重表示:同一内容的多种索引方式
  • 图数据库:关系密集型数据的图索引

多轮对话管理

核心挑战

挑战影响解决方案
Token限制50轮对话可消耗10,000+ tokens分层压缩
关键信息丢失简单截断导致上下文断裂智能摘要
状态复杂性多会话、多用户状态隔离与跟踪
成本上升对话越长推理成本越高按需加载

常见策略

1. 最后N条消息 最简单的策略,但会丢失早期关键上下文。

2. Token截断 更好的成本控制,但仍存在上下文丢失问题。

3. 摘要+近期上下文 压缩旧段落同时保留近期交换,是目前最平衡的方案。

高级压缩技术

CDIC(Context-Driven Incremental Compression)

将对话视为交错的上下文线程,通过”检索→修订→回写”循环维护每个线程的可修订压缩状态,在长对话中稳定行为。

MT-OSC(One-off Sequential Condensation)

使用Few-shot冷凝代理和轻量级决策器在后台自动压缩聊天历史,在10轮对话中减少72% token数,同时保持跨多个LLM的准确性。

内存架构

┌────────────────────────────────────────┐
│           Production Architecture       │
├────────────────────────────────────────┤
│  ┌──────────┐  ┌──────────┐  ┌────────┐ │
│  │ Working  │  │ Episodic │  │ Long-  │ │
│  │ Memory   │  │ Memory   │  │ Term   │ │
│  │(~5轮)   │  │ (摘要)   │  │ (持久) │ │
│  └────┬─────┘  └────┬─────┘  └───┬────┘ │
│       └──────────────┼────────────┘       │
│                     ↓                     │
│            ┌───────────────┐              │
│            │ Context Router │              │
│            └───────┬───────┘              │
│                    ↓                      │
│            ┌───────────────┐              │
│            │  LLM Request  │              │
│            └───────────────┘              │
└────────────────────────────────────────┘

上下文质量评估

Faithfulness问题

即使RAG系统提供了外部上下文,LLM仍经常引入不支持的信息或矛盾,这被称为忠实度幻觉(Faithfulness Hallucination)

评估框架

FaithLens(2025)

8B参数的专门模型,提供二元预测和解释,在12个多样化任务上超越GPT-4.1和o3。使用合成训练数据结合标签正确性和解释质量的过滤策略。

FaithEval

包含4.9K高质量问题的全面基准,涵盖三种任务类型:

  • 不可回答上下文:模型应拒绝回答的情况
  • 不一致上下文:上下文内部矛盾
  • 反事实上下文:与事实相反的上下文

关键发现:即使是最先进的模型也在上下文忠实度上挣扎,更大的模型不一定表现更好。

FaithJudge

LLM-as-Judge框架,通过多样化的人工标注幻觉示例改进自动评估,与人类判断的一致性高于现有方法。

评估指标

指标定义测量方法
Faithfulness输出与上下文的一致程度自动评估、人类评分
Relevance上下文与查询的相关性相似度计算
Coverage上下文覆盖答案的程度覆盖分析
Utilization模型利用上下文的程度注意力分析

上下文利用率分析

信号稀释检测:监控模型是否对所有上下文token分配相似注意力,还是集中在少数关键部分。

Lost-in-the-Middle检测:在长上下文的中间位置插入关键信息,测试模型是否能检索到。


前沿技术

Long Context Model演进

时间线

时间模型上下文窗口关键突破
2024GPT-4 Turbo128K主流突破
2024Claude 3200K强推理能力
2024Gemini 1.51M当时最长
2024.06Gemini 1.5 Pro2M持续领先
2026Claude Opus 4.61M通用可用,无溢价

重要警告

尽管上下文窗口不断扩大,但微软研究院2025年的研究表明,超过100K tokens后有效利用率降至约60%。这意味着:

  • 更大的上下文窗口 ≠ 更好的结果
  • 可能增加成本而无相应质量提升
  • “Lost in the middle”问题仍然存在

Context Caching(上下文缓存)

成本优化效果

提供商版本缓存读取折扣
Gemini 2.5+/3当前90%
Gemini 2.0当前75%
Anthropic Claude当前90%(0.1x基础价格)
OpenAI GPT-5.4当前90%
OpenAI GPT-4当前50%

隐式缓存 vs 显式缓存

隐式缓存(自动)

  • 默认启用,无需配置
  • 自动检测重复内容前缀
  • 无保证节省
  • 最低token限制:1,024(Flash)/ 4,096(Pro)

显式缓存(手动)

  • 手动创建缓存
  • 设置自定义TTL
  • 保证折扣
  • 成本可预测

缓存设计原则

  1. 位置优化:将稳定内容(系统指令、工具定义、参考文档)放在提示开头
  2. 阈值优化:确保达到缓存最低token限制
  3. 批量优化:在短时间窗口内发送相似前缀的请求以最大化隐式缓存命中
  4. 成本计算:缓存写入(1.25x)+ 缓存读取(0.1x)= 0.675x,已可盈利

Context Compression前沿

LLMLingua

专门训练用于压缩技术文档的模型,在保留信息的同时实现40-50%更好的信息保留率,相比简单截断策略。

模态融合压缩

xRAG等方法将文档嵌入整合到语言模型表示空间,实现极端压缩率。


实操指南

实施阶段

1. 准备阶段

识别高价值上下文来源

  • 分析代码审查中发现的标准(错误处理、日志、测试)
  • 审查现有的风格指南和架构文档
  • 访谈团队成员获取隐性知识

建立优先级 backlog

优先级 = 预期影响 × 获取难度

建立上下文文件结构

/
├── ORGANIZATION.md      # 组织级上下文(所有项目)
├── PROJECT.md          # 项目级上下文
└── modules/
    ├── api/
    │   └── CONTEXT.md  # 模块级上下文
    └── database/
        └── CONTEXT.md

2. 实施阶段

三个基础上下文文件

  1. Coding Standards - 语言特定风格指南、命名约定、文件组织
  2. Architecture Overview - 系统组件、通信模式、数据流
  3. Development Workflow - 分支策略、代码审查要求、测试标准

工具配置

  • Claude Code: CLAUDE.md
  • GitHub Copilot: .copilot-instructions.md
  • Cursor: .cursor/rules

3. 测量与优化

关键指标

指标目标测量方法
手动上下文解释减少率>80%交互分析
代码审查周期减少40-60%PR数据
Token使用效率最大化利用率日志分析
上下文检索延迟<100msAPM监控

自动化验证

  • CI/CD中验证代码示例仍可编译
  • 静态分析验证引用函数存在
  • 监控上下文文件修改日期,标记陈旧内容

常见陷阱

陷阱症状解决方案
上下文漂移文档与实现不一致季度审查、自动验证
过度上下文无关信息淹没关键内容精炼、过滤
上下文不足模型产生通用输出补充关键上下文
陈旧上下文引用不存在的API自动验证、TTL

工具推荐

框架对比

框架主要优势适用场景学习曲线
LangChain/LangGraph编排、复杂工作流多步骤Agent、条件逻辑较陡
LlamaIndexRAG、文档检索知识图谱、结构化数据较缓
两者结合最佳平衡混合架构中等

LangChain vs LlamaIndex

LangChain

  • 通用编排框架
  • LCEL(LangChain Expression Language)
  • LangGraph用于有状态工作流
  • LangSmith用于可观测性

LlamaIndex

  • 数据中心检索框架
  • 高级分块和索引
  • LlamaCloud用于托管服务
  • Arize Phoenix/Langfuse用于可观测性

混合架构推荐

LlamaIndex(数据平面)
├── 文档摄取
├── 分块策略
└── 向量索引

LangGraph(控制平面)
├── 对话状态
├── 多步骤Agent逻辑
└── 工具编排

上下文质量工具

工具用途特点
Mem0记忆管理80-90% token成本削减
LLMLingua上下文压缩专门训练压缩模型
FaithLens忠实度检测幻觉检测与解释
Packs/Packmind企业上下文管理Model Context Protocol

缓存和成本优化

工具/服务用途折扣
Anthropic Compact API自动压缩生产级
Gemini Context Caching显式/隐式缓存75-90%
Redis会话持久化开源

参考资料

核心文献

  1. State of Context Engineering in 2026 - Kushal Banda, Towards AI, 2026
  2. What is Context Engineering? - Packmind, 2026
  3. Context Engineering: The Complete Guide - TECHSY, 2026
  4. FaithLens: Detecting and Explaining Faithfulness Hallucination - arXiv:2512.20182, 2025
  5. FaithEval: Can Your Language Model Stay Faithful to Context - ICLR 2025

技术文档

  1. LangChain Context Engineering - LangChain Docs, 2025
  2. Context Caching | Gemini API - Google AI, 2026
  3. RAG Context Engineering - McGillivray LAB, 2025
  4. Multi-Turn Chatbot Conversation State Management - Chaos and Order, 2026

框架文档

  1. LangChain vs LlamaIndex in 2025 - Blog Comparison
  2. LlamaIndex Documentation - Official Docs
  3. Anthropic Claude API Documentation - Official Docs

延伸阅读


本文档由AI深度调研生成,整合了2025-2026年Context Engineering领域的最新研究成果和实践经验。