1.背景   

        随着大型语言模型的飞速发展,如何高效、准确地引导模型完成特定任务成为一个核心议题。在此背景下,上下文工程(Context Engineering),正逐渐取代传统的“提示工程(Prompt Engineering)”,成为优化人机交互、提升模型性能的关键技术。本文将结合 Prompting Guide 的深入解读 和相关研究,对上下文工程进行一些介绍。

2.什么是上下文工程?

        上下文工程,顾名思义,是围绕“上下文(Context)”进行设计、优化和管理的一系列技术和方法。与仅仅关注于编写简单指令的“Prompting”不同,上下文工程将视野拓宽到影响模型输出的所有信息,旨在通过构建一个完整、精确、无噪声的上下文环境,来驱动大型语言模型及其他高级人工智能模型高效地执行任务。简单来说,上下文工程是为大型语言模型设计和优化指令及相关上下文,让其能更有效执行任务的过程。

        从本质上讲,上下文工程的目标是最大化利用模型的“上下文窗口(Context Window)”,在有限的输入空间内,提供最有效的信息,同时过滤掉无关的“噪声”,进而输出最优的结果。

3.上下文工程示意图

        这张图将上下文工程描绘为一个包含多个相互关联子领域的宏观概念,其中包括:

1.提示工程 (Prompt Engineering):作为核心组成部分,负责设计和优化与LLM交互的指令。

2.检索增强生成 (RAG):通过外部知识检索来丰富模型上下文。

3.状态/历史 (State/History):管理和维护模型在多轮交互中的历史信息和状态。

4.记忆 (Memory):涵盖短期和长期记忆机制,用于存储和检索相关信息。

5.结构化输出 (Structured Outputs):确保模型输出符合预定义的格式和结构。

4.上下文工程的关键组成部分

        上下文工程是一个多维度、迭代优化的过程,它涵盖了多个关键组成部分,共同确保LLM能够理解并执行复杂任务。这些组成部分包括但不限于:

1.指令/系统提示: 这是与LLM交互的基础,通过清晰、明确的指令设定模型的角色、任务目标和行为约束。系统提示是模型行为的“最高限定”,它定义了模型在整个对话或任务执行过程中的基本准则。

2.用户输入: 用户输入是动态的,它提供了模型需要处理的具体问题或数据。上下文工程需要考虑如何有效地将用户输入整合到整体上下文中,并利用分隔符等技术避免混淆,确保模型准确理解用户意图。

3.结构化输入与输出: 为了获得一致且可预测的模型输出,上下文工程强调对输入和输出进行结构化。一般会涉及使用特定的格式(如JSON Schema)来定义数据结构,确保模型能够生成符合预设规范的响应,利于后续的自动化处理。

4.工具定义与指令: 在构建智能体系统时,LLM可能需要调用外部工具来完成任务(如搜索、计算等)。上下文工程包括为这些工具提供清晰的定义和使用指令,使模型能够理解何时、如何以及使用哪些参数来调用这些工具。

5.检索增强生成与记忆:

•RAG:通过从外部知识库中检索相关信息,为LLM提供最新的、事实性的上下文,从而克服模型内部知识的局限性,减少“幻觉”现象。

•短期记忆:管理对话或任务执行过程中的状态和历史上下文,确保模型能够记住之前的交互内容,维持对话的连贯性。

•长期记忆:通常通过向量存储等方式,存储和检索与当前任务相关的历史信息或知识,以支持更复杂的推理和决策。

6.动态元素管理: 上下文可能包含动态变化的信息,如当前日期、时间或用户偏好。上下文工程需要设计机制来捕获和整合这些动态元素,使模型能够根据实时信息调整其行为和输出。

7.少样本示例优化: 通过提供少量高质量的示例,模型可以更好地理解任务要求和期望的输出格式。上下文工程涉及精心选择和优化这些示例,以最大化其对模型性能的提升作用。

5.上下文工程与提示词工程的核心区别

        如果说提示词工程是"术",专注于提升单次沟通的效率;那么上下文工程则是"道",用于构建一个能让Al系统持续、高效、可靠地解决问题的系统性框架,参考《AI原生应用架构白皮书》。

6.上下文工程优化方向

上下文压缩:在不损失关键信息的前提下,减少上下文的长度,以适应模型的上下文窗口限制并提高效率。

上下文管理:更智能地管理和更新上下文,确保其始终保持相关性和最新性。

上下文安全性:防止恶意或不当信息污染上下文,确保模型行为的安全性。

上下文有效性评估:开发系统化的方法来衡量上下文对模型性能的影响,从而持续优化上下文工程策略。

7. 参考材料

【1】https://www.promptingguide.ai/guides/context-engineering-guide

【2】https://rlancemartin.github.io/2025/06/23/context_engineering/

【3】https://simple.ai/p/the-skill-thats-replacing-prompt-engineering

【4】https://www.philschmid.de/context-engineering

【5】https://blog.langchain.com/the-rise-of-context-engineering/

【6】CogGuide: Human-Like Guidance for Zero-Shot Omni-Modal Reasoning

Logo

更多推荐