🌟 The Multi-Agent Framework: First AI Software Company, Towards Natural Language Programming https://atoms.dev/
Find a file
2023-07-01 23:26:22 +08:00
config init project 2023-06-30 17:10:48 +08:00
examples init project 2023-06-30 17:10:48 +08:00
metagpt init project 2023-06-30 17:10:48 +08:00
resources init project 2023-06-30 17:10:48 +08:00
scripts init project 2023-06-30 17:10:48 +08:00
tests trying to fix tests 2023-07-01 23:26:22 +08:00
.coveragerc init project 2023-06-30 17:10:48 +08:00
.gitignore init project 2023-06-30 17:10:48 +08:00
CITATION.cff Create CITATION.cff 2023-06-30 18:00:20 +08:00
LICENSE Create LICENSE 2023-06-30 17:58:37 +08:00
README.md refine README 2023-07-01 08:30:39 +08:00
README_CN.md refine README 2023-07-01 08:29:28 +08:00
requirements.txt fix requirements.txt 2023-06-30 18:51:35 +08:00
setup.py init project 2023-06-30 17:10:48 +08:00
startup.py init project 2023-06-30 17:10:48 +08:00

MetaGPT: The Multi-Role Meta Programming Framework

English / 中文

Currently, we have managed to enable GPT to work in software company, collaborating to tackle more complex tasks.

  1. The team can handle Boss's one line Requirement cooperate and generate user stories / competetive analysis / requirements / data structures / apis / files etc.
  2. The team consists of product manager / architect / project manager / engineer, it provides the full process of a software company.

A software company consists of LLM-based roles

Examples (fully generated by GPT-4)

For example, if you type python startup.py "Design a RecSys like Toutiao", you would get many outputs, one of them is data & api design

Jinri Toutiao Recsys Data & API Design

It requires around $0.2 (GPT-4 api's costs) to generate one example with analysis and design, around $2.0 to a full project.

Installation

# Step 1: Ensure that Python 3.9+ is installed on your system. You can check this by using:
python --version

# Step 2: Ensure that NPM is installed on your system. You can check this by using:
npm --version

# Step 3: Clone the repository to your local machine, and install it.
git clone https://github.com/geekan/metagpt
cd metagpt
python setup.py install

Configuration

  • Configure your OPENAI_API_KEY in any of config/key.yaml / config/config.yaml / env
  • Priority order: config/key.yaml > config/config.yaml > env
# Copy the configuration file and make the necessary modifications.
cp config/config.yaml config/key.yaml
Variable Name config/key.yaml env
OPENAI_API_KEY # Replace with your own key OPENAI_API_KEY: "sk-..." export OPENAI_API_KEY="sk-..."
OPENAI_API_BASE # Optional OPENAI_API_BASE: "https://<YOUR_SITE>/v1" export OPENAI_API_BASE="https://<YOUR_SITE>/v1"

Tutorial: Initiating a startup

python startup.py "Write a cli snake game"

After running the script, you can find your new project in the workspace/ directory.

Code walkthrough

from metagpt.software_company import SoftwareCompany
from metagpt.roles import ProjectManager, ProductManager, Architect, Engineer

async def startup(idea: str, investment: str = '$3.0', n_round: int = 5):
    """Run a startup. Be a boss."""
    company = SoftwareCompany()
    company.hire([ProductManager(), Architect(), ProjectManager(), Engineer()])
    company.invest(investment)
    company.start_project(idea)
    await company.run(n_round=n_round)

You can check examples for more details on single role (with knowledge base) and LLM only examples.

Demo

https://github.com/geekan/MetaGPT/assets/2707039/5e8c1062-8c35-440f-bb20-2b0320f8d27d