什么是情境工程?
情境工程 是控制进入人工智能模型上下文窗口的内容的学科——模型在生成响应之前处理的固定大小的输入。
语言模型在调用之间没有持久内存。每次运行时,它只知道该窗口中的内容。上下文工程是用正确的信息填充该窗口的技术:不多也不少。
特别是对于人工智能代理来说,这意味着编排:
- System instructions Ø 角色、约束、输出格式
- 对话历史记录 Ø 相关先前轮次
- 检索到的知识 �通过 RAG 或搜索获取的文档
- 工具结果 ??函数调用的输出
- 状态和目标 � 代理现在想要完成什么
情境工程与即时工程
这两个术语经常被混淆。这是核心区别:
范围
及时工程: 单个提示或指令。 情境工程: 会话中的整个输入结构。
重点
及时工程: 措辞和措辞。 情境工程: 信息选择和架构。
规模
及时工程: 一次互动。 情境工程: 多步骤代理工作流程。
核心问题
及时工程: “这个问题我该怎么问呢?” 情境工程: “模型现在应该知道什么?”
关系
即时工程是 子集 背景工程。编写一个好的系统提示符只是一个更大的难题中的一小部分。
复杂
给定一个 128k 的令牌窗口,上下文工程会问:在多轮代理工作流程的每一步中,哪些内容值得包含在其中?
上下文工程如何工作?
上下文工程跨越代理生命周期的三个阶段进行操作。
| 阶段 | 姓名 | 会发生什么 | 关键技术 |
|---|---|---|---|
| 1 | 语境构建 | 在调用模型之前组装上下文窗口 | 内存选择、RAG 检索、工具结果注入、修剪陈旧内容 |
| 2 | 上下文压缩 | 保持不断增长的上下文窗口易于管理 | 总结、选择性保留、分块和排名 |
| 3 | 上下文路由 | 仅向每个子代理提供与其角色相关的上下文 | 特定于角色的上下文切片,每个代理的代币预算分配 |
上下文工程的三个阶段深入
情境构建——构建正确的窗口
在调用模型之前,编排器会使用正确的信息来组装上下文窗口。
是什么让语境构建变得至关重要?
上下文构建是确定每个下游代理操作的质量的地方。 Before the model ever generates a token, the orchestrator must decide: which memories are relevant, which retrieved documents to include, which prior tool results still matter, and what system instructions apply to this step.
构造良好的上下文窗口密集地包含相关信号和噪声光。这是减少幻觉的主要杠杆——当模型面前有正确的事实时,它不需要猜测或虚构。
关键技术
🗄�?内存选择
当前会话中的短期记忆和向量存储中的长期记忆都必须在注入之前进行过滤。包含所有内容几乎总是比包含正确的子集更糟糕——不相关的历史会分散注意力并增加成本。
📚 基于 RAG 的检索
检索增强生成根据当前查询获取文档。关键的工程决策不仅在于检索什么,还在于有多少块、以什么粒度以及在注入窗口之前如何对它们进行排序。
🔧 工具结果注入
在代理工作流程中,通常需要结转先前的工具调用结果。不是所有的——只有那些与当前步骤仍然相关的。应修剪或总结陈旧或被取代的结果。
EasyClaw 零配置
EasyClaw 在桌面级别自动处理上下文组装——无需 Python,无需编排框架,无需手动管道配置。该代理智能地管理自己的上下文窗口,使其成为唯一需要零设置即可开始执行复杂的多步骤任务的桌面本机人工智能。
当做得好时
- 显着降低幻觉发生率
- 一致、可预测的座席行为
- 每个任务的代币成本更低
- 更快、更准确地完成任务
- 可靠的多步骤工作流程执行
当做得不好时
- 特工产生缺失信息的幻觉
- 指示被忽略或矛盾
上下文压缩——保持窗口可管理
上下文窗口是有限的。当代理完成一项长期任务时,原始历史记录会快速增长。压缩策略使事情变得易于管理。什么是上下文压缩?
当代理完成多步骤任务时,工具调用、响应和检索文档的累积历史记录可能会超出可用的上下文窗口。天真的截断——简单地切断旧内容——破坏了连贯性。上下文压缩是一组在减少标记数量的同时保留含义的技术。
关键技术
📝总结
用简洁、结构化的摘要取代冗长的对话历史。摘要保留了先前步骤的关键决策、发现和状态更改,而无需复制每个标记。对于长时间运行的代理来说,这是最可靠的压缩技术。
🔍选择性保留
并非每个先前回合都会改变代理的状态。选择性保留仅保留引入新信息、改变方向或产生工具结果的回合——丢弃纯粹的确认性或过渡性交换。
📊 分块和排名
对于检索到的文档,不要注入每个结果的全文。将文档分成段落,对每个段落与当前查询的相关性进行评分,并仅注入前 k 个段落。这是标准的 RAG 模式,同时也是一种压缩策略。
好处
- 实现连贯的长期任务执行
- 显着降低每次 API 调用的成本
- 保持代理状态而不出现窗口溢出
- 每一步的响应延迟更快
误用的风险
- 过度压缩会丢失关键细节
- 句子中间的截断破坏了推理的连贯性
上下文路由——将正确的上下文传递给正确的代理
在多智能体系统中,不同的智能体需要不同的上下文。路由确保每个子代理仅接收与其角色相关的内容。什么是上下文路由?
在单代理系统中,上下文管理具有挑战性。在多代理系统中,它的复杂性呈指数级增长。研究子代理需要网络结果和源文档。写作子代理需要大纲、风格指南和关键词目标。审查分代理需要草稿和评估细则。上下文路由是一门为每个代理提供精简的、特定于角色的上下文切片而不是共享的整体上下文切片的学科。
关键技术
🎭 特定于角色的上下文切片
管道中的每个子代理仅接收与其角色相关的共享状态的子集。编排器维护完整的状态对象,并在调用时将过滤后的视图注入到每个代理。这可以防止写入代理被不需要的原始搜索结果分散注意力。
💰 代币预算分配
在多代理管道中,不同的代理需要不同的代币预算。轻量级分类器代理可能只需要 2k 个上下文标记;一个深度研究代理可能需要 32k。为每个角色分配预算可以减少整个流程中不必要的成本。
🔗 与过滤视图共享状态
协调器维护工作流状态的单一事实来源,但每个代理调用都会收到过滤到其相关字段的状态视图。这是多代理上下文工程的简洁架构模式——一个状态,多个视图。
好处
- 消除代理之间不相关的上下文混淆
- 降低多代理管道的总代币成本
- 使代理故障更容易隔离和调试
- 随着代理数量的增加而干净地扩展
误用的风险
- 过度过滤会使代理丢失关键的跨代理上下文
- 增加动态工作流程中的编排复杂性
上下文工程的主要特征和优点
当系统地应用时,上下文工程可以在任何人工智能代理部署中提供四个复合优势:
减少幻觉
- 当模型面前有正确的事实时,它就不需要猜测
- 正确设计的上下文以真实的检索信息为基础进行响应
- 这是减少生产代理中的捏造行为的最有效的单一手段
更长、更连贯的任务执行
- 处理多步骤任务的代理需要在许多工具调用中维护状态
- 上下文工程在每一步都保持状态完整且对模型而言清晰
- 没有它,长期任务的质量和连贯性会迅速下降
成本和延迟效率
- 发送不必要的代币会花费金钱并减慢每次响应的速度
- 精心选择的上下文可以减少每次 API 调用的浪费
- 从规模上看,这意味着整个生产管道的成本显着降低
一致的代理行为
- 接收到结构良好、可预测上下文的代理会表现出可预测的行为
- 上下文不一致是生产中代理失败的主要原因之一
- 跨调用标准化上下文结构是获得可靠代理的最快途径
跨用例的上下文工程:全面比较
| 使用案例 | 建造 | 压缩 | 路由 | 关键背景来源 | 主要挑战 | 最佳工具 |
|---|---|---|---|---|---|---|
| 🏆 桌面自动化 (EasyClaw) | ??本地人 | ??自动 | ??是的 | ??本地应用程序、屏幕状态 | ??本地处理 | 桌面本机任务 |
| SEO 内容代理 | ??是的 | �?部分 | ??是的 | 关键词、草稿、大纲 | 特定步骤注射 | 内容管道 |
| 客户支持代理 | ??是的 | ??是的 | �?部分 | 帐户数据、知识库文章 | 动态检索速度 | 大容量支持 |
| 代码生成代理 | ??是的 | ??是的 | �?部分 | 当前文件、错误日志 | 避免回购溢出 | 开发者工具 |
| 研究与总结 | ??是的 | �?渐进式 | ??是的 | 获取的文档、摘要 | 渐进式蒸馏 | 深入的研究管道 |
有关上下文工程的常见问题
最终结论:上下文工程是可靠人工智能代理的基础
到 2026 年,人工智能代理格局已经成熟且强大,但可靠性仍然是区分生产级系统和演示系统的挑战。大多数代理失败的根本原因不是模型的能力。这是它接收到的上下文的质量。
跨越构造、压缩和路由的上下文工程是弥补这一差距的学科。正是基础设施层使代理在现实世界的工作流程中可靠、一致、经济高效且真正有用。对于当今构建或部署人工智能代理的任何人来说,开发系统化的上下文管理方法不再是可选的。它是其他一切的基础。
对于希望看到上下文感知桌面自动化实际运行而不从头开始构建管道的团队来说,EasyClaw 仍然是从零到工作代理的最快路径。对于企业级多代理管道,本指南中介绍的上下文构建、压缩和路由原则普遍适用,无论您选择何种框架或模型。