在生产环境中为AI代理构建上下文的架构方法(静态、动态与会话层)

Reddit r/AI_Agents 新闻

摘要

一份实用指南,介绍在生产环境中使用三个独立层(静态层(业务规则)、动态层(实时数据)和会话层(对话历史))为AI代理构建上下文,以避免因未管理上下文积累导致的常见故障。

我们在生产环境中观察到代理表现不佳的最常见原因,既不是模型问题,也不是提示词问题,而是上下文架构从未经过设计,只是随时间不断累积。所有内容最终都塞进了系统提示词中,因为这是最方便的存放位置,而代理开始以难以诊断的方式出现故障,因为失败是结构性的,而非逻辑性的。对我们最有帮助的框架是将上下文视为三个需要分别管理的独立层,因为每一层都有不同的更新频率、不同的故障模式和不同的恢复路径。静态层涵盖描述业务运作的所有内容:术语、决策边界、产品规则、升级路径。这类内容很少变更,但一旦变更就必须准确,因为过时的静态上下文会产生自信的错误答案,这些错误比明显错误更难发现。我们将静态层放在系统提示词之外,存放在一个结构化的知识库中,代理从中检索,而不是直接嵌入其中,这样更容易在不修改代理逻辑本身的情况下进行更新。动态层是代理在运行时需要的实时数据:订单状态、客户历史、库存、账户详情。这实际上是生产环境中大多数上下文缺口所在,因为那些在测试中表现出色的代理,往往在测试环境中拥有干净、完整的动态数据,而生产环境无法可靠提供。解决方法不是改进提示词,而是让动态数据检索明确显示它找到了什么以及未找到什么,这样代理就不会通过推理默默填补缺口。会话层涵盖本次特定对话或工作流运行中发生的一切,我们在此最常见错误是存储原始对话历史并向前传递,这会使上下文窗口膨胀,将信号淹没在噪音中。改为存储结构化的决策记录,即记录决定了什么、依据是什么、以及运行中的哪个时间点,这样可以保持会话上下文精简,并在后续出现问题时使代理的推理可审计。在构建任何代理之前,值得问的架构问题是:在您的特定上下文中,三层中哪一层最可能引发故障,以及发生故障时是否有恢复路径,因为我们见过的大多数代理可靠性问题都可以追溯到三层中的某一层缺失、过时,或者以某种方式与另一层合并,导致无法独立更新或调试。
查看原文

相似文章

@eng_khairallah1: https://x.com/eng_khairallah1/status/2053405155630936297

X AI KOLs Timeline

文章指出,上下文工程(Context Engineering)——即对提供给 AI 的信息和记忆进行结构化处理——比单纯的提示词工程(Prompt Engineering)对性能的影响更为关键。本文系统地概述了一门课程,该课程旨在教导如何通过管理会话历史和持久记忆等上下文层来构建可靠的 AI 系统。

如何在ChatGPT、Claude及其他AI工具间保持上下文一致

Reddit r/artificial

本文探讨了在ChatGPT和Claude等多个AI模型间保持上下文一致的挑战,提出了三种常见方法:手动传递上下文、使用一个主要模型以及统一工作空间,并推荐了一种锚定单一信息源的混合方法。

AI智能体的有效上下文工程

Anthropic Engineering

Anthropic发布指南,将上下文工程定义为提示工程的演进,侧重于为AI智能体筛选最优上下文token,以在多轮推理过程中保持性能和专注度。