Skip to main content

One post tagged with "思考"

View All Tags

· 15 min read
Chi Wang

代理

简介

  • AutoGen 代理统一了不同的代理定义。
  • 当讨论多个代理和单个代理时,有必要澄清我们是指界面还是架构。

我经常被问到两个常见的问题:

  1. 什么是代理?
  2. 多个代理和单个代理的优缺点是什么?

这篇博客收集了我在几次面试和最近的学习中的思考。

什么是代理?

有许多不同类型的代理定义。在构建 AutoGen 时,我正在寻找能够包含所有这些不同类型定义的最通用概念。为了做到这一点,我们真的需要思考所需的最小概念集。

在 AutoGen 中,我们将代理视为能够代表人类意图行动的实体。它们可以发送消息、接收消息,在采取行动后响应其他代理并与其他代理进行交互。我们认为这是代理需要具备的最小能力集。它们可以具有不同类型的后端来支持它们执行操作和生成回复。一些代理可以使用 AI 模型生成回复。其他一些代理可以使用函数来生成基于工具的回复,还有一些代理可以使用人类输入作为回复其他代理的方式。您还可以拥有混合这些不同类型后端的代理,或者拥有在多个代理之间进行内部对话的更复杂的代理。但在表面上,其他代理仍然将其视为单个实体进行通信。

根据这个定义,我们可以包含既可以解决简单任务的非常简单的代理,也可以由多个更简单的代理组成的代理。可以递归地构建更强大的代理。AutoGen 中的代理概念可以涵盖所有这些不同的复杂性。

多个代理和单个代理的优缺点是什么?

这个问题可以以各种方式提出。

为什么我应该使用多个代理而不是单个代理?

当我们没有一个强大的单个代理时,为什么要考虑多个代理?

多个代理是否增加了复杂性、延迟和成本?

什么时候应该使用多个代理而不是单个代理?

当我们使用“多个代理”和“单个代理”这两个词时,我认为至少有两个不同的维度需要考虑。

  • 界面。这意味着从用户的角度来看,他们是在单个交互点与系统交互,还是明确地看到多个代理在工作并且需要与多个代理进行交互?
  • 架构。在后端是否有多个代理在运行?

一个特定的系统可以具有单个代理界面和多个代理架构,但用户不需要知道这一点。

界面

单个交互点可以使许多应用的用户体验更加简单和直观。 更直接。但也有一些情况下它并不是最佳解决方案。例如,当应用程序涉及多个代理人就某个主题进行辩论时,用户需要看到每个代理人的发言。在这种情况下,实际上看到多个代理人的行为对他们是有益的。另一个例子是社会模拟实验:人们也希望看到每个代理人的行为。

架构

与单个代理人系统相比,多代理人架构的设计更易于维护、理解和扩展。即使对于基于单个代理人的界面,多代理人的实现也可以使系统更模块化,使开发人员更容易添加或删除功能组件。非常重要的一点是要认识到,多代理人架构是构建单个代理人的一种好方法。虽然不明显,但它源于马文·明斯基在1986年提出的心智社会理论。从简单的代理人开始,人们可以有效地组合和协调它们,展示出更高层次的智能。

我们还没有一个能够做到我们想要的一切的好的单个代理人。为什么呢?这可能是因为我们还没有找到合适的方式来组合多个代理人以构建这个强大的单个代理人。但首先,我们需要有一个框架,可以方便地对这些不同的模型和代理人组合方式进行实验。例如,

根据我的经验,如果人们使用多代理人来解决问题,他们通常能更快地找到解决方案。我对他们能够找到一种稳健的方式来构建一个复杂、多方面的单个代理人抱有很高的期望,通过这种方式。否则,构建这个单个代理人的可能性太多了。如果没有良好的模块化,系统很容易达到复杂性的极限,同时保持易于维护和修改。另一方面,我们 不必止步于此。我们可以将多智能体系统视为增加单个智能体能力的一种方式。我们可以将它们与其他智能体连接起来,以实现更大的目标。

多智能体的好处

多智能体系统有至少两种应用受益。

  • 单智能体接口。 开发人员经常发现他们需要通过不同的功能、工具等来扩展系统。如果他们使用多智能体架构来实现单个智能体接口,通常可以增加处理更复杂任务的能力或提高响应的质量。一个例子是复杂的数据分析。它通常需要不同角色的智能体来解决任务。一些智能体擅长检索数据并呈现给其他智能体。其他一些智能体擅长运行深度分析并提供洞察。我们还可以有能够批评并提出更多行动建议的智能体。或者能够进行规划等的智能体。通常,为了完成复杂任务,可以构建具有不同角色的这些智能体。

一个真实世界的生产用例:

如果你不了解Chi Wang和微软研究的工作,请查看一下。我想给出一个Skypoint AI平台客户Tabor AI的真实世界生产用例https://tabor.ai AI Copilot for Medicare brokers - 每年为老年人选择健康计划(美国有6500万老年人每年都要做这个任务)是一项繁琐且令人沮丧的任务。这个过程以前需要人工研究几个小时才能完成,现在借助AI智能体只需5到10分钟,而且不会影响结果的质量或准确性。看到智能体在零售购物等方面的表现是很有趣的,因为准确性并不是那么关键。在医疗保健、公共部门、金融服务等受监管行业使用AI则是一种不同的情况,这是Skypoint AI平台(AIP)的重点。

Tisson Mathew, Skypoint首席执行官

  • 多智能体接口。例如,国际象棋游戏需要至少两个不同的玩家。足球比赛涉及更多的实体。多智能体辩论和社会模拟也是很好的例子。

leadership

多智能体的成本

具有领先边界模型的非常复杂的多智能体系统是昂贵的,但与让人类完成相同任务相比,它们可以更加经济高效。

虽然运营成本不低,但我们在BetterFutureLabs的多智能体驱动的风险分析系统比人类分析师进行相同深度分析的成本更加经济高效,速度更快。

Justin Trugman, BetterFutureLabs联合创始人兼技术负责人

相比使用单个智能体,使用多个智能体是否总是会增加成本、延迟和失败的机会?这取决于多智能体系统的设计方式,而且令人惊讶的是,答案实际上可能相反。

  • 即使单个智能体的性能足够好,您可能还希望让这个单个智能体教授一些相对便宜的智能体,以便它们可以以较低的成本变得更好。EcoAssistant 是将 GPT-4 和 GPT-3.5 智能体结合起来的一个很好的例子,可以在降低成本的同时提高性能,甚至比使用单个 GPT-4 智能体还要好。

  • 最近的一个应用案例报告称,有时使用便宜模型的多个智能体可以胜过使用昂贵模型的单个智能体:

我们在塔夫茨大学的研究小组继续在解决学生从本科到研究生课程转变时面临的挑战方面取得重要进展,特别是在医学院的物理治疗博士课程中。在数据密集研究中心(DISC)的持续支持和与微软的Chi Wang团队的合作下,我们现在正在利用StateFlow与Autogen来创建更加有效的根据课程内容定制的评估。这种基于状态的工作流方法与我们现有的使用多个智能体进行顺序聊天、可教授智能体和轮流辩论格式的工作相辅相成... 通过结合StateFlow和多个智能体,可以在使用更具成本效益的语言模型(GPT 3.5)的同时保持高质量的结果/输出。这种成本节约,加上我们结果的增加相关性和准确性,真正展示了Autogen在开发高效可扩展的教育解决方案方面的巨大潜力,可以适应各种情境和预算。

Benjamin D Stern, MS, DPT, 助理教授, 物理治疗博士课程, 塔夫茨大学医学院

  • AutoDefense 表明使用多个智能体可以降低遭受越狱攻击的风险。

当然,这样做也存在一些权衡。多个智能体的大设计空间提供了这些权衡,并为优化开辟了新的机会。

自从AT&T推出了Ask AT&T这个生成式AI平台,我们已经吸引了超过80,000名用户。AT&T一直在通过引入“AI Agents”来增强其功能。这些由微软的Autogen框架驱动的智能体旨在解决传统语言模型难以处理的复杂工作流和任务。为了推动协作,AT&T正在通过引入促进增强安全性和基于角色的访问权限的功能,为各种项目和数据做出贡献,回馈开源项目。

Andy Markus, AT&T首席数据官

观看/阅读采访/文章

您觉得这个笔记有帮助吗?您想分享您的想法、用例和发现吗?请加入我们的Discord服务器进行讨论。

致谢

本博文根据Wael KarkoubMark SzeJustin TrugmanEric Zhu的反馈进行了修订。