MetaGPT/README.md

151 lines
7.8 KiB
Markdown
Raw Normal View History

2023-07-23 11:50:24 +08:00
# MetaGPT: The Multi-Agent Framework
2023-06-30 17:10:48 +08:00
2023-07-03 15:16:37 +08:00
<p align="center">
<a href=""><img src="docs/resources/MetaGPT-new-log.png" alt="MetaGPT logo: Enable GPT to work in software company, collaborating to tackle more complex tasks." width="150px"></a>
2023-07-03 15:16:37 +08:00
</p>
2023-06-30 17:10:48 +08:00
2023-07-03 15:16:37 +08:00
<p align="center">
2024-01-18 23:34:46 +08:00
<b>Assign different roles to GPTs to form a collaborative entity for complex tasks.</b>
2023-07-03 15:16:37 +08:00
</p>
2023-07-03 14:28:09 +08:00
2023-07-03 15:16:37 +08:00
<p align="center">
2023-07-03 21:44:50 +08:00
<a href="docs/README_CN.md"><img src="https://img.shields.io/badge/文档-中文版-blue.svg" alt="CN doc"></a>
<a href="README.md"><img src="https://img.shields.io/badge/document-English-blue.svg" alt="EN doc"></a>
2023-07-07 00:35:52 +09:00
<a href="docs/README_JA.md"><img src="https://img.shields.io/badge/ドキュメント-日本語-blue.svg" alt="JA doc"></a>
<a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="License: MIT"></a>
2023-07-04 22:51:05 +08:00
<a href="docs/ROADMAP.md"><img src="https://img.shields.io/badge/ROADMAP-路线图-blue" alt="roadmap"></a>
2024-01-18 23:34:46 +08:00
<a href="https://discord.gg/DYn29wFk9z"><img src="https://dcbadge.vercel.app/api/server/DYn29wFk9z?style=flat" alt="Discord Follow"></a>
2023-10-04 23:58:38 +08:00
<a href="https://twitter.com/MetaGPT_"><img src="https://img.shields.io/twitter/follow/MetaGPT?style=social" alt="Twitter Follow"></a>
2023-07-03 15:16:37 +08:00
</p>
2023-06-30 17:10:48 +08:00
2023-08-09 20:54:53 -04:00
<p align="center">
<a href="https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/geekan/MetaGPT"><img src="https://img.shields.io/static/v1?label=Dev%20Containers&message=Open&color=blue&logo=visualstudiocode" alt="Open in Dev Containers"></a>
2023-08-12 00:26:52 -04:00
<a href="https://codespaces.new/geekan/MetaGPT"><img src="https://img.shields.io/badge/Github_Codespace-Open-blue?logo=github" alt="Open in GitHub Codespaces"></a>
<a href="https://huggingface.co/spaces/deepwisdom/MetaGPT" target="_blank"><img alt="Hugging Face" src="https://img.shields.io/badge/%F0%9F%A4%97%20-Hugging%20Face-blue?color=blue&logoColor=white" /></a>
2023-08-09 20:54:53 -04:00
</p>
2023-06-30 17:10:48 +08:00
2023-12-15 18:48:43 +08:00
## News
2024-01-18 23:07:43 +08:00
🚀 Jan. 16, 2024: Our paper [MetaGPT: Meta Programming for A Multi-Agent Collaborative Framework
](https://arxiv.org/abs/2308.00352) accepted for oral presentation **(top 1.2%)** at ICLR 2024, **ranking #1** in the LLM-based Agent category.
2024-01-18 23:07:43 +08:00
🚀 Jan. 03, 2024: [v0.6.0](https://github.com/geekan/MetaGPT/releases/tag/v0.6.0) released, new features include serialization, upgraded OpenAI package and supported multiple LLM, provided [minimal example for debate](https://github.com/geekan/MetaGPT/blob/main/examples/debate_simple.py) etc.
2024-01-18 23:07:43 +08:00
🚀 Dec. 15, 2023: [v0.5.0](https://github.com/geekan/MetaGPT/releases/tag/v0.5.0) released, introducing some experimental features such as **incremental development**, **multilingual**, **multiple programming languages**, etc.
2024-01-03 19:32:29 +08:00
2024-01-18 22:58:56 +08:00
🔥 Nov. 08, 2023: MetaGPT is selected into [Open100: Top 100 Open Source achievements](https://www.benchcouncil.org/evaluation/opencs/annual.html).
2024-01-03 19:32:29 +08:00
2024-01-18 22:58:56 +08:00
🔥 Sep. 01, 2023: MetaGPT tops GitHub Trending Monthly for the **17th time** in August 2023.
2023-09-14 13:01:35 +08:00
2024-01-18 22:58:56 +08:00
🌟 Jun. 30, 2023: MetaGPT is now open source.
2024-01-18 14:14:26 +08:00
2024-01-18 22:58:56 +08:00
🌟 Apr. 24, 2023: First line of MetaGPT code committed.
2024-01-18 23:34:46 +08:00
## Software Company as Multi-Agent System
1. MetaGPT takes a **one line requirement** as input and outputs **user stories / competitive analysis / requirements / data structures / APIs / documents, etc.**
2. Internally, MetaGPT includes **product managers / architects / project managers / engineers.** It provides the entire process of a **software company along with carefully orchestrated SOPs.**
1. `Code = SOP(Team)` is the core philosophy. We materialize SOP and apply it to teams composed of LLMs.
![A software company consists of LLM-based roles](docs/resources/software_company_cd.jpeg)
<p align="center">Software Company Multi-Agent Schematic (Gradually Implementing)</p>
2023-11-27 17:43:20 +08:00
## Install
2023-06-30 17:10:48 +08:00
2023-11-27 17:43:20 +08:00
### Pip installation
2023-06-30 17:10:48 +08:00
2024-02-01 11:21:32 +08:00
> Ensure that Python 3.9+ is installed on your system. You can check this by using: `python --version`.
> You can use conda like this: `conda create -n metagpt python=3.9 && conda activate metagpt`
2024-02-01 10:53:08 +08:00
2023-11-27 17:43:20 +08:00
```bash
2024-02-01 10:53:08 +08:00
pip install metagpt
2024-02-01 11:21:32 +08:00
metagpt --init-config # create ~/.metagpt/config2.yaml, modify it to your own config
metagpt "Create a 2048 game" # this will create a repo in ./workspace
2023-06-30 17:10:48 +08:00
```
2024-02-01 11:14:34 +08:00
or you can use it as library
```python
from metagpt.software_company import generate_repo, ProjectRepo
2024-02-01 11:21:32 +08:00
repo: ProjectRepo = generate_repo("Create a 2048 game") # or ProjectRepo("<path>")
2024-02-01 11:14:34 +08:00
print(repo) # it will print the repo structure with files
```
2023-12-17 15:01:54 +08:00
detail installation please refer to [cli_install](https://docs.deepwisdom.ai/main/en/guide/get_started/installation.html#install-stable-version)
2023-09-04 23:30:27 +08:00
2023-11-27 17:43:20 +08:00
### Docker installation
> Note: In the Windows, you need to replace "/opt/metagpt" with a directory that Docker has permission to create, such as "D:\Users\x\metagpt"
2023-07-18 23:35:38 +12:00
2023-07-10 16:54:17 +08:00
```bash
2024-01-31 23:13:38 +08:00
# Step 1: Download metagpt official image and prepare config2.yaml
2023-09-27 18:59:40 +08:00
docker pull metagpt/metagpt:latest
2023-07-18 23:57:22 +12:00
mkdir -p /opt/metagpt/{config,workspace}
2024-01-31 23:13:38 +08:00
docker run --rm metagpt/metagpt:latest cat /app/metagpt/config/config2.yaml > /opt/metagpt/config/config2.yaml
vim /opt/metagpt/config/config2.yaml # Change the config
2023-07-10 16:54:17 +08:00
# Step 2: Run metagpt demo with container
docker run --rm \
--privileged \
2024-01-31 23:13:38 +08:00
-v /opt/metagpt/config/config2.yaml:/app/metagpt/config/config2.yaml \
2023-07-18 23:57:22 +12:00
-v /opt/metagpt/workspace:/app/metagpt/workspace \
2023-09-27 18:59:40 +08:00
metagpt/metagpt:latest \
2024-02-01 10:53:08 +08:00
metagpt "Create a 2048 game"
2023-07-10 16:54:17 +08:00
```
2023-12-17 15:01:54 +08:00
detail installation please refer to [docker_install](https://docs.deepwisdom.ai/main/en/guide/get_started/installation.html#install-with-docker)
2023-06-30 17:10:48 +08:00
2023-11-27 17:43:20 +08:00
### QuickStart & Demo Video
- Try it on [MetaGPT Huggingface Space](https://huggingface.co/spaces/deepwisdom/MetaGPT)
- [Matthew Berman: How To Install MetaGPT - Build A Startup With One Prompt!!](https://youtu.be/uT75J_KG_aY)
- [Official Demo Video](https://github.com/geekan/MetaGPT/assets/2707039/5e8c1062-8c35-440f-bb20-2b0320f8d27d)
2023-11-27 17:43:20 +08:00
https://github.com/geekan/MetaGPT/assets/34952977/34345016-5d13-489d-b9f9-b82ace413419
2023-07-13 14:15:55 +08:00
2023-11-27 17:43:20 +08:00
## Tutorial
2023-07-13 14:15:55 +08:00
2023-12-17 15:01:54 +08:00
- 🗒 [Online Document](https://docs.deepwisdom.ai/main/en/)
- 💻 [Usage](https://docs.deepwisdom.ai/main/en/guide/get_started/quickstart.html)
- 🔎 [What can MetaGPT do?](https://docs.deepwisdom.ai/main/en/guide/get_started/introduction.html)
2023-11-27 17:43:20 +08:00
- 🛠 How to build your own agents?
2023-12-17 15:01:54 +08:00
- [MetaGPT Usage & Development Guide | Agent 101](https://docs.deepwisdom.ai/main/en/guide/tutorials/agent_101.html)
- [MetaGPT Usage & Development Guide | MultiAgent 101](https://docs.deepwisdom.ai/main/en/guide/tutorials/multi_agent_101.html)
2023-11-27 17:43:20 +08:00
- 🧑‍💻 Contribution
- [Develop Roadmap](docs/ROADMAP.md)
- 🔖 Use Cases
2023-12-17 15:01:54 +08:00
- [Debate](https://docs.deepwisdom.ai/main/en/guide/use_cases/multi_agent/debate.html)
- [Researcher](https://docs.deepwisdom.ai/main/en/guide/use_cases/agent/researcher.html)
- [Recepit Assistant](https://docs.deepwisdom.ai/main/en/guide/use_cases/agent/receipt_assistant.html)
- ❓ [FAQs](https://docs.deepwisdom.ai/main/en/guide/faq.html)
2023-06-30 17:10:48 +08:00
2023-11-27 17:43:20 +08:00
## Support
2023-06-30 17:10:48 +08:00
2023-11-27 17:43:20 +08:00
### Discard Join US
📢 Join Our [Discord Channel](https://discord.gg/ZRHeExS6xv)!
2023-06-30 17:10:48 +08:00
2023-11-27 17:43:20 +08:00
Looking forward to seeing you there! 🎉
2023-06-30 17:10:48 +08:00
2023-11-27 17:43:20 +08:00
### Contact Information
2023-11-27 17:43:20 +08:00
If you have any questions or feedback about this project, please feel free to contact us. We highly appreciate your suggestions!
2023-08-07 20:48:07 +08:00
- **Email:** alexanderwu@deepwisdom.ai
2023-11-27 17:43:20 +08:00
- **GitHub Issues:** For more technical inquiries, you can also create a new issue in our [GitHub repository](https://github.com/geekan/metagpt/issues).
2023-08-07 20:48:07 +08:00
2023-11-27 17:43:20 +08:00
We will respond to all questions within 2-3 business days.
2023-09-11 14:40:02 +08:00
2023-08-09 08:32:28 +08:00
## Citation
2023-11-27 17:43:20 +08:00
For now, cite the [arXiv paper](https://arxiv.org/abs/2308.00352):
2023-08-09 08:48:28 +08:00
```bibtex
2023-08-09 08:32:28 +08:00
@misc{hong2023metagpt,
2023-11-27 17:43:20 +08:00
title={MetaGPT: Meta Programming for A Multi-Agent Collaborative Framework},
author={Sirui Hong and Mingchen Zhuge and Jonathan Chen and Xiawu Zheng and Yuheng Cheng and Ceyao Zhang and Jinlin Wang and Zili Wang and Steven Ka Shing Yau and Zijuan Lin and Liyang Zhou and Chenyu Ran and Lingfeng Xiao and Chenglin Wu and Jürgen Schmidhuber},
2023-08-09 08:32:28 +08:00
year={2023},
eprint={2308.00352},
archivePrefix={arXiv},
primaryClass={cs.AI}
}
```