MetaGPT:多智能体协同框架

公众号:【可乐前端】,每天3分钟学习一个优秀的开源项目,分享web面试与实战知识,也有全栈交流学习摸鱼群,期待您的关注!

每天3分钟开源

hi,这里是每天3分钟开源,很高兴又跟大家见面了,今天介绍的开源项目简介如下:

仓库名:geekan/MetaGPT

项目名:MetaGPT

开源地址:https://github.com/geekan/MetaGPT

主要语言: Python

stars数量:37348

forks数量:4409

开源协议:MIT License

一句话介绍

这是一个将不同角色的GPTs赋予形成一个协作实体以完成复杂任务的多智能体框架。

详细描述

MetaGPT是一个多智能体框架,它将不同角色的GPTs赋予形成一个协作实体以完成复杂任务。

这个项目的目标是实现自然语言编程,通过分配不同的角色给GPTs,让它们能够协同工作,解决复杂的问题。

它支持多种编程语言,具有序列化、多语言和增量开发等实验性功能。

此外,MetaGPT被选为Open100:顶级100个开源成就之一,并在2023年8月连续第17次位居GitHub趋势月榜首位。

具体功能

MetaGPT能将一行需求作为输入,输出用户故事、竞品分析、需求、数据结构、API、文档等。

内部包括产品经理、架构师、项目经理、工程师等角色,提供软件公司的整个流程以及精心编排的SOPs。

它的核心理念是Code = SOP(Team),即将SOP具象化并应用到由LLMs组成的团队中。

如何使用

确保您的系统上安装了Python 3.9+,可以通过使用python --version来检查。

安装MetaGPT,可以使用如下命令:

conda create -n metagpt python=3.9 && conda activate metagpt
pip install --upgrade metagpt

或者从GitHub直接安装:

pip install --upgrade git+https://github.com/geekan/MetaGPT.git

或者克隆仓库后在仓库目录下安装:

git clone https://github.com/geekan/MetaGPT && cd MetaGPT && pip install --upgrade -e .

配置MetaGPT,可以运行以下命令初始化配置,或者手动创建~/.metagpt/config2.yaml文件:

metagpt --init-config  # it will create ~/.metagpt/config2.yaml, just modify it to your needs

然后根据示例和文档配置~/.metagpt/config2.yaml文件:

llm:
  api_type: "openai"  # or azure / ollama / open_llm etc. Check LLMType for more options
  model: "gpt-4-turbo-preview"  # or gpt-3.5-turbo-1106 / gpt-4-1106-preview
  base_url: "https://api.openai.com/v1"  # or forward url / other llm url
  api_key: "YOUR_API_KEY"

在安装完成后,你可以在命令行界面使用MetaGPT:

metagpt "Create a 2048 game"  # this will create a repo in ./workspace

或者作为库使用:

from metagpt.software_company import generate_repo, ProjectRepo
repo: ProjectRepo = generate_repo("Create a 2048 game")  # or ProjectRepo("<path>")
print(repo)  # it will print the repo structure with files

你也可以使用它的数据解释器:

import asyncio
from metagpt.roles.di.data_interpreter import DataInterpreter

async def main():
    di = DataInterpreter()
    await di.run("Run data analysis on sklearn Iris dataset, include a plot")

asyncio.run(main())  # or await main() in a jupyter notebook setting

更多详细的使用指南和开发指南,请参考 在线文档

最后

感谢您的阅读,这里每天都会推送优秀的开源项目,如果觉得有帮助的话,一键三连一下吧~

### 智能框架的介绍与实现 智能框架是支持多智能体系统开发和运行的基础架构,其设计目标是提供灵活、高效且可扩展的工具集,以满足不领域的需求。以下是几个典型的智能框架及其核心特点: #### 1. 多智能体系统的应用背景 多智能体系统在个领域中得到了广泛应用,包括但不限于自动化控制系统、机器人技术、智慧交通、经济模型分析、社会动力学研究以及分布式计算等[^1]。这些系统中的智能体既可以是物理实体(如无人机或机器人),也可以是虚拟代理(如软件代理或游戏AI)。 #### 2. Mora:视频生成的多智能体框架 Mora 是一个专注于视频生成任务的多智能体框架,其核心思想是通过智能体协工作来完成复杂的视频生成任务。具体来说: - **场景智能体**:负责生成视频的背景和环境。 - **动作智能体**:专注于角色运动和行为的生成。 - **细节智能体**:优化视频的细节和特效[^2]。 这种分工明确的设计使得 Mora 能够高效地处理大规模视频生成任务,时保持高质量的输出。 #### 3. Eko:跨平台智能框架 Eko 是一个创新的智能框架,具有以下显著特点: - **混合智能体表示**:结合自然语言和编程语言,为开发者提供更高的灵活性。例如,可以通过自然语言描述智能体的目标,时使用 JavaScript 等语言进行功能实现[^3]。 - **跨平台能力**:基于通用核心、环境特定工具和环境桥接三层架构,Eko 能够在不平台上稳定运行,并实现数据共享。 - **生产级干预机制**:允许开发者或管理员对智能体工作流进行手动或自动干预,从而应对异常情况并保障系统的可靠性。 - **视觉-交互要素联合感知框架(VIEP)**:通过结合视觉识别和元素上下文信息,优化了网页自动化任务的成功率。 #### 4. MetaGPT多智能体协作框架 MetaGPT 是一个基于大语言模型的多智能体协作框架,模拟人类团队的工作模式。其主要特点包括: - **多智能体协作**:赋予不智能体特定角色(如产品经理、工程师、测试员等),并通过标准化流程(SOP)实现高效的团队协作。 - **动态交互**:支持智能体间的信息共享与实时交互,提升任务执行的效率和可靠性[^4]。 #### 5. CrewAI:结合 Qwen2.5-Coder 的智能编程框架 CrewAI 是一个结合 Qwen2.5-Coder 模型的多智能体框架,专门用于智能编程系统的开发。其实现过程包括以下几个方面: - **本地部署**:将 Qwen2.5-Coder 模型部署到本地环境,并进行简单的功能验证。 - **多智能体设计**:定义不智能体角色(如需求分析师、程序员、测试员等),并分配相应的任务。 - **代码生成与验证**:通过 CrewAI 框架生成程序代码,并验证其功能是否符合预期[^5]。 #### 示例代码:CrewAI 智能体角色定义 以下是一个基于 CrewAI 的智能体角色定义示例: ```python class CrewAI: def __init__(self, role): self.role = role def execute_task(self, task): if self.role == "analyst": return f"Analyst is analyzing the requirement: {task}" elif self.role == "programmer": return f"Programmer is writing code for: {task}" elif self.role == "tester": return f"Tester is verifying the functionality of: {task}" # 创建智能体实例 analyst = CrewAI("analyst") programmer = CrewAI("programmer") tester = CrewAI("tester") # 执行任务 print(analyst.execute_task("Login module")) # Analyst is analyzing the requirement: Login module print(programmer.execute_task("Login module")) # Programmer is writing code for: Login module print(tester.execute_task("Login module")) # Tester is verifying the functionality of: Login module ``` ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值