MetaGPT - 多智能体框架
0 ihunter 2025/03

- https://github.com/geekan/MetaGPT

- https://docs.deepwisdom.ai/main/zh/


```

cd  /data/site/htmltoo.ai/ai-metagpt


GRADIO_SERVER_PORT=6902 GRADIO_SERVER_NAME=0.0.0.0 uv run  demo/base.py


-

MetaGPT 引以为傲的功能,便是能使用一句话需求的软件开发,对于命令行使用,简单执行命令即可:

metagpt "编写一个命令行的二十一点游戏"

metagpt "狄仁杰的侦探小说"


streamlit run streamlit/md.py

streamlit run streamlit/novel.py

python  streamlit/novel.py

python  streamlit/code.py

python demo/write_tutorial.py

python demo/0.py

python demo/base.py

python demo/code.py

python demo/design.py

python demo/qa.py

python demo/debate_simple.py

python demo/debate.py

python demo/cr.py

python demo/stream_output_via_api.py

python demo/playwright.py

python demo/hello_world.py

python demo/write_novel.py

python demo/build_customized_multi_agents.py

-

启动智能体:

metagpt --init-config

cp  ./config/ollama.yaml  /root/.metagpt/config2.yaml   


```

-

/root/miniconda3/envs/metagpt/lib/python3.11/site-packages/metagpt/

- http://192.168.1.11:7000


-

pip show  metagpt


-

metagpt --help

--code-review: 是否使用代码审查,默认值为启用代码审查

--implement: 是否启用代码实现,默认值为启用代码实现

--inc: 增量模式,用于与现有仓库合作,默认值为不启用增量模式

--max-auto-summarize-code: 自动总结代码的最大次数,-1表示无限次,用于调试工作流,默认值为0

--init-config: 初始化MetaGPT的配置文件,默认值为不初始化配置文件


# 配置

## llm_api

### ollama.yaml

```

llm:

  api_type: "ollama"

  base_url: "http://192.168.1.11:11434/api"

  model: "gemma3:1b"

```

### openrouter.yaml

```

llm:

  api_type: openrouter

  base_url: "https://openrouter.ai/api/v1"

  api_key: "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"

  model: openrouter-meta-llama/llama-3.3-70b-instruct:free

```

## tools

- 网页浏览

```

browser:

  engine: 'selenium' # playwright/selenium

  browser_type: 'chrome' # playwright: chromium/firefox/webkit; selenium: chrome/firefox/edge/ie

```


## Playwright 是一个用于自动化浏览器的库,支持多种浏览器

python  playwright.py

```

from playwright.sync_api import sync_playwright


with sync_playwright() as p:

    browser = p.chromium.launch()

    page = browser.new_page()

    page.goto('https://mermaid-js.github.io/mermaid-live-editor')

    page.fill('#input', 'graph TD;\n    A-->B;\n    A-->C;\n    B-->D;\n    C-->D;')

    page.click('#render')

    page.screenshot(path='diagram.png')

    browser.close()

```


##

pip install -U metagpt[all]

-

pip install -U playwright

playwright install --with-deps chromium


nv   add --upgrade   metagpt[all]

-

uv  add --upgrade    playwright

playwright install --with-deps chromium


MetaGPT 将不同的角色分配给GPT模型,通过不同角色间的协作,如产品经理、架构师、项目经理和工程师等,形成一个协作性的软件公司,来完成更复杂的任务。


MetaGPT 它只需要输入一句话的老板需求,就能输出一系列丰富的内容,包括用户故事、竞品分析、需求文档、数据结构、APIs 以及相关文件等。这种简洁高效的输入输出方式,大大降低了任务的启动门槛,使得非专业人士也能轻松提出需求并获得专业级的输出。


MetaGPT 内部的工作模式类似于一个真实的软件公司,有着明确的角色分工和精心调配的标准操作流程(SOP)。其核心哲学是 “Code = SOP (Team)”,将 SOP 具象化并应用于由 LLM 构成的团队中。这种创新的工作模式,不仅提高了任务处理的效率和质量,还使得整个开发过程更加规范化和专业化。


MetaGPT 作为一个多智能体框架,为软件开发和任务处理带来了全新的思路和方法。它通过让多个 GPT 智能体组成软件公司,实现了不同角色的协作,大大提高了处理复杂任务的能力。


MetaGPT 可以广泛应用于软件开发领域。对于一些小型的创业团队或个人开发者来说,他们可能缺乏专业的产品经理、架构师等角色,MetaGPT 可以在一定程度上弥补这些不足,帮助他们快速完成项目的规划和开发。


MetaGPT 还可以应用于教育领域。在编程教学中,学生可以通过输入简单的需求,观察 MetaGPT 生成的用户故事、需求文档等内容,学习软件开发的整个流程和方法,提高自己的编程能力和实践经验。


RAG:pip install 'metagpt[rag]'. 

用于基于 RAG(Retrieval-Augmented Generation,检索增强生成)的系统,结合多个 LLM(大语言模型)和向量存储技术


OCR:pip install 'metagpt[ocr]'. 

用于光学字符识别(OCR)任务,识别和提取图像中的文本


search-ddg, pip install 'metagpt[search-ddg]'. 

用于 DuckDuckGo 搜索功能


search-google, pip install 'metagpt[search-google]'. 

用于与 Google API(如 Google 搜索 API)进行交互


selenium, pip install 'metagpt[selenium]'.

用于自动化浏览器操作和网页抓取。

收藏 有帮助 没帮助

上篇: mem0 - AI代理
下篇: Open Canvas:更智能的 AI 写作与编程体验

相关主题
 IT博客索引
 AI软件索引
 猜你喜欢
热门
焦点
视点
头条