🔥 2026热门术语

Context Engineering(上下文工程)

超越Prompt Engineering的新范式:系统化构建LLM最优输入上下文

LLM AI Agent Prompt Engineering OpenClaw 上下文窗口 2026趋势

⚡ 一句话解释

Context Engineering(上下文工程)是Prompt Engineering的进化形态。它不只是写好一句prompt,而是系统化地设计、组装、优化输入给LLM的完整上下文——包括系统提示、工具描述、历史记忆、检索结果、结构化数据等——让模型在有限的上下文窗口内获得最丰富的决策信息。

📖 什么是Context Engineering?

2025年底,随着AI Agent系统的复杂度飙升,开发者们发现:单靠写好一句prompt已经远远不够了。一个成熟的Agent系统需要在每次调用LLM时,动态组装包含以下内容的上下文:

Context Engineering就是研究如何高效地选择、组织、压缩、优先级排序这些信息,使其在有限的上下文窗口(如128K、200K tokens)内最大化LLM的推理质量。

💡 与Prompt Engineering的区别:Prompt Engineering关注"怎么写好一句指令";Context Engineering关注"怎么组装好完整的输入上下文"。前者是战术,后者是战略。

🎯 为什么2026年Context Engineering如此重要?

1. Agent系统复杂度爆发

一个现代AI Agent可能同时拥有20+个工具、多层记忆系统、实时RAG检索。如何在每次LLM调用时塞入最相关的信息,而不是把所有东西一股脑扔进去,成为关键挑战。

2. 上下文窗口是昂贵资源

虽然窗口已经扩展到200K+ tokens,但每多塞一个token都意味着:

3. 推理质量与上下文质量强相关

LLM的推理质量高度依赖输入上下文的质量。垃圾进,垃圾出。精心策划的上下文可以让小模型超越大模型的表现。

🔧 Context Engineering核心方法论

1. 上下文分层架构

层级 内容 更新频率 Token占比
静态层 System Prompt、工具Schema 会话级 15-25%
动态层 RAG结果、工具返回值 每轮调用 30-50%
历史层 对话历史、记忆 滑动窗口 20-40%
元数据层 时间、用户画像、任务状态 准实时 5-10%

2. 上下文压缩策略

3. 上下文优先级排序

当上下文空间不足时,需要决定什么信息优先保留:

  1. 任务关键信息 — 当前任务必须的上下文
  2. 工具相关描述 — 可能被调用的工具说明
  3. 最近对话 — 最近几轮对话历史
  4. 相关记忆 — RAG检索的相关知识
  5. 背景信息 — 用户偏好等元数据

🚀 OpenClaw中的Context Engineering实践

OpenClaw在架构层面深度践行了Context Engineering理念:

SOUL.md — 静态人格层

OpenClaw的SOUL.md文件定义了Agent的核心人格和行为规则,作为每次调用的System Prompt基础层。这确保了Agent在所有交互中保持一致的行为模式。

SKILL.md — 技能上下文注入

当Agent匹配到特定Skill时,SKILL.md的内容被动态注入上下文。这是一种按需加载的上下文工程策略——不把所有技能说明都塞进去,只在需要时加载相关技能。

Memory系统 — 分层记忆管理

OpenClaw的memory-core Skill实现了分层记忆管理:

OpenClaw上下文组装示例 YAML
# OpenClaw每次调用LLM时的上下文组装逻辑

context_layers:
  # 第1层:静态人格(始终加载)
  soul:
    source: "SOUL.md"
    priority: "critical"
    max_tokens: 2000

  # 第2层:技能说明(按需加载)
  skills:
    source: "SKILL.md"
    priority: "high"
    strategy: "match_and_load"
    max_tokens: 3000

  # 第3层:工具Schema(动态筛选)
  tools:
    source: "tool_registry"
    priority: "high"
    strategy: "relevance_filter"
    max_tokens: 4000

  # 第4层:记忆上下文
  memory:
    short_term: "conversation_history"
    long_term: "MEMORY.md + vector_search"
    strategy: "summarize_old + keep_recent"
    max_tokens: 8000

  # 第5层:RAG检索结果
  retrieval:
    source: "web_search + doc_fetch"
    priority: "medium"
    strategy: "top_k_relevance"
    max_tokens: 6000

# 总Token预算:128K窗口中使用约25K
# 保留足够空间给模型推理和输出

实战案例:多轮对话中的上下文优化

Context Engineering实战 — 对话历史压缩 Python
def compress_context(messages, max_tokens=8000):
    """
    OpenClaw风格的上下文压缩策略
    保留最近N轮完整对话,老对话压缩为摘要
    """
    # 1. 始终保留最近3轮完整对话
    recent = messages[-6:]  # 3轮 = 6条消息
    
    # 2. 老对话压缩为摘要
    older = messages[:-6]
    if older:
        summary = summarize_messages(older)
        # 摘要格式: "[早期对话摘要] 用户讨论了X话题..."
        context = [summary] + recent
    else:
        context = recent
    
    # 3. 如果还超长,按重要性截断
    if count_tokens(context) > max_tokens:
        context = truncate_by_importance(context, max_tokens)
    
    return context

✅ Context Engineering最佳实践

✅ DO — 推荐做法:
  • 对上下文进行分层管理,静态和动态分离
  • 使用按需加载策略,只在需要时注入相关上下文
  • 定期压缩对话历史,保留关键信息
  • 监控token使用量,设置合理的上下文预算
  • 使用结构化格式(如JSON、XML)组织上下文
  • 在System Prompt中明确上下文的使用规则
⚠️ DON'T — 避免的做法:
  • 不要把所有信息都塞进上下文(信息过载)
  • 不要忽略上下文中的冲突信息
  • 不要使用过长的System Prompt(超过总预算20%)
  • 不要忽略工具描述的质量(影响tool calling准确率)
  • 不要在上下文中包含敏感信息(安全风险)

🔗 相关术语

📚 相关推荐

Agent Memory
Tool Poisoning Attacks Explained
Tool Calling Optimization Explained

🔗 相关工具与故事

🛠️ 工具
Prompt Engineering
🛠️ 工具
Agent Session 指南
📖 故事
Agent踩坑实录