AI 领域的新技能不是 Prompting,而是 Context Engineering

转载

Context Engineering 是一个在 AI 领域日益受到关注的新术语。人们的讨论正在从"prompt engineering"转向一个更广泛、更有力的概念:Context Engineering。Tobi Lutke 将其描述为"为任务提供使 LLM 有可能解决它所需的全部上下文的艺术",他是对的。

随着 Agent 的兴起,我们为其加载到"有限工作记忆"中的信息变得至关重要 。我们发现,一个 Agent 成败的关键,不再是模型本身,而是你给它的上下文质量。现在大多数 Agent 的失败,并非是模型失败,而是上下文失败。

什么是 Context?

要理解 Context Engineering,我们必须扩展"context"一词的定义。它不仅仅是你发给 LLM 的那条 prompt,而是模型在生成回应前所看到的全部内容

  • Instructions / System Prompt:定义模型行为的初始指令集,可以/应该包含示例、规则等。
  • User Prompt:来自用户的即时任务或提问。
  • State / History(短期记忆) :当前对话的历史,包括用户和模型之间迄今为止的所有交互。
  • Long-Term Memory:持久性知识库,跨多个对话积累,包括用户偏好、过去项目的摘要,或模型被告知要记住的信息。
  • Retrieved Information (RAG) :外部检索的实时信息,如文档、数据库或 API 中的相关内容。
  • Available Tools :模型可以调用的所有函数或内置工具定义(如 check_inventorysend_email)。
  • Structured Output:定义模型输出格式的规范,例如一个 JSON 对象。

为什么它重要:从廉价 Demo 到魔法般的产品

构建真正有效的 AI Agent 的秘密,与其说在于你写的代码复杂程度,不如说在于你提供的上下文质量

构建 Agent 不再是写代码或选框架的问题。廉价 Demo 和"魔法般" Agent 的区别在于,你给模型准备了多少有用的上下文。想象你让 AI 助手基于一封简单邮件安排会议:

Hey, just checking if you're around for a quick sync tomorrow.

"廉价 Demo" Agent 的上下文质量差。它只看到这条请求,别无其他。它的代码可能运行良好------调用了一个 LLM 并得到了回应------但输出却死板无用:

Thank you for your message. Tomorrow works for me. May I ask what time you had in mind?

"魔法般的" Agent 有丰富的上下文。代码的核心任务不再是决定怎么回复,而是收集 LLM 完成任务所需的信息。在调用 LLM 之前,它会扩展上下文,比如:

  • 你的日历信息(显示你明天全天排满)。
  • 与该联系人过往邮件(判断语气应该亲切随意)。
  • 通讯录信息(识别对方为关键合作伙伴)。
  • 可调用工具(如 send_invitesend_email)。

于是你可以生成:

Hey Jim! Tomorrow's packed on my end, back-to-back all day. Thursday AM free if that works for you? Sent an invite, lmk if it works.

魔法不在于更聪明的模型或更精巧的算法,而在于为特定任务准备了正确的上下文。这就是为什么 Context Engineering 变得重要。Agent 的失败不只是模型问题,而是上下文问题。


从 Prompt Engineering 到 Context Engineering

什么是 Context Engineering?如果说 Prompt Engineering 专注于用一条文本字符串精心编写指令,那么 Context Engineering 就远远超出了这个范畴。简而言之:

Context Engineering 是一门设计和构建动态系统的学问,该系统能够在正确的时间、以正确的格式,提供正确的信息和工具,使 LLM 能够完成任务。

Context Engineering 的关键特征:

  • 一个系统,而非一条字符串:Context 不是静态的 prompt 模板,而是在主 LLM 调用之前由系统动态生成的内容。
  • 动态生成:Context 是临时创建的,针对具体任务定制。例如有时是日历信息,有时是邮件,有时是网页搜索。
  • 关注正确的信息和工具是否在正确时间被提供:核心任务是避免"Garbage In, Garbage Out"。只在必要时提供有帮助的知识和能力。
  • 格式非常重要:呈现方式很关键。简洁摘要优于原始数据堆。清晰的工具调用 schema 优于模糊的文字说明。

总结

构建强大且可靠的 AI Agent,不再是寻找神奇 prompt 或等待模型更新 。它是关于如何对上下文进行工程设计 ,并在正确的时间、以正确的格式,提供正确的信息和工具。这是一项跨职能挑战,涉及理解你的业务场景、定义输出目标、并对所有必要信息进行结构化,使 LLM 能够"完成任务"。


推荐阅读

本文内容来自深入研究,并参考了以下优质资源:

相关推荐
泯泷4 小时前
从"手艺人"到"超级个体":我在小破站用AI重构工作方式的2025
aigc·openai·ai编程
AAA阿giao4 小时前
用 LangChain 玩转大模型:从零搭建你的第一个 AI 应用
javascript·人工智能·langchain·llm·ai编程·ai开发
qq_2518364574 小时前
RAG(Retrieval-Augmented Generation,检索增强生成)系统开发
ai编程
程序员码歌8 小时前
短思考第265天,小红书起号3周怎么样?实操总结这3点!
android·ai编程
小妖同学学AI9 小时前
【claude4.5+gpt5codex】 Token自由,cto.new AI编程平台|邀请码接力
ai编程
paopao_wu9 小时前
AI编程工具-Trae: 内置智能体
人工智能·ai编程·trae
逐梦苍穹9 小时前
Lingma IDE和Qoder IDE的对比
ide·ai编程·通义灵码·qoder
骑猪兜风2331 天前
软件工程大师 Martin Fowler 谈 AI 与软件工程的变迁
人工智能·软件工程·ai编程
法欧特斯卡雷特1 天前
告别 Terminal!IDEA 也可以爽用 Claude Code 了?
agent·ai编程·jetbrains
HashTang1 天前
【AI 编程实战】第 5 篇:Pinia 状态管理 - 从混乱代码到优雅架构
前端·vue.js·ai编程