为了使多智能体系统发挥出超出其个体总和的效用,其组成智能体不仅需要沟通,还需要培养共同的理解并同步其行动。上一节详细介绍了如何构建消息,本节探讨智能体如何运用这些通信(及其他方式)来获得共同认知,并有效协调其行为以达成共同目标。若无这些能力,即便最智能的单个智能体也会孤立运作,无法进行有意义的协作。多智能体大语言模型系统中的共同认知定义多智能体大语言模型系统中的共同认知不仅仅是访问相同的原始数据。它指的是一种状态,即智能体对环境、整体任务进度、其他智能体的状态以及其意图或能力,在与其协作目标相关的情况下,拥有相互可理解且足够一致的理解。对于基于大语言模型的智能体,这通常涉及解析详细信息,在文本交流中对所获得意义达成一致,并为推理建立共同立足点。智能体的认知由其输入信息形成:来自其他智能体的消息,其专用知识源的信息,以及它与之交互的任何共享环境中的观察结果。难题在于如何确保这些个体认知汇聚成一个足够连贯的集体理解,以实现有效的协调行动。大语言模型在此发挥重要作用,不仅生成通信行为,还处理传入信息以更新其内部模型或“信念状态”,进而为其在共同认知中的贡献提供依据。构建共同理解的核心策略智能体可以通过几种主要策略建立和维护共同理解。这些策略并非相互排斥,通常会结合使用。共享知识库一种常见方法是使用所有智能体均可访问的集中式或分布式知识库。此知识库作为共同基础,存储对集体任务非常重要的信息。黑板系统:一种经典的AI架构,黑板模型包含一个共享数据结构(“黑板”),智能体在此协作构建解决方案。智能体作为专家,观察黑板以获取与其专业相关的信息。它们可以处理这些信息,并将新的或更新的发现(假设、部分解决方案、事实)发布回黑板。在大语言模型语境下,智能体可以从黑板读取问题描述或中间结果,使用大语言模型进行推理或生成内容,然后将结构化数据、摘要或提案写回。例如,一个智能体可能会发布“在模块X中发现潜在安全漏洞”,而另一个专业智能体可以接收此信息以进一步调查。数据库和向量存储:对于更持久、结构化或大量的数据,传统数据库(SQL, NoSQL)或专用向量数据库(用于对嵌入向量进行语义搜索)可用作共享知识库。智能体可以查询这些存储库以获取信息或贡献新知识。当大语言模型需要从大量信息语料库中查找相关语境来为其行动或通信提供依据时,向量数据库特别有用。共享存储库的主要优势在于共享知识的明确、可普遍访问的呈现形式。然而,如果设计不当,它们可能成为性能瓶颈,并且管理并发访问和确保数据一致性需要强大的机制。直接信息交换直接基于先前讨论的消息传递模式,智能体可以通过显式地相互通信更新、查询和状态信息来实现共同认知。状态同步:智能体可以定期向其他相关智能体广播其内部状态或相关变更。或者,可以使用事件驱动方法,即智能体发布关于重要事件的通知(例如,任务完成、新数据发现),订阅的智能体相应地更新其认知。定向查询:需要特定信息的智能体可以直接查询被认为拥有该信息的其他智能体。大语言模型的自然语言理解能力在构建此类查询和解析响应方面很有价值,即使底层载荷是结构化的。直接交换促进了更动态且可能更具针对性的信息共享,与全局黑板相比。挑战在于确保正确的信息在正确的时间到达正确的智能体,而不会使通信通道过载。环境线索与表征协同表征协同是一种间接协调形式,智能体通过观察和修改共享环境进行交互。一个智能体的行动在环境中留下痕迹,进而影响其他智能体后续的行动。示例:一个负责起草文档的智能体可能会将其保存到共享文件系统。另一个负责审查的智能体,可以被设定为监控此位置,并在文档出现后自动开始其审查流程。大语言模型智能体可以“读取”这些环境线索(例如,新文件、被其他智能体修改的数据库条目),并运用其推理能力来理解其重要性并确定适当的响应。表征协同减少了直接通信的需求,但需要定义良好的共享环境和明确的环境变化信息指示约定。实施协调机制共同认知是协调的前提,协调是指组织智能体活动以高效无冲突地实现共同目标的过程。集中式协调在集中式方法中,一个特定智能体,通常称为协调者、管理者或指挥者,负责指导集体行动。协调者的作用:该智能体通常会向其他智能体分配任务,监控其进度,管理资源,解决冲突,并对工作流程做出高层级决策。单个智能体则专注于执行其分配的任务并报告结果。优势:简化了工作智能体的逻辑,提供了明确的控制点和总览。缺点:协调者可能成为单点故障和性能瓶颈。系统韧性和可扩展性可能受限。基于大语言模型的协调者可以借助其推理能力来动态调整计划,根据工作智能体自然语言报告中描述的不断变化的情况重新分配任务,甚至合成复杂的指令。分布式协调在分布式系统中,智能体之间无需中央权限即可自行协调。这通常能带来更具韧性和可扩展性的系统,但要求单个智能体具备更精密的个体智能体能力。对等协议:智能体直接交互以协商任务、共享信息并做出集体决策。契约网络协议:一种常见的任务分配协议。一个智能体(该任务的管理者)向其他智能体发布任务。感兴趣的智能体(潜在承包商)可以提交标书,表明其适用性或成本。管理者随后评估标书,并将契约授予最合适的智能体。大语言模型智能体可以根据其定义的角色和工具访问权限,擅长生成有说服力的“标书”,或评估传入的自然语言提案。投票与共识算法:当需要集体决策时,智能体可以提出选项并进行投票。可以使用简单多数投票或更复杂的共识协议。大语言模型可以帮助智能体制定提案,生成支持或反对的论证,甚至参与简化的审议过程。以下图表说明了智能体如何交互以实现共同认知和协调的两种高层级模型:digraph G { rankdir=TB; fontsize=12; fontname="Arial"; node [shape=box, style="rounded,filled", fillcolor="#e9ece2", fontname="Arial"]; edge [fontname="Arial", fontsize=10]; subgraph cluster_shared_memory { label = "共享知识库模型"; style="rounded"; bgcolor="#f8f9fa"; fontcolor="#495057"; A1_SM [label="智能体 1", fillcolor="#a5d8ff"]; A2_SM [label="智能体 2", fillcolor="#a5d8ff"]; A3_SM [label="智能体 N", fillcolor="#a5d8ff"]; SharedRepo [label="共享存储库\n(例如,黑板,向量数据库)", shape=cylinder, fillcolor="#96f2d7", height=0.8]; A1_SM -> SharedRepo [label=" 读/写", color="#495057"]; A2_SM -> SharedRepo [label=" 读/写", color="#495057"]; A3_SM -> SharedRepo [label=" 读/写", color="#495057"]; } subgraph cluster_message_passing { label = "直接消息传递模型"; style="rounded"; bgcolor="#f8f9fa"; fontcolor="#495057"; A1_MP [label="智能体 1", fillcolor="#ffc9c9"]; A2_MP [label="智能体 2", fillcolor="#ffc9c9"]; A3_MP [label="智能体 N", fillcolor="#ffc9c9"]; A1_MP -> A2_MP [dir=both, label=" 消息", color="#495057"]; A1_MP -> A3_MP [dir=both, label=" 消息", color="#495057"]; A2_MP -> A3_MP [dir=both, label=" 消息", color="#495057"]; } }两种常见的智能体交互架构模式。共享知识库模型使用中央数据存储,而直接消息传递模型依赖于对等通信。协调时共享状态与消息传递的选择在协调时,使用共享状态(如黑板或数据库)与直接消息传递之间的选择涉及显著的权衡:共享状态模型(例如,通过共享数据库、分布式缓存)机制:智能体从反映系统集体状态相关方面的共同、可访问数据结构中读取和写入。优点:信息随时可用(受一致性模型约束),无需显式请求。可简化需要全局视图或频繁引用通用数据的任务逻辑。隐式通信可以减少某些类型更新的消息流量。缺点:并发控制:需要谨慎管理(例如,锁、乐观并发控制、事务)以防止竞态条件并确保数据完整性,这可能复杂且容易出错。可扩展性瓶颈:随着智能体数量或访问频率的增加,集中式共享状态可能成为性能瓶颈。紧密耦合:智能体变得依赖于共享状态的特定模式和结构,使系统演进更加困难。调试:如果协调依赖于观察不明显的状态变化而非明确的通信行为,追踪因果关系可能会更难。消息传递模型(智能体之间直接通信或通过消息总线)机制:智能体显式发送消息以交换信息、提出请求或发出事件信号。优点:松散耦合:智能体通过定义良好的消息接口进行交互,减少了彼此内部实现的依赖。这促进了模块化和更简便的系统演进。可扩展性:通常更具可扩展性,特别是结合异步消息传递和可分发负载的消息代理。明确意图:消息清晰传达交互目的,有助于调试、日志记录和理解系统动态。灵活性:自然支持多样化的通信模式,包括同步请求/回复和异步即发即忘或事件通知。缺点:开销:消息的序列化、传输和反序列化会引入延迟和计算成本。状态一致性:确保所有智能体基于消息序列对分布式状态保持一致视图可能很复杂(例如,处理乱序消息,实现最终一致性)。网络依赖:性能和可靠性受网络条件影响。需要处理消息丢失或延迟。潜在的“冗余性”:设计不当的交互协议可能导致过多的消息流量。实践中,许多精密的(原词:sophisticated)多智能体系统采用混合方法。例如,智能体可能使用消息传递进行命令、协商和事件通知,同时依赖共享的、经过优化的知识库来访问大量通用数据。基于大语言模型的协调所面临的特定挑战虽然大语言模型为智能体系统带来了强大的能力,但其使用也给共同认知和协调带来了特定挑战:语义模糊性与解释:自然语言是许多大语言模型交互的主要接口,可能存在模糊性。确保不同大语言模型智能体一致地解释共享信息或指令是一个不容忽视的问题。像“处理紧急客户问题”这样的表述,可能被具有不同专长或语境的智能体进行不同理解。维护语义一致性:随着智能体交换信息并更新其理解,在集体信念状态中维护语义一致性变得重要。大语言模型可能生成一些文本,它们在局部上连贯,但会不明显地与之前确立的事实或其他智能体的理解相矛盾。延迟:大语言模型推理可能相对较慢。对于需要快速往返或实时响应的协调任务,这种延迟可能是一个显著障碍。涉及多个大语言模型按序调用的同步交互会放大此问题。幻觉与事实准确性:大语言模型有时会生成看似合理但不正确的信息(“幻觉”)。如果此类信息被纳入共同认知或用作协调基础,则可能导致错误的集体行为。事实核查或交叉验证的机制变得重要。成本管理:频繁地进行大语言模型调用以处理、解释和生成通信,可能导致高昂的运营成本,尤其是在智能体数量多或交互量大的系统中。优化提示词和交互模式以最大程度减少令牌使用,同时保持有效性是必要的。成功设计多智能体大语言模型系统中的共同认知和协调,需要仔细考虑这些架构选择以及大语言模型特有的挑战。目标是创建这样的系统:智能体不仅能够交谈,还能真正相互理解并一致行动,以实现单个智能体无法达成的目标。在这些奠基内容之上,以下章节将讨论协商、任务分配和冲突解决的具体协议。