Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

README.md

🏢 MetaGPT — SOP 驱动的软件公司模拟器

GitHub | 文档 | Stars: 48k+ | 语言: Python

一句话概述

MetaGPT 让多个 Agent 模拟软件公司的角色(产品经理、架构师、工程师、QA),按照标准化流程(SOP) 从一句话需求自动生成完整软件。


🏗️ 核心架构

用户需求: "开发一个贪吃蛇游戏"
         │
    ┌────▼─────┐
    │ 产品经理  │ → 输出: PRD(产品需求文档)
    └────┬─────┘
         │
    ┌────▼─────┐
    │  架构师   │ → 输出: 系统设计 + 数据结构
    └────┬─────┘
         │
    ┌────▼─────┐
    │  工程师   │ → 输出: 代码实现
    └────┬─────┘
         │
    ┌────▼─────┐
    │  QA 工程师│ → 输出: 测试用例 + 测试报告
    └──────────┘

核心理念SOP(标准作业流程)> 自由对话。每个角色有明确的输入/输出规范。


🎯 核心概念

概念 说明
Role 角色定义(产品经理、架构师、工程师等)
Action 角色的具体行为(撰写 PRD、写代码等)
Message 角色之间传递的结构化消息
Environment 共享的执行环境
SOP 标准化流程定义

🚀 快速入门

pip install metagpt
import asyncio
from metagpt.software_company import generate_repo

async def main():
    await generate_repo(
        idea="开发一个命令行天气查询工具,支持输入城市名获取天气",
        investment=5.0,  # 最大投入(美元,控制 token 消耗)
        n_round=5        # 最大交互轮数
    )
    # 自动生成:
    # 1. docs/prd.md — 产品需求文档
    # 2. docs/system_design.md — 系统设计
    # 3. workspace/ — 完整代码
    # 4. tests/ — 测试用例

asyncio.run(main())

✅ 优势

  1. 结构化输出 — SOP 保证每一步都有明确的交付物
  2. 端到端 — 从需求到代码全自动
  3. 48k+ Stars — 社区认可度高
  4. 可复现 — 相同输入倾向于产生相似输出
  5. 适合教学 — 直观理解多 Agent 协作

❌ 劣势

  1. 场景单一 — 主要面向软件开发流程
  2. 灵活性低 — SOP 是固定的,难以自定义
  3. 生成质量 — 复杂项目的代码质量参差不齐
  4. Token 消耗 — 全流程跑一遍费用不低

🎯 适用场景

适合 不适合
快速生成 MVP 原型 需要高度定制化的工作流
教学演示多 Agent 协作 非软件开发场景
需求明确的小项目 大型复杂项目
了解 Agent 协作模式 需要实时交互的场景