多智能体复杂推理需要理解驱动智能体决策的内部状态。虽然大型语言模型(LLM)不具备人类意义上的意识或真正的心智状态,但能够使用既定的智能体模型来构建其行为,使其表现出类似理性的决策过程。信念-愿望-意图(BDI)模型源自人类实践推理的哲学理论,后被人工智能领域采纳,提供了一个高效的结构,用于设计能以明确目的和深思熟虑方式行动的智能体。在BDI架构中,智能体的行为主要由三个组成部分驱动:信念: 它们代表智能体关于当前状态的信息,包括其自身及其他智能体。对于LLM智能体而言,信念可以是其预训练知识、当前上下文窗口中提供的信息、从外部知识库(例如,通过RAG从向量数据库)获取的数据,以及从之前的交互或工具使用中获得的事实的结合。愿望: 这些是智能体的目标或目的,代表其希望达成的状态。在LLM系统中,愿望通常由开发者通过初始提示、系统目标或用户请求明确指定。它们可以是从“总结这份文档”这样的简单任务,到复杂的、多步骤的目标。意图: 这些是智能体已决心实现的一些愿望。意图表明了智能体正在积极执行的行动方案或计划。意图比单纯的愿望更明确;智能体通常会保持一个意图,直到它完成、变得无法实现,或被一个更紧迫的意图取代。这三个组成部分在推理循环中共同运作,使得智能体能够感知其环境、更新其信念、审视其愿望、确定其意图,然后执行行动以达成这些意图。digraph BDI_Model { rankdir=TB; node [shape=box, style="rounded,filled", fontname="Arial", margin=0.2]; edge [fontname="Arial", fontsize=10]; subgraph cluster_agent { label="智能体"; bgcolor="#e9ecef"; color="#adb5bd"; Beliefs [fillcolor="#a5d8ff", label="信念\n(模型、知识、上下文)"]; Desires [fillcolor="#ffc9c9", label="愿望\n(目标、目的)"]; Intentions [fillcolor="#b2f2bb", label="意图\n(已确定的计划、当前重点)"]; Reasoner [fillcolor="#ffd8a8", label="实践推理器\n(LLM驱动的审议、规划)"]; } Environment [fillcolor="#ced4da", shape=cylinder, label="环境\n(输入、工具输出、消息)"]; Actions [fillcolor="#ced4da", shape=cylinder, label="行动\n(API调用、工具使用、消息)"]; Environment -> Reasoner [label="感知 / 接收"]; Reasoner -> Beliefs [label="更新"]; Beliefs -> Reasoner [label="提供信息"]; Desires -> Reasoner [label="建议选项"]; Reasoner -> Intentions [label="确定为"]; Intentions -> Reasoner [label="指导规划"]; Reasoner -> Actions [label="执行计划"]; Actions -> Environment [label="影响"]; }BDI模型为智能体的决策过程提供了一个结构,其中信念为愿望提供信息,进而引出意图和随后的行动。实践推理器,通常会运用LLM,来协调这一流程。LLM智能体中的信念对于基于LLM的智能体,“信念”并非像传统BDI系统那样存储在离散的符号数据库中。相反,它们是以下各项的复合体:参数知识: 在预训练期间编码在LLM权重中的信息。这形成了一个通用、通常是隐式的模型。上下文信息: 当前提示中提供的数据,包括任务指令、近期对话历史以及与当前交互相关的特定事实。这充当了信念的短期工作记忆。获取的知识: 从外部来源(如向量数据库、结构化数据库或API)动态获取的信息。这使得信念能够基于最新或特定领域的信息。推断知识: LLM本身通过对现有信息进行推理而得出的新事实或理解(例如,使用思维链提示)。有效地管理信念需要有机制,以便根据新的感知(例如,API调用结果、来自其他智能体的消息)来更新信念,并解决不一致之处。例如,LLM可能会被提示根据新数据“更新其理解”,或者一个监督过程可能会在信息固化为工作信念之前对其进行整理和筛选。这些信念的可靠性直接与LLM的归因能力及其生成不准确信息的倾向相关。智能体激励因素:愿望愿望代表智能体的激励方面。在大多数当前的多智能体LLM系统中,愿望并非自然产生,而是通常情况下:程序定义: 为智能体硬编码的高层次目标或目的。用户引发: 源自用户的直接请求或指令。系统驱动: 源于智能体在更大工作流程中的角色(例如,“分析师”智能体希望处理提供给它的数据)。一个重要方面是管理多个可能相互冲突的愿望。智能体可能需要根据紧迫性、重要性或依赖关系来优先处理愿望。这种优先级逻辑可以显式编码,或者更灵活地,LLM本身可以根据一组愿望和当前信念被提示执行这种优先级排序。例如,智能体可能有一个持续的愿望是最小化成本,这可能与快速完成任务的愿望相冲突。解决此类冲突需要深思熟虑。意图:决定行动意图连接了审议与执行。当智能体形成一个意图时,它便决心采取某个行动方案来达成特定愿望。这种决心意义重大,因为它意味着持续性:智能体应持续追求其意图,直到达成目标。如果一个行动失败,智能体(或其协调器)应理想地重新规划或尝试替代行动以满足意图。意图只在以下情况被放弃:已完成、变得无法实现,或被新的、更高优先级的意图明确覆盖。对于LLM智能体,意图通常表现为生成的计划或一系列步骤(例如,ReAct轨迹)。LLM被提示不仅要识别做什么,更要决心去做。在多次交互或LLM调用之间保持意图需要外部状态管理,其中当前的活动意图集被存储和引用以引导后续的LLM提示。例如,如果一个智能体意图“预订下周二飞往纽约的航班”,其实践推理器(由特定提示引导的LLM)可能会生成一个计划:检查指定日期的航班可用性。如果航班可用,向用户展示选项。如果用户确认,则继续预订所选航班。 此序列代表了智能体的活动意图。LLM中的BDI推理周期BDI模型在一个持续的推理周期上运行。虽然它并非LLM内部的一个字面上的软件循环,但这个周期可以通过精心编排LLM调用和状态管理来模拟:感知与信念更新: 智能体接收输入(用户查询、通过工具获取的传感器数据、来自其他智能体的消息)。LLM处理这些新信息,可能会更新其理解(信念)。这可能涉及RAG调用或将新数据总结到其工作上下文中。Example: 提示词:“你是一名研究助理。你目前的理解是X。你刚收到新报告Y。Y如何改变你的理解?”选项生成(愿望审议): 基于当前信念和活动愿望,智能体考虑可能的行动方案或子目标。LLM可以被提示生成这些选项。Example: 提示词:“鉴于你的目标是Z和当前情况是B,你接下来可以采取哪些可能的步骤?”筛选与意图形成: 智能体根据其愿望和信念评估生成的选项,选择一个或多个选项作为意图加以确定。这是重要的一步,其中LLM的推理能力被用于决策。Example: 提示词:“考虑选项O1、O2、O3,以及你的主要愿望D,现在追求哪个选项最有效?解释你的推理并说明你选择的意图。”规划与执行: 一旦意图形成,智能体(或LLM)便制定一个计划来实现它。然后执行此计划,通常涉及工具使用、API调用或生成消息。行动的结果反馈回感知阶段。Example (leading to ReAct-style output): 提示词(导致ReAct风格输出):“你的意图是I。你需要采取的第一个行动是什么?请明确工具和参数。”这个周期表明,受BDI启发设计的LLM智能体不仅仅是单一的LLM调用。它包含一个结构化的过程,通常由一个总体的控制循环或结构(如LangChain或AutoGen)管理,这个结构负责维护状态并在每个阶段引导LLM的重点。LLM智能体中BDI思想的实践考量将BDI原则应用于LLM智能体,与其说是直接实现经典的BDI数据结构,不如说更多是将其模型作为架构指导:信念管理: 将LLM的内部知识与外部动态更新的信念存储(例如,用于事实的向量数据库、用于智能体状态的简单键值存储)结合起来。上下文窗口充当信念的即时“注意力焦点”。确保有机制根据新信息或LLM推断来更新这些信念。愿望表示: 在提示中清晰阐明智能体目标。对于复杂任务,将高层次愿望分解为子目标层次结构。必要时,运用提示工程使智能体能够对目标优先级进行推理。意图处理: 明确追踪已确定的目标(意图)。LLM可以根据意图生成计划(一系列预定行动)。协调逻辑必须监控计划执行、处理失败(触发LLM重新规划),并识别意图的完成。通过LLM进行审议: 直接使用LLM进行审议过程。可以设计提示,使LLM“思考”各种选项,根据其信念和愿望权衡利弊,然后决定一个意图。结构化输出格式(例如,JSON)有助于提取所选的意图和计划。优点与挑战为LLM智能体采用类似BDI的结构提供了一些优点:结构化理性: 它提供了一个清晰的模型,说明智能体应如何做出决策,从而带来更可预测和易于理解的行为。目标导向性: 智能体由明确的目标(愿望和意图)驱动,使其在复杂、耗时的任务中更具专注度和效率。可解释性提升: 通过使信念、愿望和意图更加明确(即使是在LLM核心外部管理),可以更容易地追踪智能体采取特定行动的原因。支持高级行为: BDI支持规划、重新规划和适应,这对于更自主的智能体来说非常重要。然而,存在以下挑战:LLM的隐式特性: LLM本身不具备BDI组成部分。这些必须通过提示、外部内存和控制逻辑围绕LLM来构建。“心智状态”是我们所赋予的一种解释。状态管理开销: 在多个通常是无状态的LLM API调用中持久化和更新BDI组件需要外部状态管理。这会增加系统的复杂性。审议的计算成本: 在审议的每一步(选项生成、筛选、规划)都使用LLM可能在令牌使用和延迟方面既慢又昂贵。对于某些审议步骤,可能需要更简单的启发式方法或更轻量级的模型。归因与一致性: 确保LLM生成的信念准确,并且其从信念到意图的推理是合理的,这仍然是一个重大挑战,直接与幻觉和逻辑谬误等问题相关。多智能体扩展性: 为大量的智能体群体管理各自的BDI状态可能会很困难。多智能体系统中的BDI在多智能体背景下,BDI结构可以扩展到智能体间的通信和协调。智能体可能传达其:信念: 共享关于环境或任务的信息。愿望: 公布目标以寻找协作者。意图: 声明决心以避免冲突或重复工作。例如,一个意图访问共享资源的智能体可以公布其意图,允许其他智能体调整自己的计划。可以设计协商协议,使智能体根据各自的BDI状态交换提议,以达成共同接受的结果。尽管BDI模型为智能体设计提供了一种结构化方法,但其与LLM结合的应用是一种抽象,有助于组织信息流和决策过程。它指导我们如何编写LLM提示以及如何构建周边基础设施,以支持更具逻辑性和自主性的行为。随着LLM的不断发展,其在内部管理类似信念的状态或执行更复杂审议的能力可能会增强,可能简化目前所需的明确BDI支架。目前,BDI对于工程师构建下一代智能LLM驱动的智能体系统来说,仍是一个有价值的指导结构。