MetaGPT是由来自中国和美国大学的研究人员团队开发的基于LLM的元编程框架,旨在通过利用人类过程知识来增强多代理系统的协作能力,提高鲁棒性,减少错误,并为复杂任务设计软件解决方案。
“在这项工作中,我们介绍了MetaGPT,一种利用SOP(标准操作规程)来协调基于LLM的多代理系统的元编程技术。SOP作为我们组织多代理协作的策略,提高了协作的效率。”
MetaGPT采用一行需求,并构建用户故事、竞争分析、需求、数据结构、API等文档。它通过复制软件公司的结构来实现这一目标。研究人员展示了一个演示,他们要求MetaGPT创建一个命令行式的二十一点游戏,并让它生成包括需求、测试以及游戏的Python实现在内的所有所需工件。
MetaGPT的核心思想是将标准化操作规程(SOP)编码到提示中,以复制协作任务所需的高效过程知识。敏捷宣言以及其他分配任务和责任的方法是软件领域中SOP的例子,研究人员指出,包括定义期望的输出,如高质量的需求文档、设计工件、流程图和界面规范。
类似地,SOP使用基于角色的操作规范,并共享环境,使它们能够主动观察彼此并检索相关信息,与通过对话被动地接收数据相比,这是一种更高效的方法,研究人员说道。例如,MetaGPT将其代理组织成产品经理、架构师、项目经理和工程师。
上图显示了定义MetaGPT架构的两个主要层:基础组件层和协作层。前者允许代理执行其操作,而后者通过知识共享和工作流封装促进代理协作。
MetaGPT并不是唯一的用于协作AI代理的元编程框架,旨在通过某种任务分解实现协作。现有的框架包括AutoGPT、LangChain和AgentVerse。根据MetaGPT团队的说法,他们的框架可以处理更高级别的软件复杂性,并达到100%的任务完成率。
MetaGPT与AI协作并不是一个完善的系统,仍然需要解决LLM系统的幻觉倾向问题,例如MetaGPT引用不存在的资源文件,或调用未定义或未导入的类或变量。