AI新技能:上下文工程 (Context Engineering)

一份动态交互式摘要,提炼自多篇关于AI新趋势的文章

核心观点:构建强大AI智能体 (Agent) 的关键,已从 "提示工程" 转向 "上下文工程"。AI的成败更多地取决于我们为其提供的 上下文质量,而非模型本身。

什么是"上下文工程"?

定义:"上下文工程"是一门学科,旨在设计和构建动态系统,在正确的时间、以正确的格式,为大语言模型(LLM)提供完成任务所需的所有正确信息和工具。

"这是为任务提供所有上下文,使其能够被LLM合理解决的艺术。"

— Tobi Lutke (Shopify CEO)

它强调的是一个动态系统,而不是一个静态的文本字符串。大多数智能体的失败,已不再是模型失败,而是 上下文失败

"上下文"到底包含什么?(点击展开)

上下文组成示意图
指令 / 系统提示 (Instructions / System Prompt)

为模型设定行为基调的初始指令,可以包含规则、角色扮演、示例等。

用户提示 (User Prompt)

用户当前提出的具体任务或问题。

状态 / 历史 (短期记忆)

当前对话的完整记录,包括用户和模型的所有交互。

长期记忆 (Long-Term Memory)

跨越多次对话的持久化知识库,如用户偏好、项目摘要等。

检索的信息 (RAG)

从外部文档、数据库或API中实时检索的相关、最新信息。

可用工具 (Available Tools)

模型可以调用的所有函数或内置工具的定义,如 check_inventorysend_email

结构化输出 (Structured Output)

对模型响应格式的要求,例如强制输出为JSON对象。

为什么它至关重要:从"廉价演示"到"神奇产品"

想象一个AI助理被要求安排会议,它收到的邮件是:"Hi,明天有空快速同步一下吗?"

廉价演示 (Cheap Demo)

上下文:只有用户请求本身。

结果:机器人式的无用回复。


"感谢您的消息。我明天有空。请问您想约在什么时间?"

神奇产品 (Magical Product)

上下文:用户请求 + 你的日历 + 过往邮件 + 联系人信息 + 发送邀请的工具

结果:智能、主动、人性化的回复。


"嘿 Jim!我明天日程排满了,一整天都背靠背。周四上午有空,你看行吗?我已经发了个邀请,你看看合不合适。"

✨ 魔法不在于模型更聪明,而在于提供了完成任务所需的 正确上下文。 ✨

关键特性:系统而非字符串

实践策略:如何进行上下文工程 (点击展开)

1. 压缩上下文 (Compress)

在每次交互中只保留价值最高的信息,以避免上下文窗口超限和性能下降。

  • 上下文摘要:对长对话或冗长的工具调用结果进行总结。例如,Claude Code在上下文超过95%时会自动压缩。
  • 在工具边界压缩:对返回大量信息的工具(如搜索API)的输出进行即时摘要,从源头控制上下文增长。
2. 持久化上下文 (Persist)

构建系统来存储、保存和检索跨时间的上下文,即"记忆"。

  • 存储上下文:使用文件(如CLAUDE.md)、向量数据库或知识图谱来存储用户偏好、事实和关系。
  • 保存上下文:让智能体根据用户交互或反馈自主创建和更新记忆,实现自我学习和改进。
  • 检索上下文:根据需要从记忆库中智能地提取相关信息,而不是将所有记忆都塞入上下文窗口。
3. 隔离上下文 (Isolate)

通过分区策略来管理复杂的上下文,提高效率和可控性。

  • 上下文模式 (Schema):使用结构化状态(如Pydantic模型)而不是简单的消息列表来管理运行时状态,从而精确控制每一轮传递给LLM的内容。
  • 多智能体 (Multi-agent):将复杂任务分解,让多个子智能体在各自隔离的上下文中并行工作,处理不同子任务。这在可并行化的任务中效果显著。
  • 环境隔离:使用代码执行沙箱等环境,让智能体在其中生成和使用变量(如图像、文件),但只将必要的引用或结果传回LLM的上下文窗口。

重要观点集锦

人们通常将"提示"与日常使用的简短任务描述联系在一起。但在每个工业级LLM应用中,"上下文工程"是在每一步都用恰到好处的信息填充上下文窗口的精妙艺术和科学。

— Andrej Karpathy (前特斯拉AI总监,OpenAI创始成员)

"拥有你的上下文窗口"(Own your context window)是关键原则。这意味着你需要灵活地尝试各种方式(标准消息格式、自定义XML/YAML格式等)来构建上下文,以实现最高的信息密度和Token效率。

— 12-Factor Agents 指导原则

LLM就像一个新的操作系统,上下文窗口就是它的RAM(工作内存)。"上下文工程"就是管理这块"RAM"的艺术和科学,决定放入哪些信息来完成任务。

— Lance Martin (LangChain)

原文

原文

附件

情境工程示意图 (310.6K)

下载