Magentic-One:用于解决复杂任务的通用多代理系统
微软研究团队推出了一个新开发的多智能体系统——Magentic-One。这个系统能够解决各种领域的开放性网络和文件任务,是朝着开发能够完成人们在工作和生活中遇到的各种任务的智能体迈出的重要一步。他们还在微软的AutoGen框架上发布了Magentic-One的开源实现。
未来的AI将更加注重行动。AI系统正在从简单的对话转变为实际完成任务,这将是AI价值的真正体现。比如,从推荐晚餐选项的生成性AI,到能够自主下单和安排送餐的代理助手。从总结研究论文到积极搜索和整理相关研究以完成全面的文献综述。
现代AI智能体在软件工程、数据分析、科学研究和网络导航等领域表现出色。但要实现能够增强我们生产力和改变生活的代理系统,我们需要在通用代理系统上取得进步。这些系统必须能够在人们日常生活中遇到的各种场景中可靠地完成复杂的多步骤任务。
Magentic-One就是这样一个高性能的通用代理系统,它采用多智能体架构,由一个主导的智能体——协调器(Orchestrator)指挥其他四个智能体来完成任务。协调器负责规划、跟踪进度和从错误中恢复,同时指导专业智能体执行任务,比如操作网络浏览器、导航本地文件或编写和执行Python代码。
Magentic-One在多个具有挑战性的代理基准测试中达到了与最先进技术相竞争的性能,而且不需要修改其核心能力或架构。它建立在AutoGen框架上,模块化、多智能体的设计比单一智能体系统有许多优势。通过将不同的技能封装在不同的智能体中,它简化了开发和重用,类似于面向对象编程。Magentic-One的即插即用设计进一步支持了通过添加或移除智能体而无需重做整个系统的适应性和可扩展性。
他们将Magentic-One开源,供研究人员和开发人员使用。虽然Magentic-One显示出强大的通用能力,但它还远未达到人类水平的性能,并且可能会犯错。此外,随着代理系统变得更加强大,它们的风险——比如采取不受欢迎的行动或使恶意用例成为可能——也可能增加。虽然我们仍处于现代代理AI的早期阶段,但他们邀请社区帮助解决这些开放性挑战,确保我们未来的代理系统既有帮助又安全。为此,他们还发布了AutoGenBench,这是一个带有内置重复和隔离控制的代理评估工具,用于严格测试代理基准测试和任务,同时最小化不良副作用。
Magentic-One的工作基于一个多智能体架构,其中一个主导的协调器智能体负责高级规划、指导其他智能体执行子任务、跟踪整体进度,并在需要时采取纠正措施。协调器首先创建一个计划来解决任务,收集所需的事实和有根据的猜测,这些信息被维护在一个任务记录簿中。在计划的每一步中,协调器创建一个进度记录簿,其中它自我反思任务进度,并检查任务是否完成。如果任务尚未完成,它将分配Magentic-One的其他智能体之一来完成子任务。在被分配的智能体完成其子任务后,协调器更新进度记录簿,并以这种方式继续,直到任务完成。如果协调器发现进度在足够多的步骤中没有取得进展,它可以更新任务记录簿并创建一个新计划。这在上面的图中有所说明;协调器的工作因此被划分为一个外循环,它更新任务记录簿,和一个内循环来更新进度记录簿。
Magentic-One由以下智能体组成:
- 协调器(Orchestrator):主导智能体,负责任务分解、规划、指导其他智能体执行子任务、跟踪整体进度,并在需要时采取纠正措施。
- WebSurfer:基于LLM的智能体,擅长指挥和管理基于Chromium的网络浏览器的状态。对于每个请求,WebSurfer执行诸如导航(例如,访问URL、执行搜索)、与网页交互(例如,点击、输入)和阅读动作(例如,总结、回答问题)。然后它报告网页的新状态。WebSurfer依赖于浏览器的可访问性树和一组标记提示来执行其任务。
- FileSurfer:基于LLM的智能体,指挥一个基于Markdown的文件预览应用程序来读取本地文件。它还可以执行常见的导航任务,例如列出目录内容并导航它们。
- Coder:基于LLM的智能体,专门编写代码、分析从其他智能体收集的信息,并创建新的工件。
- ComputerTerminal:提供访问控制台shell以执行程序和安装新库。
Magentic-One的智能体为协调器提供了解决广泛开放性问题所需的工具和能力,并能够自主适应和在动态变化的网络和文件系统环境中行动。
虽然所有智能体默认使用的多模态LLM是GPT-4o,但Magentic-One是模型不可知的,允许集成不同的模型以支持不同的能力或满足不同的成本要求。例如,不同的LLM和SLM或专门版本可以为不同的智能体提供动力。对于协调器,他们推荐一个强大的推理模型,如GPT-4o。在不同的配置中,他们还尝试使用OpenAI o1-preview为协调器的外循环和Coder提供动力,而其他智能体继续使用GPT-4o。
为了严格评估Magentic-One的性能,他们引入了AutoGenBench,这是一个开源的独立工具,用于运行代理基准测试,允许重复和隔离,例如,控制随机LLM调用的方差和智能体在世界中采取行动的副作用。AutoGenBench促进了代理评估,并允许添加新的基准测试。使用AutoGenBench,我们可以在各种基准测试上评估Magentic-One。他们选择基准测试的标准是它们应该涉及复杂的多步骤任务,至少有一些步骤需要规划和工具使用,包括使用网络浏览器对真实或模拟网页采取行动。在这项工作中,他们考虑了满足这一标准的三个基准测试:GAIA、AssistantBench和WebArena。
在下面的图中,他们展示了Magentic-One在三个基准测试上的性能,并与单独运行的GPT-4以及每个基准测试的最高性能开源基线和非开源基准特定基线进行了比较,根据2024年10月21日的公共排行榜。Magentic-One(GPT-4o,o1)在GAIA和AssistantBench上达到了与以前SOTA方法统计上可比的性能,并在WebArena上具有竞争力的性能。请注意,GAIA和AssistantBench有一个隐藏的测试集,而WebArena没有,因此WebArena的结果是自我报告的。总之,这些结果确立了Magentic-One作为一个强大的通用代理系统,用于完成复杂任务。
代理系统,如Magentic-One,标志着与AI相关的机会和风险的重大转变。Magentic-One与为人类设计的数字世界互动,采取的行动可以改变状态,并可能导致不可逆转的后果。这些固有且不可否认的风险在他们测试期间是显而易见的,例如,在开发过程中,一个配置错误导致智能体反复尝试登录WebArena网站并失败。这导致账户被暂时暂停。然后智能体尝试重置账户密码。更令人担忧的是,智能体在被明确停止之前,试图通过在社交媒体上发帖、给教科书作者发电子邮件,甚至起草向政府实体提出信息自由请求来招募人类帮助。在每种情况下,智能体都因为缺乏所需的工具或账户,或因为人类观察者干预而未能成功。
与微软AI原则和负责任的AI实践一致,在部署Magentic-One之前努力识别、测量和减轻潜在风险。具体来说,他们进行了红队演习,以评估与有害内容、越狱和提示注入攻击相关的风险,发现他们的设计没有增加风险。此外,他们为安全使用Magentic-One提供了警告和指导,包括示例和适当的默认设置。建议用户保持人类在循环中进行监控,并确保所有代码执行示例、评估和基准测试工具都在沙箱化的Docker容器中运行以最小化风险。
他们建议在使用Magentic-One时使用具有强大对齐、预生成和后生成过滤以及在执行期间和执行后密切监控日志的模型。在我们自己的使用中,遵循最小权限和最大监督的原则。最小化与代理AI相关的风险将需要新的想法和广泛的研究,因为仍然需要大量的工作来理解这些新兴风险并开发有效的缓解措施。
展望未来,改善代理AI,特别是在安全和负责任的AI研究方面,有很多宝贵的机会。在公共网络上行动的代理可能容易受到网络钓鱼、社交工程和错误信息的威胁,就像人类用户一样。为了应对这些风险,一个重要的方向是为代理配备评估其行动可逆性的能力——区分那些容易逆转的、需要努力的和不可逆转的行动。像删除文件、发送电子邮件或提交表格这样的行动通常很难或不可能撤销。因此,系统应该被设计为在进行这些高风险行动之前暂停并寻求人类输入。
- 原文作者:BeanHsiang
- 原文链接:https://beanhsiang.github.io/post/2024-11-05-magentic-one-a-generalist-multi-agent-system-for-solving-complex-tasks/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议. 进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。