作者 | 王瑞平
如今,伴随着大语言模型技术的不断成熟,专业人员开始致力于用它构建智能体,但却始终停留在执行简单任务的层面,缺少深入挖掘复杂任务的功能。这也是由于之前的大语言模型会产生相应“幻觉”问题,从而阻碍了发展。
但是,Meta却打破了这个“魔咒”,开源了名为“MetaGPT”的框架,上线短短几周就已火爆全网,截至目前,已在Github上狂飙16.9k星,成为了Meta在人工智能界投下的又一枚重磅炸弹!
图片
从Github上的开源列表中不难看出,MetaGPT能抽象出不同角色,是一个集产品经理、架构师、项目经理、程序员于一体的AI工具。神奇的是,它能在代码生成时进行内部监督,从而提升最终输出的代码质量。
有了它,软件公司的研发工作流程将会被彻底改变;它不仅能帮助公司提升研发效率,还能降低研发成本。
因此,开发者普遍表示:“该模型在‘模拟现实软件开发过程’中能提供更多的变量、监督效果更佳,相较于竞品生成的输出结果也更具有优势。”
1、多智能体元编程框架
简单来说,MetaGPT构建的多智能体元编程框架旨在将有效的人类工作流程作为元编程方法注入到由LLM驱动的多智能体协作中。模型的编程框架正是基于ChatGPT和软件外包公司的SOP训练的!其中,Code=SOP(Team)是核心哲学。
软件公司多角色示意图(正在逐步实现)
如框架图所示,它能根据老板的“一句话”需求输出产品文档、架构设计、任务列表和代码等,可被看作是由大语言模型构成的虚拟团队。
图片
图片
官方文档中还展示出它的具体安装方法,在其中输入“python startup.py”,写个类似“今日头条”的推荐系统,将会获得一系列输出,包括:数据结构和API设计等。
至于费用方面,生成一个包含分析和设计的示例大约需要0.2美元(GPT-4 API的费用),而完成一个完整的项目大约需要2.0美元。
图:MetaGPT框架
ITBEAR上发布的科技信息也显示,MetaGPT模型可应用于各种开发任务。假如你需要构建一个算法推荐系统,模型可以分析系统的适用人群、列出适用人群特征并提出相应的功能需求,最后生成代码并验证。与传统的手动开发相比,它可以在短时间内更迅速地完成这些任务,从而降低开发成本。
这种结构化过程、代理协作和高级模型驱动技术的融合正在改变软件开发的前景。在此过程中,研究者做出的贡献主要包括:引入元编程框架、整合人工SOP流程设计、实现最先进的性能。
结果表明,MetaGPT有潜力解决LLM中的幻觉问题,从而指导LLM系统协同完成更有效的设计。
虽然这听上去效果不错,但却不能完全替代手工开发。开发者对于通用模型的输出结果还是要有心理预期,毕竟此类场景还是需要用专业的垂直领域知识训练效果才会更好!
2、全能:产品经理+架构师+项目经理+工程师
MetaGPT作为全能的AI工具,直接充当了产品经理、架构师、项目经理和工程师的角色,包揽了与开发相关的所有工作!主要功能是智能化生成代码,即,输入需求后“写出”完整代码。
具体来讲,无论是产品的PRD文档,还是项目架构分析,它都能完整的写出,还能提示你用的是哪种语言、哪个框架,最后自动生成相关流程图表,还真是有模有样!
而之前提及的GPT-Engineer只“扮演”了单一工程师的角色;MetaGPT却能扮演多个角色,这是最大的优势,就连服务器接口规范它都能完整列出,还能自动对代码逻辑进行分析,并提示你每个文件能用来做什么。
图片
有的网友好奇,便用它书写了命令行版的贪食蛇游戏,代码生成效果相当不错!蛇真的可以跑起来、吃豆子长尾巴、撞自己或撞墙后重置!
图片
此外,MetaGPT还可以在大约10分钟内构建出二十一点游戏,包括:代码、图表、评论和文档,所有这些都只需2美元,这近一步为AGI铺平了道路。
3、工程师:一行需求完成端到端开发过程
MetaGPT框架前途无量!当我们仔细审视模型内部时,会发现内部实际上就是一个完整的软件公司,由多个智能体协作完成复杂的软件问题。
具体来说,为了将Sop编码为提示符,MetaGPT通过角色定义、任务分解、过程标准化和其它技术设计,只用一行需求就能完成端到端开发过程。相关论文也已发表。
图片
实验结果也表明,MetaGPT可以产生更高级的综合解决方案。与现有会话和基于聊天的多代理系统相比,它的一致性更强。
最后,为证实设计的有效性,研究者展示出软件协同开发的工作流程,并进行了相关实验来验证相关代码的可行性。
在代码生成基准测试中,MetaGPT达到81.7%和82.3%的新高度。这意味着,与其它基于LLM的编程框架(如,AutoGPT、LangChain和AgentVerse)相比,MetaGPT可以处理更高级别的软件、解决复杂问题,也凭借其广泛的功能脱颖而出。
值得注意的是,在相关的实验评估中,MetaGPT达到了100%的任务完成率,进一步证实了MetaGPT框架的高效性。
总之,这项研究通过集成标准操作程序为基于LLM的多智能体系统概述了一个变革的范例。这将会为多智能体交互和相关合作开辟出新道路,不仅重新定义了人工智能,还指出通往AGI的道路。
4、局限性:无法处理复杂信息
然而,需要注意的是,MetaGPT有一些局限性:例如,它只能创建单页的应用程序,而不能处理复杂的信息,如,多页或数据库。因此,如果你的想法非常复杂,MetaGPT可能无法正确生成应用程序。
尽管有这些限制,MetaGPT仍有望成为创建简单应用程序的有效工具。此外,它的易用性可能对软件开发市场产生重大影响,从而减少对经验丰富程序员的需求。
参考资料:https://arxiv.org/pdf/2308.00352.pdf