写点什么

一文说明白 Context Engineering:AI 智能体的动态语境构建术

作者:蔡超
  • 2025-07-14
    北京
  • 本文字数:2767 字

    阅读完需:约 9 分钟

一文说明白Context Engineering:AI智能体的动态语境构建术

火爆硅谷的 Context Engineering

当你在 ChatGPT 中输入指令时,你已经接触了最基础的提示工程(Prompt Engineering)。但随着 AI 应用向复杂化、长期化、自主化发展,一个新的概念——Context Engineering(上下文工程)正迅速成为焦点。

概念起源:硅谷领袖的集体觉醒

2025 年 6 月,Shopify CEO Tobias Lütke 在推特上首次提出:“我更喜欢用‘上下文工程’代替‘提示工程’,它更贴切地描述了核心技能——为任务提供完整背景信息,让大模型合理解决问题的艺术。”

这一观点迅速获得 AI 界技术领袖的共鸣。前 OpenAI 研究员、特斯拉 AI 负责人 Andrej Karpathy 转发并附上“+1”支持,进一步阐释道:“在工业级 LLM 应用中,上下文工程才是关键——一门既讲科学又讲直觉的技术活,要把上下文窗口精确填入下一步所需信息。”


技术引爆点:IBM 的突破性实验

IBM 苏黎世研究院的实验为概念提供了学术合法性。研究者向 GPT-4.1 注入结构化认知工具后,在 AIME2024 数学竞赛数据集上的准确率从 26.7%跃升至 43.3%,性能提升 61.4%,几乎追平 OpenAI 的 o1-preview 模型(44.6%)  这一突破性成果彻底回击了“造新词”的质疑。


它与 Prompt Engineering 是什么关系?它为何如此重要?本文将清晰拆解其核心概念、技术实现与价值。

Prompt Engineering, In-context Learning 与 Context Engineering 辨析

理解 Context Engineering,需要先明确它与两个密切关联概念的区别与联系:

  1. 提示工程 (Prompt Engineering - PE):

    定义:设计和优化单次输入给 AI 模型的指令/提示(Prompt)的过程。

    目标:让模型准确理解用户当前意图,并产生期望的输出。

    核心:是静态的、一次性的。如同精心设计一个问题或命令。

    技巧:明确指令、提供示例、结构化输入、控制风格等。

  2. 上下文学习 (In-Context Learning - ICL):

    零样本学习 (Zero-shot Learning):不提供任务示例,仅靠指令和模型预训练知识进行推理。 (e.g., “将‘你好’翻译成英语” -> “Hello”)。

    少样本学习 (Few-shot Learning):在提示中提供少量(通常 2-5 个)任务示例,引导模型模仿执行新任务。 (e.g., 给几个中英翻译对后,让模型翻译新句子)。

    定义:大型语言模型(LLM)的核心能力,指模型利用当前提示中提供的信息(上下文)来完成任务,而无需更新其内部权重(即不进行微调)。

    主要形式:

    核心:PE 是利用 ICL 能力的主要手段。ICL 的效果高度依赖于 PE 提供的上下文质量。ICL 本身也是静态的,依赖于单次输入的内容。

  3. 上下文工程 (Context Engineering - CE):

    包含与超越:CE 包含了优秀的 PE 实践(设计清晰指令、提供有效示例),但其范围远不止于此。

    解决静态局限:PE 和基于 PE 的 ICL 本质上是静态的。它们无法适应长期运行(Long Run)自主(Autonomous)任务中不断变化的环境和状态。CE 正是为解决这一核心局限而生。

    动态构建:CE 的核心价值在于“动态构建”上下文。

    定义:动态地为 AI 模型(尤其是运行中的智能体 Agent)构建、管理和优化其执行任务所需的完整上下文信息的科学与工程实践。

    核心:超越了单次、静态的提示优化。它关注的是在任务/对话进行过程中,如何根据当前状态和变化,实时、动态地决定哪些信息需要被放入模型有限的上下文窗口(Context Window)中。


Context Engineering 兴起的核心:动态上下文构建

为什么需要 Context Engineering?核心在于解决传统 PE/ICL 在复杂、持续、自主任务中的不足:

  • 任务状态变化:在长对话或多步骤任务中,目标和环境会不断演变。

  • 信息过载:长期运行会产生海量历史信息,无法全部放入有限上下文窗口。

  • 实时性需求:需要接入最新数据或外部工具结果。

  • 自我适应性:智能体需要根据反馈调整自身行为或策略。

Context Engineering 的核心任务就是:根据对话/任务的当前状态和变化,动态地构建最相关、最有效的当前上下文窗口。这主要通过以下关键技术实现:

  1. 检索增强生成 (Retrieval-Augmented Generation - RAG):

    原理:当用户提出查询或任务时,智能体实时从外部知识库(向量数据库、文档库、知识图谱等)检索与当前问题最相关的信息片段。

    作用:将检索到的信息动态注入上下文,为模型提供最新、准确、具体的背景知识,解决模型知识陈旧和“幻觉”问题。

    示例:回答公司最新季度财报问题时,自动检索并注入刚发布的财报摘要或关键数据点。


  2. 工具调用 (Tool Calling / Function Calling):

    原理:智能体识别用户请求中需要外部能力(计算、查询、操作等)的部分,动态调用预定义的 API/函数(如搜索引擎、计算器、日历 API、数据库查询等)。

    作用:将工具调用的输入请求返回结果动态地整合进上下文,极大地扩展了模型的能力边界,使其能处理实时数据、执行具体操作。

    示例:用户问“明天下午 3 点我老板有空开会吗?”,智能体调用日历 API 查询老板日程,并将查询结果(有空/没空/替代时间)注入上下文,据此回复用户。


  3. 智能体记忆 (Agent Memory):

    短期记忆 (Short-term Memory):管理当前会话/任务链中的状态、中间结果、用户意图等。通常较易失。


    长期记忆 (Long-term Memory):持久化存储跨会话的关键信息、用户偏好、任务知识等。需要高效的存储、索引和检索机制(常结合 RAG 实现)。

    原理:设计短期和长期记忆机制,智能地存储、组织和召回任务相关的历史信息。

    作用:根据当前任务需求,从记忆库中动态检索并注入最相关的历史片段,维持智能体的连贯性和个性化。

    挑战与前沿:处理超长上下文(如支持百万 Token 的模型)、记忆摘要技术、基于重要性/相关性筛选记忆是关键研究方向


PE 和 CE 者本质是“问话艺术” vs “环境构建科学”的差异

Next level:动态提示与自我进化

Context Engineering 的终极目标不仅是构建数据上下文,甚至能实现指令上下文的动态优化,推动智能体向自适应性(Self-adaptive)自我改进(Self-improvement)演进:

  • 动态提示/指令调整:基于任务进展、用户反馈或观察到的模型行为,智能地调整后续步骤的提示指令或策略。例如:

    发现模型输出冗长时,自动在后续提示中加入“请简洁回答”的要求。

    在解决复杂推理问题时,根据中间步骤的成败动态切换不同的提示策略(如从思维链 CoT 切换到思维树 ToT)。

  • 自我改进的实现:结合上述技术和强化学习(RL)等机制:

    PromptWizard 等框架:让 LLM 基于自身输出结果进行“自我批评”,生成改进建议,并迭代优化提示。实现提示的自动化工程。

    Promptbreeder 等技术:采用进化算法,让提示在代际更替中不断优化(“自我参照”),在数学推理等任务上显著超越静态提示方法。

    记忆驱动的优化:分析长期记忆中的成功/失败案例,自动总结出更有效的提示模板或行动策略。


总结:为什么 Context Engineering 至关重要?


简言之:Prompt Engineering 教会 AI“如何回答一个问题”,而 Context Engineering 则为持续工作的 AI 智能体构建了“理解当下情境并自主行动”的动态环境。它是构建真正实用、强大、自主 AI Agent 不可或缺的核心工程能力。随着智能体应用的爆发,掌握 Context Engineering 将成为 AI 专业人士的关键竞争力。

发布于: 刚刚阅读数: 4
用户头像

蔡超

关注

程序员是我的终身职业 2017-10-19 加入

蔡超,SpotMax创始人,Mobvista 集团副总裁/首席架构师,前亚马逊(中国)首席架构师,前HP(中国)软件架构师

评论

发布
暂无评论
一文说明白Context Engineering:AI智能体的动态语境构建术_AI Agent_蔡超_InfoQ写作社区