MetaGPT:这是目前最好的多智能体框架吗?
人工智能革命是我们不能低估的。对于人工智能,有各种不同的反应,反对者说人工智能可能变得过于强大,人类将无法控制它。还有一群人认为人工智能将夺走他们的工作。
另一方面,我们有一派人已经利用人工智能来提高生产效率和效率。电子商务平台一直在利用人工智能研究消费者行为。
最近,我们看到了一些能够帮助用户通过几个提示生成代码、生成营销文案、解释代码,并以高精度生成图像、视频和缩略图的人工智能产品。
每天都有新产品被创造出来,metagpt是其中一个新进入者,已经引起了轰动。
metagpt 是什么?
metagpt是一个多智能体框架,它接收一行输入并生成api、用户故事、数据结构、竞争分析等。gpt是generative pretrained transformers的缩写。
metagpt框架可以作为产品经理、软件工程师和架构师。这个框架可以通过一行代码来充当整个软件公司并进行有序的sop(标准操作规程)。
metagpt与人类sop流程设计相结合。因此,基于llm的智能体生成高质量、多样化、结构化的文档和设计。metagpt的设计使得解决复杂任务变得容易,并提供几乎与人类智能相媲美的问题解决能力。
这个框架有两个不同的层次:基础组件层和协作层。
基础组件层包含了每个智能体操作所需要的所有构建块。这些构建块包括环境、内存、角色、动作和工具。
- 环境允许共享通信和工作空间
- 角色定义领域特定的工作流和技能
- 工具提供常见的实用工具和服务
- 动作负责处理子任务
协作层建立在基础组件层之上。这一层协调不同的智能体合作解决复杂问题。在这一层,sop将任务分解为小而可管理的组件,将它们分配给合适的智能体,并监督它们的执行,以确保遵循所有指导方针。这一层还确保不同的智能体共享和交换数据,创建一个共享的知识库。
使用 metagpt 的优势
我们已经有了数百种人工智能工具。那么 metagpt 有什么特别之处呢?这是使用 metagpt 的优势:
- 自动化软件开发过程: metagpt自动化了大部分的代码生成过程,使开发人员有更多时间专注于战略和创意任务。
- 预训练语言理解: metagpt基于多个已经训练完成以执行不同任务的gpt。
- 能够生成创意程序: metagpt框架帮助用户通过少量命令生成完全功能的应用程序。
- 能够改进现有程序: 该框架可以学习现有程序、增加新功能,甚至减少非必要的代码。
- 能够促进沟通: metagpt使不同团队成员能够更好地合作和沟通,共同实现共同的目标。
metagpt是如何工作的?
metagpt使用不同的代理(gpts)来处理请求。假设您想创建一个可以转录音乐的应用程序。metagpt将查看提示,确定最适合的gpt,并为它们分配不同的任务。然后,该框架将将工作分成小块,并分配给整个过程中进行通信的不同代理。
根据其github页面上的数据,使用设计和分析生成一个示例的成本约为0.2美元(使用gpt-4 api费用)。如果您想要一个完整的项目,需要大约2美元。这就是metagpt在内部的工作方式;
- 用户定义软件需求: 用户根据所需构建的应用程序类型编写说明。例如,您可以指示该框架构建一个带有管理控制面板和用户的酒店预订应用。
- metagpt确定正确的gpt: metagpt与不同的gpt一起工作。例如,您可以有不同的gpt生成图像,而其他gpt生成代码。
- gpt处理输入: 在确定正确的gpt之后,该框架将基于预训练数据生成输出。
- 用户审核输出: metagpt将根据输入处理输出。作为用户,您可以审核它们以确定是否符合您的需求。
- metagpt改进输出: 如果输出仍然缺少某些功能,您可以指示该框架对其进行改进,直到满意为止。
开始使用metagpt
既然您已经了解了metagpt的工作原理,现在是时候了解如何运行它了。在开始之前,需要满足以下先决条件:
- 在本地计算机上安装node。您可以使用以下命令检查它是否已安装:
node –version
如果已安装,您将得到类似于此输出。
如果没有安装,您可以下载node。
- python版本需在3.9以上
如果您正在使用ubuntu,则可以使用python3 --version
命令,如果运行在windows或macos上,则使用python --version
命令来检查python是否已安装。
如果python已经安装,您将会看到类似于此的输出:
node.js默认安装了npm。现在,您可以使用以下命令安装mermaid-js:
sudo npm install -g @mermaid-js/mermaid-cli
最后一步是将metagpt存储库克隆到您的本地计算机。使用以下命令:
git 克隆 https://github.com/geekan/metagpt
cd metagpt
python setup.py 安装
metagpt的用途是什么?
根据metagpt创建者发布的一篇研究论文,您可以将这个框架用于各种任务。以下是一些最佳用途;
构建游戏
您可以创建不同的游戏,从贪吃蛇、飞翔的小鸟到打砖块游戏。给metagpt一些提示,开始玩您喜爱的游戏。
转录音乐
您可以使用metagpt构建一个将乐谱转录为数字格式的应用程序。
定制新闻稿
用户可以编写一个python脚本,从社交平台和网站上收集公司的数据,并使用收集到的数据创建定制新闻稿。
metagpt的适应性如何提升多代理模拟的复杂性
模拟是使用模型模拟现实情况进行的虚拟实验,用于预测和分析。metagpt具有适应性,使得创建复杂而真实的代理行为变得容易。该框架可以从大量数据中学习,并生成可能在真实世界中发生的行为。
metagpt还被编程用于分析和理解环境的物理属性以及它们对代理的影响。这一特性使得该框架能够轻松创建逼真且难以预测的模拟。
将metagpt与其他替代方案进行比较
metagpt并不是唯一利用各种gpt的框架。一些流行的替代方案包括python read-eval-print loop(repl)、langchain、autogpt和agentverse。我们可以从以下几个方面将metagpt与这些框架进行比较;
- 代码生成:所有列出的工具都能生成代码。metagpt的唯一区别是它提供了完整的项目执行和管理工具包。
- 代码审查:agentverse和metagpt是仅有的具有代码审查功能的框架。然而,metagpt更进一步,引入了预编译执行功能,使得早期检测错误变得容易。
- api生成:基于我们提到的这些替代方案的特点,metagpt是唯一提供api生成功能的框架。这个功能使得在软件开发过程中快速原型化api变得容易。
- 协作:agentverse和metagpt都支持基于角色的协作。这个功能鼓励多代理管理和协作。
metagpt的限制
尽管metagpt提供了无尽的可能性,但它在以下方面也存在一些局限性;
- 仍在开发中:仔细查看项目的github页面可以看出,它仍在积极开发中。该项目尚未完美,但我们只能等待并观察它在未来会有怎样的发展。
- 不适用于复杂项目:metagpt是一个适用于基本应用程序的良好框架。然而,在处理包含大量数据的复杂项目时,您需要大量的人工输入。
- 受训练数据的限制:生成模型只能生成它们所训练的数据。metagpt所基于的gpt模型必须经常更新以提高准确性。
常见问题
使用metagpt需要openai api密钥吗?
是的。metagpt是基于openai的api构建的。一旦您将metagpt安装/克隆到本地计算机上,您必须配置api密钥才能开始使用它。
metagpt有替代品吗?
有的。像python read-eval-print loop (repl),langchain,autogpt和agentverse这样的框架使用相同的设计原则。所有这些工具都具有代码生成功能,但在其他功能上有所不同。
metagpt是如何工作的?
该框架根据不同的代理的优势和培训为它们分配不同的任务。该平台允许这些代理协作并共享信息来应对来自一个工具的复杂挑战。
metagpt的成本是多少?
其github存储库表明,获取示例和分析将花费您高达0.2美元。另一方面,您需要高达2美元才能获得一个完全功能的应用程序。
谁可以使用metagpt?
metagpt充当一个完整的软件开发公司。因此,它可以被软件工程师、qa、产品设计师和产品经理使用。
结论
metagpt旨在通过角色定义、流程标准化和任务分解来管理多个代理。
metagpt有许多用途。例如,在软件开发中,您可以使用metagpt从头开始创建软件,改进现有软件,生成用户故事并提高协作能力。
目前还为时过早来得出metagpt是否是最佳多代理框架的结论。尽管该产品仍在开发中,但已被证明是软件开发生命周期的好工具。
您还可以阅读如何在几分钟内安装auto-gpt。