Shared State Pattern
概述
共享状态(Shared State)是通过让智能体通过一个所有智能体都可直接读写的持久存储进行协调,从而消除中间环节的多智能体模式。智能体自主运行,可读写共享数据库、文件系统或文档,不存在中央协调者。
关键内容
工作原理
- 自主运行 → 智能体读写共享存储
- 无中央协调者 → 智能体直接协调
- 检索相关信息 → 检查存储库中的相关内容
- 执行操作 → 基于获取的内容执行
- 写回结果 → 将发现写回存储库
- 终止条件 → 时间限制/收敛阈值/足够答案
适用场景
协作式研究: - 智能体的工作具有协作性 - 研究结果需要在它们之间实时流转 - 共享存储库成为不断演进的知识库
具体应用: - 研究综合系统(学术文献/行业报告/专利申请/新闻报道) - 协作知识构建 - 需要消除单点故障的系统
实际案例
研究综合系统: - 场景:多个智能体针对一个复杂问题的不同方面展开调查 - 智能体: - 学术文献智能体:探究学术文献 - 行业报告智能体:分析行业报告 - 专利申请智能体:研究专利申请 - 新闻报道智能体:监控新闻报道 - 协作: - 学术智能体发现关键研究者 - 行业智能体立即查看该发现,对该研究者所在公司进行更深入研究 - 智能体之间相互借鉴成果 - 优势: - 无需等待协调者传递信息 - 共享存储库成为不断演进的知识库
优势
- 智能体直接共享发现,无需等待协调者传递信息
- 共享存储库成为不断演进的知识库
- 消除协调器作为单一故障点
- 若任意一个代理停止运行,其他代理仍可继续读写
局限性
缺乏明确协调: - 智能体可能会重复工作或采用相互矛盾的方法 - 两个智能体可能会各自独立调查同一线索 - 结果更难预测(系统行为而非自上而下设计)
反应式循环: - 更严重的故障模式 - 示例:A 写出发现→B 读取后撰写后续→A 看到后再回应→无限循环 - 系统持续消耗令牌用于无法收敛的工作
工程解决方案: - 重复工作和并发写入已有成熟的工程解决方案(锁定、版本控制、分区) - 反应式循环是行为层面的问题,需要设置专门的终止条件
终止条件设计
时间预算: - 设置最大运行时间 - 超时后强制停止
收敛阈值: - 连续 N 个周期无新发现 - 判定为收敛
指定判断智能体: - 专门的智能体判断知识库中是否已包含足够的答案 - 做出停止决策
与 Agent Teams 的对比
| 维度 | Agent Teams | Shared State |
|---|---|---|
| 协调方式 | 协调者分配任务 | 无中央协调者 |
| 信息共享 | 难以共享中间发现 | 实时共享发现 |
| 适用场景 | 独立分区工作 | 协作式研究 |
| 单点故障 | 协调者是单点故障 | 无单点故障 |
设计建议
终止条件: - 时间预算 - 收敛阈值(连续 N 个周期无新发现) - 指定判断智能体
避免重复工作: - 锁定机制 - 版本控制 - 任务分区
监控: - 跟踪智能体活动 - 检测反应式循环 - 设置告警机制
来源
- raw/articles/ai-engineering/claude-blog/Multi-agent coordination patterns_ Five approaches and when to use them.md — Cara Phillips 撰写
相关
- Multi-Agent-Coordination-Patterns — 五种模式之一(part_of)
- Agent-Teams-Pattern — 对比模式(compares_to)
- Message-Bus-Pattern — 对比模式(compares_to)
- Wide-Research — 应用场景(uses)