Anthropic 面向 AI 智能体的高效上下文工程

TL;DR

Anthropic 发布了 上下文工程,这是一套用于在推理过程中选择和管理输入给大语言模型的令牌的技术,并展示了它如何提高 AI 智能体的可靠性和可扩展性。


什么是上下文工程?

上下文工程 是指在每次推理步骤中,精心策划模型所看到的精确令牌集(系统提示、工具定义、示例、消息历史等)。它扩展了提示工程,将模型有限的注意力预算视为必须高效分配的稀缺资源。

关键点:

  • 上下文 = 模型生成响应时存在的所有令牌。
  • 工程 = 优化这些令牌,以在尊重模型上下文窗口限制的同时,最大化期望行为的概率。
  • 该过程是迭代的;每次模型调用前都会重新评估令牌集。

为什么上下文工程很重要

LLM 存在 上下文腐烂 问题:随着令牌数量的增加,召回准确性会下降。这反映了人类工作记忆的局限性,源于 Transformer 架构的 O(n²) 注意力成本和训练时对较短序列的偏向。

后果:

  • 每个额外的令牌都会消耗模型“注意力预算”的一部分。
  • 更长的上下文会导致信息检索和长距离推理的精度下降。
  • 即使具有扩展窗口的模型也会表现出渐进的性能梯度,而不是硬性截止。

因此,将上下文视为有限资源并最小化低信号令牌,对于构建有能力的智能体至关重要。

有效上下文的核心组件

系统提示

  • 必须 清晰、简洁,并写在 正确的高度:足够具体以指导行为,但足够灵活以避免脆弱的逻辑。
  • 推荐结构:使用 XML 标签或 Markdown 标题分隔不同部分(例如 <background_information>、<instructions>、## Tool guidance、## Output description)。
  • 从最小提示开始;仅在识别出失败模式后添加指令或示例。

工具

  • 工具充当智能体与其环境之间的契约;它们应该 令牌高效 且 无歧义。
  • 设计工具时要使其自包含、健壮,并具有描述性的输入参数。
  • 避免臃肿的工具集;最小可行工具套件可减少决策歧义和上下文开销。

示例(少样本提示)

  • 提供 多样化、规范的示例集,而不是详尽的边缘情况列表。
  • 示例对 LLM 来说“一图胜千言”,能高效传达期望行为。

消息历史与检索

  • 策划历史记录,保留高信号交流,同时丢弃冗余的工具调用和结果。
  • 使用 即时 检索:保留轻量级标识符(文件路径、URL),仅在需要时通过工具加载数据。

动态上下文检索与智能体搜索

Anthropic 的智能体现在将 推理前嵌入检索 与运行时“即时”加载相结合。智能体保留引用(例如文件路径),并使用工具按需获取内容,模拟人类认知。

优势:

  • 存储效率 – 大型数据集永远不会完全加载到上下文窗口中。
  • 元数据信号 – 文件名、时间戳和层级结构指导相关性判断。
  • 渐进式披露 – 智能体逐步发现并整合上下文,保持专注的工作记忆。

权衡:

  • 运行时检索会增加延迟。
  • 需要仔细设计工具,以防止在死胡同上浪费上下文。

混合策略(预加载基本数据 + 即时探索)在相对静态的领域(如法律或金融)中效果良好。


长时程任务的技术

当任务超出模型的上下文窗口时,Anthropic 推荐三种互补策略。

1. 压缩

  • 将近极限的对话历史总结为高保真摘要。
  • 用摘要加上最近的关键令牌重新初始化上下文窗口。
  • 示例:Claude Code 清除旧的工具结果并注入简洁摘要,保留架构决策同时丢弃噪声。

2. 结构化笔记(智能体记忆)

  • 智能体在上下文窗口之外写入持久笔记(例如 NOTES.md)。
  • 需要时重新导入笔记,提供轻量级记忆层。
  • 在 Claude 玩 Pokémon 的演示中,智能体通过外部笔记跟踪数千步。
  • Anthropic 在 Claude Developer Platform(公开测试版)上发布了 记忆工具,以简化此工作流程。

3. 子智能体架构

  • 将大问题分解为专门的子智能体,每个子智能体都有自己的聚焦上下文。
  • 子智能体进行深度探索,并将提炼后的摘要(1-2 千令牌)返回给协调的主智能体。
  • 这种模式在复杂研究任务中带来了显著收益(参见 Anthropic 的多智能体研究系统)。

选择技术取决于任务:

  • 压缩 适用于来回对话。
  • 笔记 适用于具有明确里程碑的迭代开发。
  • 子智能体 适用于并行、研究密集型工作负载。

对工程师的实用指导

  1. 将上下文视为预算 – 目标是使用最小的高信号令牌集。
  2. 迭代 – 每次失败后,在添加更多令牌之前,优化提示、工具定义或检索逻辑。
  3. 从最小化开始 – 使用最简提示测试最佳可用模型,然后根据需要增强。
  4. 精选工具 – 保持工具集精简,并确保每个工具的输出是令牌高效的。
  5. 利用记忆工具 – 将摘要、笔记和元数据存储在上下文窗口之外,以避免污染。
  6. 混合检索 – 结合预计算的嵌入与即时加载,以平衡速度和相关性。

面向工程师的实用指南

  1. 将上下文视为预算 – 目标是使用最小的高信号令牌集。
  2. 迭代 – 每次失败后,在添加更多令牌之前,优化提示、工具定义或检索逻辑。
  3. 从最小化开始 – 使用最简提示测试最佳可用模型,然后根据需要增强。
  4. 精选工具 – 保持工具集精简,并确保每个工具的输出是令牌高效的。
  5. 利用记忆工具 – 将摘要、笔记和元数据存储在上下文窗口之外,以避免污染。
  6. 混合检索 – 将预计算的嵌入与即时加载相结合,以平衡速度和相关性。

对未来 AI 智能体的影响

  • 从以提示为中心转向以上下文为中心的工程,随着模型能力的增强。
  • 智能体的自主性将提高;更智能的模型将需要更少的规范性提示,但仍将依赖高效的上下文策划。
  • 工具和记忆生态系统将成为可扩展智能体的核心基础设施。
  • “找到最小的高信号令牌集”这一原则仍将是基石,即使上下文窗口不断增长。

入门指南

Anthropic 邀请开发者在 Claude 开发者平台上试验上下文工程。资源包括:

通过应用上述技术,团队可以构建在长周期任务中保持专注、可靠和可扩展的智能体。

Sources