[控场AI]
· 5 分钟阅读· 2,972 字

用Azure Cosmos DB构建有状态多智能体系统

用Azure Cosmos DB构建有状态多智能体系统

用Agent Memory Toolkit为多智能体系统在Azure Cosmos DB中构建共享持久记忆。

文章指出,多数AI应用默认没有持久记忆,用户重复输入导致信任流失,记忆应作为多智能体架构的一等公民而非事后补充。作者将智能体记忆拆为短期、长期、情景、语义四类,分别对应持久性与内容两套维度。以旅行规划器为例,研究、酒店、餐厅三个智能体并非互相传递消息,而是共同读写Agent Memory Toolkit中的单一事实源,实现上下文完整交接。用户以自然语言修正偏好时,变更写入长期记忆,所有下游智能体即时同步。文章强调,架构设计之初就需考虑记忆分类、共享与修正机制,才能让系统越用越懂用户。

用Azure Cosmos DB构建有状态多智能体系统

大多数AI应用默认没有持久记忆:用户周一告诉旅行规划器“我从不坐红眼航班”,周二回来时,系统依然推荐红眼航班。这不仅是体验问题,更是信任问题——用户会停止期待应用变得有用。在Azure Cosmos DB团队看来,记忆不是后期添加的功能,而是多智能体应用的基础架构。

本文基于Code with Azure Cosmos DB系列第三期内容,拆解如何用Agent Memory Toolkit为多智能体旅行规划器添加共享持久记忆,实现跨会话、跨智能体的状态连续性。

无记忆智能体的信任困境

无记忆智能体的困境

Azure Cosmos DB产品经理Madeline Egan指出,默认情况下多数AI应用启动时没有持久记忆——没有偏好、没有历史、没有上下文。用户每次回来都面对一个空白 slate,需要重复交代相同信息。

这种设计缺陷在单轮对话中不明显,但在需要长期协作的场景(如旅行规划、项目管理、学习辅导)中迅速暴露。用户的耐心被重复输入消耗,对系统的信任也随之瓦解。更深层的问题在于:没有记忆,智能体无法从交互中学习,也就无法真正个性化。

智能体记忆的四种类型

情景记忆的定义

要把记忆做成架构的一等公民,首先需要区分记忆的维度。Madeline将智能体记忆拆解为四类:

  • 短期记忆:当前交互或会话内可用的信息,如近期对话历史、当前意图、中间任务状态。
  • 长期记忆:跨会话保留、可供未来交互使用的信息。
  • 情景记忆:对具体事件或经历的长期记录,例如你过去的巴塞罗那之行,或在某家酒店的糟糕体验。
  • 语义记忆:长期事实、偏好和泛化知识,例如“偏好精品酒店”这类从交互中推断出的结论。

这四类记忆共同构成系统对特定用户的结构化认知记录,使智能体能够个性化未来响应。有意思的是,短期记忆与长期记忆的划分依据是持久性,而情景与语义记忆的划分依据是内容性质——两套维度交叉,覆盖了智能体需要的全部记忆形态。

语义记忆与情景记忆的认知科学渊源

情景记忆与语义记忆的区分最早由认知心理学家Endel Tulving于1972年提出:情景记忆指向“何时何地发生了什么”的自传体经历,语义记忆则存储脱离具体时空的事实性知识。这一划分被引入智能体设计后,直接对应两类不同的数据建模需求——情景记忆通常需要时间戳、参与者、事件序列等字段,适合文档型存储;语义记忆更接近键值化的偏好标签,强调可检索与可更新。Azure Cosmos DB的灵活模式(schema-agnostic)恰好能同时承载两者:事件记录以嵌套JSON保存,偏好事实则以扁平字段供查询。开发者在设计记忆库时,应避免把两类记忆混在同一集合中,否则检索时的相关性排序会被噪声干扰。

多智能体共享记忆的实现机制

餐厅智能体

如果每个智能体各自维护记忆,系统会退化成多个孤岛,用户偏好无法一致传递。Agent Memory Toolkit的核心价值在于:为所有智能体提供统一的方式来存储、检索和更新Azure Cosmos DB中的记忆,无需每个应用从零搭建基础设施。

本期构建的旅行规划器包含三个专职智能体:研究智能体负责目的地与活动,酒店智能体负责住宿,餐厅智能体负责餐饮。三者都需要知道用户的相同信息。

当用户计划去巴塞罗那度长周末时,研究智能体开始拉取目的地、活动与街区信息,并将预算、旅行风格等偏好写入记忆库。其他智能体从同一记忆存储读取,立即掌握预算、日期和约束条件,开始收窄推荐范围。

智能体交接的本质是共享数据源

这里的“交接”不是智能体之间传递消息,而是所有智能体读取Agent Memory Toolkit中的单一事实源。酒店智能体读取研究智能体写入Azure Cosmos DB的全部内容,带着完整上下文接手工作。每个智能体各司其职,但共享同一幅用户画像。

这种设计避免了消息传递中的信息丢失和顺序依赖,也让新增智能体变得简单——只要接入同一记忆库,就能获得完整的用户上下文。

单一事实源与并发一致性

“单一事实源”(Single Source of Truth)是数据架构中的经典原则:任何数据只有一个权威副本,其他位置均为派生或缓存。在多智能体场景中,这一原则的真正挑战不在读取,而在并发写入——当研究智能体、酒店智能体几乎同时更新同一用户的预算约束时,若各自持有内存副本,就会产生写冲突与不一致。Agent Memory Toolkit依托Azure Cosmos DB的乐观并发控制(ETag机制)和可调一致性级别来化解这一问题:写入时携带版本标记,冲突则重试或合并。开发者需要为记忆条目设计合理的分区键(通常以用户ID分区),既保证同一用户的写入串行化,又让不同用户的记忆分布到不同物理分区以实现水平扩展。

跨会话状态延续与偏好更新

跨会话记忆恢复

用户关闭应用、第二天回来时,系统不会从空白开始。Azure Cosmos DB保存了上次对话的全部内容,以及持久化的用户偏好、交互历史和其他长期上下文。

如果用户想修改此前告知应用的信息,只需用自然语言说明。当用户明确纠正或更新偏好时,变更会写入长期记忆,所有下游智能体立即看到最新信息。这一机制的关键在于:偏好更新不是覆盖某个智能体的本地状态,而是更新共享事实源,从而保证整个系统的一致性。

记忆生命周期与遗忘机制

持久记忆并非“保存得越多越好”。随着会话累积,记忆库会膨胀,检索延迟上升,过期或矛盾的旧偏好还会污染推荐结果。因此生产级记忆系统需要显式的生命周期管理:为每条记忆标注来源(用户显式陈述、系统推断、对话摘要)、置信度与时间戳,并在检索时按新鲜度和置信度加权。常见策略包括按TTL自动过期临时上下文、对语义记忆做冲突检测(新偏好与旧偏好矛盾时标记待确认)、以及定期将冗长的情景记忆压缩为摘要。这一层设计与文章强调的“用户显式修正”相辅相成:显式修正应获得最高置信度并立即覆盖推断值,而推断值则需在多次强化后才可沉淀为长期事实。

记忆优先的架构启示

这期内容传递的核心观点是:记忆不是可以日后补上的功能,而是多智能体应用的基础。Agent Memory Toolkit简化了Azure Cosmos DB中持久共享记忆的实现,让每种记忆类型都能跨多个智能体共享,并贯穿每个新会话。

对于正在构建AI应用的开发者,这意味着架构设计阶段就需要考虑:记忆如何分类、如何在智能体间共享、如何支持用户显式修正。把记忆当作一等公民,多智能体系统才能从“每次重新开始”走向“越用越懂你”。

下一期将进入生产环境,关注智能体行为的可观测性、结果验证与故障排查——那将是记忆架构之上的另一层关键能力。

#Azure Cosmos DB#Agent Memory Toolkit#多智能体系统#智能体记忆#有状态AI应用#持久化记忆#AI Agent架构
分享:

相关推荐