微信扫码
与创始人交个朋友
我要投稿
随着人工智能技术的飞速发展,大型科技公司正逐步迈向多代理AI时代。继OpenAI推出Swarm(OpenAI Swarm:探索多智能体(Agent)系统的新框架)之后,微软也紧随其后,研发出了Magnetic-One这一创新性多代理框架。作为AutoGen(大模型Agent实战:基于AutoGen的一些尝试)框架在生成式AI领域的一个扩展,Magnetic-One不仅巩固了微软在AI任务自动化领域的地位,更为企业和个人用户提供了高效、灵活且强大的解决方案。今天我们一起聊一聊Magnetic-One。
Magnetic - One 是微软开发的一款通用型多Agent系统,旨在处理跨多个领域的各种基于网络和文件的任务,其设计初衷是助力解决人们在日常工作和个人场景中面临的类似任务。它构建在微软的 AutoGen 框架之上,以开源的形式为开发者和研究人员提供了强大的工具。
多样化的默认代理
编排器代理(Orchestrator Agent):作为系统的核心组件,负责高级规划和任务管理。它不仅指挥其他代理工作,还跟踪任务进度,一旦进展停滞,能够重新规划任务。例如,在一个复杂的项目中,编排器代理可以根据任务的优先级和资源情况,合理分配任务给其他代理,并实时监控每个任务的执行情况,确保整个项目顺利推进。
专业代理(Specialized Agents)
网页浏览代理(WebSurfer):专注于管理网页浏览器,实现网页导航和交互功能。在需要获取网络信息、进行网页数据采集或在线交互的任务中,WebSurfer 能够发挥重要作用。比如,在市场调研任务中,它可以浏览相关行业网站,收集产品信息、竞争对手动态等数据。
文件管理代理(FileSurfer):主要负责本地文件的管理和导航。无论是查找特定文件、读取文件内容还是进行文件格式转换,FileSurfer 都能高效处理。在数据分析项目中,它可以快速定位并提取所需的数据文件,为后续分析提供数据支持。
编码代理(Coder):擅长编写和分析代码。无论是开发新的软件功能、优化现有代码还是进行代码审查,Coder 都具备专业能力。在软件开发过程中,Coder 可以根据任务需求编写高质量的代码,并对其他代理生成的代码进行分析和优化。
计算机终端代理(ComputerTerminal):提供控制台访问权限,用于执行程序和安装库。在需要进行系统级操作、运行命令行工具或部署软件的场景中,ComputerTerminal 不可或缺。例如,在搭建服务器环境时,它可以执行安装脚本、配置系统参数等操作。
灵活的工作流程
任务账本(Task Ledger):任务开始时,编排器代理创建或更新任务账本,记录已知事实、假设和任务计划等关键信息。这一过程就像是为整个任务绘制了一张详细的地图,明确了任务的起点、终点和中间步骤,为后续的任务执行提供了清晰的指导。
进度账本(Progress Ledger):在每个任务步骤中,编排器代理更新进度账本,用于检查任务完成情况、监控进度,并确定是否需要重新分配代理。通过实时更新进度账本,系统能够及时发现任务执行过程中的问题,如某个代理任务执行时间过长或出现错误,从而及时调整任务分配,确保任务顺利进行。
停滞检测(Stall Detection):若任务停滞超过两个周期,编排器代理将修订任务账本和计划。这种智能的停滞检测机制能够有效避免任务陷入死锁状态,保证系统的高效运行。例如,在一个数据处理任务中,如果某个环节的数据处理一直没有进展,编排器代理会及时介入,重新规划该环节的任务执行方式,或者更换执行该任务的代理。
代理协调(Agent Coordination):编排器代理将子任务分配给各个专业代理(Coder、ComputerTerminal、WebSurfer 和 FileSurfer),这些代理根据提供的指令执行任务。各代理之间相互协作,形成一个有机的整体,共同完成复杂任务。比如,在一个网站开发项目中,WebSurfer 负责收集网页设计素材,Coder 根据素材编写网页代码,FileSurfer 管理项目文件,ComputerTerminal 负责部署网站到服务器。
完成检查(Completion Check):一旦任务进度达到满意状态,系统将检查任务是否完成,并报告最终结果。这一环节确保了任务的准确性和完整性,为用户提供可靠的输出。
Magnetic - One 在性能评估方面表现出色,在与 GAIA、AssistantBench 和 WebArena 等先进基准的对比中展现出竞争力。它利用 AutoGenBench 进行严格评估,确保在各种复杂任务中都能保持可靠的性能。这意味着在实际应用中,无论是处理大规模数据、执行复杂的算法任务还是应对多步骤的业务流程,Magnetic - One 都能够提供稳定且高效的解决方案。
基于 AutoGen (大模型Agent实战:基于AutoGen的一些尝试)框架构建的 Magnetic - One 具有模块化和灵活性的特点。开发者可以轻松地添加或删除代理,而不会对整个系统造成干扰。这种设计不仅促进了代码的重用,还大大简化了开发过程。开源的特性使得全球的开发者社区能够共同参与到框架的改进和扩展中,加速技术的迭代和创新。
微软充分认识到代理系统可能带来的潜在风险,因此在 Magnetic - One 中实施了一系列安全措施。其中包括红队演练,通过模拟恶意行为来识别和防范潜在的安全漏洞。此外,系统在运行过程中鼓励人工监督,以最大程度地降低风险。这为用户在使用 Magnetic - One 处理敏感任务时提供了坚实的安全保障,确保数据和系统的安全可靠。
虽然 Magnetic - One 主要使用 GPT - 4o 为其代理提供支持,但它具有模型无关性,能够根据具体任务或成本约束整合各种不同的模型。这使得用户可以根据自身需求灵活选择最适合的模型,无论是追求高精度的模型还是考虑成本效益的模型,Magnetic - One 都能提供相应的支持,从而优化任务执行的性能。
AutoGen 作为一款已有的框架,在使用过程中可能不够直观。而 Magnetic - One 的出现正是为了解决这一问题,其设计更加注重用户体验,使得多代理的编排和任务管理更加便捷。例如,在任务定义和代理分配方面,Magnetic - One 提供了更清晰的界面和操作流程,降低了用户的学习成本。
基础架构:Magnetic - One 构建于 AutoGen 框架之上,借助 AutoGen 提供的底层架构实现多代理之间的通信与合作;而 AutoGen 本身是一个独立的框架,提供了更广泛的基础能力。
目的定位:Magnetic - One 是一个专门设计用于处理复杂多步骤任务的通用多代理系统,通过专业代理的协作完成任务;AutoGen 则更侧重于创建各种类型的 AI 代理,对任务执行的针对性不如 Magnetic - One 强。
代理结构:Magnetic - One 采用结构化的方法,由编排器代理管理四个专业代理协同工作;AutoGen 对其代理的架构没有如此明确的规定,开发者在使用 AutoGen 时需要自行设计和管理代理之间的协作关系。
评估工具:Magnetic - One 包含 AutoGenBench 这一专用评估工具,用于在 GAIA 和 AssistantBench 等基准上评估代理性能;AutoGen 虽然允许创建代理,但缺乏内置的性能评估工具,开发者需要自行构建或使用外部工具进行评估。
灵活性与适应性:Magnetic - One 的模块化架构使其在添加或删除代理时更加轻松,对整体性能影响较小,适应性更强;AutoGen 虽然具备基础能力,但在实现类似的灵活性时可能需要更多的手动调整。
模型无关性:两者都具有模型无关性,但 Magnetic - One 目前针对特定模型(如 GPT - 4o)进行了优化,并可根据任务需求集成其他语言模型;AutoGen 则更注重一般性地支持多种模型,对特定模型的优化相对较少。
Microsoft的Magnetic-One系统不仅是一次技术的变革,更是AI Agent(Multi-Agent架构:探索AI协作的新纪元)工作方式发展的重要里程碑。它以其强大的多代理协作机制、高效的任务管理能力以及卓越的自适应特性,为企业和个人用户提供了前所未有的解决方案。随着技术的不断进步和应用场景的不断拓展,Magnetic-One有望成为推动智能化进程不可或缺的力量。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-05-28
2024-04-26
2024-08-21
2024-04-11
2024-08-13
2024-07-09
2024-07-18
2024-10-25
2024-07-01
2024-06-17