(点击上方图片观看本课视频)
一旦你开始参与一个涉及多个智能体的项目,你就需要考虑多智能体设计模式。然而,何时切换到多智能体,以及它的优势是什么,可能并不立即清楚。
在本课中,我们希望回答以下问题:
学习完本课后,你应该能够:
大局观是什么?
多智能体是一种设计模式,允许多个智能体协同工作以实现共同目标。
该模式广泛应用于机器人技术、自动系统和分布式计算等多个领域。
那么哪些场景适合使用多智能体?答案是,在很多情况下,特别是以下情况,使用多个智能体是有益的:
单一智能体系统适合简单任务,但对于更复杂的任务,使用多个智能体可带来多种优势:
举个例子,帮用户预订旅游。单一智能体需负责航班查找、酒店和租车预订的所有环节。为实现这一点,智能体需配备处理所有这些任务的工具,导致系统复杂且难以维护和扩展。而多智能体系统中,不同智能体分别专注于航班查找、酒店和租车预订,使系统更加模块化、易维护且可扩展。
这可以类比为普通旅游局与特许经营旅游局的对比。普通旅游局由单一智能体处理所有预订环节,而特许经营局由不同智能体负责不同部分。
在实施多智能体设计模式之前,需要了解构成该模式的构建模块。
以为用户预订旅游为例,构建模块包括:
了解多智能体间的交互情况十分重要。该可视性对调试、优化和保证系统整体有效性至关重要。为此,需配备跟踪智能体活动和交互的工具和技术,形式包括日志记录和监控工具、可视化工具及性能指标。
例如预订旅游时,可设仪表盘显示每个智能体状态、用户偏好与约束、智能体间的交互。仪表盘可显示用户出行日期、航班智能体推荐的航班、酒店智能体推荐的酒店、租车智能体推荐的车辆。如此一来,可清晰了解智能体间的交互及用户偏好和约束是否满足。
让我们更详细地看看这些方面。
日志和监控工具:需记录每个智能体执行的动作。日志条目可包括执行动作的智能体、动作内容、动作时间及结果。此信息可用于调试、优化等。
可视化工具:帮助直观展示智能体间的交互。例如绘制智能体间信息流图,有助识别瓶颈、低效及其他问题。
性能指标:用于跟踪多智能体系统有效性。例如记录完成任务所用时间、单位时间内完成任务数量、智能体推荐准确率等。此信息有助识别改进空间并优化系统。
让我们探讨一些创建多智能体应用的具体模式,以下是一些值得考虑的有趣模式:
当你想创建一个支持多个智能体相互通信的群聊应用时,这种模式非常有用。典型用例包括团队协作、客户支持和社交网络。
在该模式中,每个智能体代表群聊中的一个用户,智能体间通过消息协议交换信息。智能体可以发送群聊消息、接收消息并回应其他智能体。
该模式可以通过集中式架构实现,所有消息通过中央服务器转发,也可通过分散式架构直接交换消息。

当你想创建一个支持多个智能体间交接任务的应用时,这种模式非常有用。
典型用例包括客户支持、任务管理和工作流程自动化。
在该模式中,每个智能体代表一个任务或工作流程中的某个步骤,智能体可根据预定规则将任务交接给其他智能体。

当你想创建一个多智能体协作向用户推荐内容的应用时,这种模式非常有用。
多智能体协作的理由在于,每个智能体具备不同专长,可以不同方式为推荐过程做出贡献。
以用户想获得股票市场最佳买入建议为例。

考虑客户申请产品退款的场景,可能涉及许多智能体,我们将其分为专门处理退款流程的智能体和可以用于其他业务部分的通用智能体。
专门处理退款流程的智能体:
可能涉及的退款流程智能体包括:
通用智能体:
这些智能体可被你业务的其他部分使用。
前文列举相当多的智能体,涵盖退款流程具体智能体及可用于业务其他部分的通用智能体。希望这能帮助你理解如何确定多智能体系统中使用哪些智能体。
设计一个客户支持流程的多智能体系统。识别该流程涉及的智能体、它们的角色和职责,以及它们如何相互协作。考虑既有客户支持流程专用智能体,也有可用于业务其他部分的通用智能体。
在阅读以下解决方案之前先思考一下,你可能需要的代理比你想象的要多。
提示:考虑客户支持流程的不同阶段,并且考虑任何系统所需的代理数量。
哪种情境最适合多代理系统?
什么时候单个代理通常是更好的选择?
在本课中,我们了解了多代理设计模式,包括多代理适用的场景、使用多代理相比单一代理的优势、实现多代理设计模式的构建模块,以及如何洞察多个代理之间的交互。
加入 Microsoft Foundry Discord 与其他学习者交流,参加答疑时间,获取你的 AI 代理相关问题的解答。
免责声明: 本文件由 AI 翻译服务 Co-op Translator 翻译完成。尽管我们力求准确,但请注意,自动翻译可能包含错误或不准确之处。原始语言版文件应视为权威来源。对于重要信息,建议使用专业人工翻译。我们对因使用本翻译而产生的任何误解或误释不承担责任。