1.metaGPT简介
MetaGPT 是一个基于大语言模型(如 GPT-4)的多智能体协作框架,旨在通过模拟人类团队的工作模式,让多个 AI 智能体分工合作,共同完成复杂的任务。它通过赋予不同智能体特定的角色(如产品经理、工程师、测试员等),并定义标准化的工作流程,显著提升了任务执行的效率和可靠性。
核心特点
- 多智能体协作
- 不同角色的智能体(如项目经理、开发工程师、设计师等)各司其职,协同完成任务。
- 支持智能体间的信息共享与动态交互,模拟真实团队协作。
- 标准化流程(SOP)
-
将任务分解为需求分析、设计、开发、测试等标准化步骤,减少大模型常见的逻辑错误或"幻觉"。
-
例如,开发软件时,产品经理先输出需求文档,工程师再编写代码,测试员验证功能。
- 领域专业知识嵌入
-
为智能体注入领域知识(如软件工程规范、金融分析模板),提升输出的专业性。
-
支持自定义角色知识库,适应不同垂直场景。
- 自动化工作流
-
从任务分配到最终交付实现全流程自动化,减少人工干预。
-
可处理代码生成、数据分析、文档撰写等复杂任务。
- 人类-AI 协同
- 允许人类介入关键节点(如审核设计文档),确保结果符合预期。
2. 环境安装和配置
首先要创建虚拟环境,请自行创建,但是要求python的版本>=3.9,<=3.11(2025年1月25日测试结果)
然后开始安装metagpt在官方教程中说到可以直接通过pip安装
bash
pip install metagpt
但是实际上这样可能回出现各种问题,我这里还是推荐开发模式安装,直接下载源码然后安装:
bash
git clone https://github.com/geekan/MetaGPT.git
cd /your/path/to/MetaGPT
pip install -e .
接下来需要配置你的大模型
在你拉取到的metagpt的源码文件夹下面有个config文件,里面有个config2.yaml文件,可以将你的大模型的相关配置方法这里:
bash
llm:
api_type: 'openai' # or azure / ollama / groq etc. Check LLMType for more options
api_key: 'sk-...' # YOUR_API_KEY
model: 'gpt-4-turbo' # or gpt-3.5-turbo
# base_url: 'https://api.openai.com/v1' # or any forward url.
# proxy: 'YOUR_LLM_PROXY_IF_NEEDED' # Optional. If you want to use a proxy, set it here.
# pricing_plan: 'YOUR_PRICING_PLAN' # Optional. If your pricing plan uses a different name than the `model`.
更多的配置请参考官方配置教程大模型配置
3.快速开始
接下来让我们来快速的试试metagpt可以实现什么功能
我们使用默认的角色
bash
import asyncio
from metagpt.roles import (
Architect,
Engineer,
ProductManager,
ProjectManager,
)
from metagpt.team import Team
async def startup(idea: str):
company = Team()
company.hire(
[
ProductManager(),
Architect(),
ProjectManager(),
Engineer(),
]
)
company.invest(investment=3.0)
company.run_project(idea=idea)
await company.run(n_round=5)
asyncio.run(startup(idea="开发一个网页端的刷题网站"))
直接运行上面的代码就可以得到完整的项目结构
但是目前似乎不能直接运行,会报一些错误,还有很大的优化空间,可能也和大模型的性能有关(这里用的glm-9b)