DataLearner 标志DataLearnerAI
最新AI资讯
大模型排行榜
大模型评测基准
大模型列表
大模型对比
资源中心
工具
语言中文
DataLearner 标志DataLearner AI

专注大模型评测、数据资源与实践教学的知识平台,持续更新可落地的 AI 能力图谱。

产品

  • 评测榜单
  • 模型对比
  • 数据资源

资源

  • 部署教程
  • 原创内容
  • 工具导航

关于

  • 关于我们
  • 隐私政策
  • 数据收集方法
  • 联系我们

© 2026 DataLearner AI. DataLearner 持续整合行业数据与案例,为科研、企业与开发者提供可靠的大模型情报与实践指南。

隐私政策服务条款
  1. 首页/
  2. 博客列表/
  3. 博客详情

MetaGPT技术全解析:另一个AutoGPT,一个可以替代小型软件开发团队的配备齐全的软件开发GPT,产品经理、系统设计、代码实现一条龙

2023/08/07 16:52:41
4,156 阅读
AIAgentAutoGPTMetaGPT

AI Agent被很多人认为是未来大模型的发展方向。此前,OpenAI安全团队负责人人Lilian Weng也发布了一篇详细介绍AI自动代理机器人的博客,引起了很多人的关注。7月份发布的MetaGPT是一个全新的AI Agent项目,它基于GPT-4提供了专注于软件开发的自动代理框架,几乎可以理解为配备了产品经历、系统设计师、程序员的一个小团队,可以基于原始的需求直接生成最后的代码项目。本文主要介绍一下这个项目,并分析一下背后的实现方式。

  • MetaGPT简介
  • MetaGPT的实现原理
  • MetaGPT内置的任务和技能
  • MetaGPT的运行和测试结果
  • MetaGPT的总结

MetaGPT简介

六月底,一位深圳的开发者在GitHub上创建了一个MetaGPT项目,这是一个全新的基于AI Agent的大模型框架,与此前项目不同的是,这个项目专注于软件开发,从需求分析到代码实现等实现了全流程的覆盖。可以基于你的一条原始需求,从需求分析、系统设计、代码实现、代码review等方面提供完整的服务。该项目发布一个月后的今天就在GitHub上达到了1万个star,目前是GitHub趋势榜第一!

从演示的视频看,你只需要给这个项目一条简单的原始需求,项目就可以利用GPT-4来完成最终的产品实现。下图是MetaGPT在内部通过prompt实现的一个完整的软件开发团队:

可以看到,基本上是按照现代软件开发团队涉及的角色来配备的。不过,能有这样的流程和角色的可能也不是一个小团队。在一个比较完整的软件开发团队中,一个原始需求提出来之后需要经过原始需求分析、需求评审、系统需求分析、系统设计、代码实现、代码评审、代码测试等一系列环节。这样的开发流程可以有效保证代码开发的质量,但是流程较长,不太灵活。如果能用大模型实现这个流程,显然对于软件开发的质量和效率都有很大的帮助。

MetaGPT的实现原理

相比较此前的AutoGPT,MetaGPT的实现原理稍微复杂一点。它在系统中定义了几种角色,并为每种角色配备了目标和prompt模板,以此引导相关角色解决相应问题,主要的角色包括:

角色目标可以的行动观察的输入
产品经理目标是创造一个成功的产品写产品需求文档观察老板是否有新的需求
架构师根据产品需求文档设计系统架构设计文档产品经理是否有新需求
项目经理目标是提升团队效率根据设计文档完成任务分解观察是否有新的设计任务
工程师根据项目经理分解的任务完成代码和评审写代码/代码评审项目经理分解的任务
QA工程师根据代码的输出和测试代码输出以及运行结果输出测试方案写测试用例代码结果和代码运行结果

从上面的表格总结可以知道,MetaGPT通过定义几种角色来完成初始需求的一步步实现过程。总的入口就是老板的需求,接下来各个角色会根据这个原始需求按照上述步骤进行处理。

MetaGPT一个有意思的设定是它为每种角色定义了一个单独的“进程”运行。每一个角色在运行中都是等待是否有相应的输入出现,一旦观察到相应的输入就会立马根据自己的目标,使用大模型来解决这个问题,并将结果返回到系统中。系统的其它角色一旦监听到有关于自己的任务输入,那就可以获取任务进行执行了。这个也与当前的开发流程和组织架构十分相似。

此外,为了让每个角色有更强大能力,MetaGPT还设置了额外的角色帮助系统完成任务,包括搜索角色、prompt分解角色等。

MetaGPT内置的任务和技能

显然,上述分析我们可以看到MetaGPT最本质的方案是预置多种角色,这些角色都有自己的目标以及输入和输出,它会根据环境中观察的与自己相关的输入来处理。

那么,这些角色有哪些能力和技能呢?这里也总结一下。需要注意的是,这里总结的技能都是一个单独的文件,每一个角色都可以通过引入这种技能来增强自己的能力:

  • 分析代码库:analyze_dep_libs.py
  • azure的语音合成:azure_tts.py
  • debug:debug_error.py
  • 设计api:design_api.py
  • api评审:design_api_review.py
  • 设计文件名:design_filenames.py
  • 项目管理:project_management.py
  • 代码运行:run_code.py
  • 搜索和摘要:search_and_summarize.py
  • 写代码:write_code.py
  • 写代码评审:write_code_review.py
  • 写需求说明书:write_prd.py
  • 写需求说明书评审:write_prd_review.py
  • 写测试用例:write_test.py

简单来说,上面每一个技能都对应一个py文件,每一个py文件里面定义的都是对应技能的prompt模板。最终各个角色都是通过自己所有你有的这些技能来处理输入和输出,完成任务。

MetaGPT的运行和测试结果

MetaGPT吸引了很多人的测试,其中一个比较代表性的任务是一个人用了10分钟,完成了一个Flappy bird游戏的开发:

而这个运行只需要如下代码:

python startup.py "write p5.js code for Flappy Bird where you control a yellow bird continuously flying between a series of green pipes. The bird flaps every time you left click the mouse. If the bird falls to the ground or hits a pipe, you lose. This game goes on infinitely until you lose and you get points the further you go" --code_review True

接下来,程序完全自动运行,最终产生了上图的结果。不过,上面最终的结果并不能直接运行,还需要我们补充素材之类的结果。作者用了midjourney帮忙。

MetaGPT的运行很简单,按照官方的项目建议安装完之后直接运行startup.py脚本即可,这个脚本可以设置如下参数:

NAME
    startup.py - We are a software startup comprised of AI. By investing in us, you are empowering a future filled with limitless possibilities.

SYNOPSIS
    startup.py IDEA <flags>

DESCRIPTION
    We are a software startup comprised of AI. By investing in us, you are empowering a future filled with limitless possibilities.

POSITIONAL ARGUMENTS
    IDEA
        Type: str
        Your innovative idea, such as "Creating a snake game."

FLAGS
    --investment=INVESTMENT
        Type: float
        Default: 3.0
        As an investor, you have the opportunity to contribute a certain dollar amount to this AI company.
    --n_round=N_ROUND
        Type: int
        Default: 5

NOTES
    You can also use flags syntax for POSITIONAL ARGUMENTS

其中需要注意的是,它消耗OpenAI API Key的结果。运行结束的方式要么是投资耗尽,要么是最多的迭代次数用完!

MetaGPT的总结

其实,关于使用LLM作为核心来构建代理机器人完成任务已经有不少项目了。早期的AutoGPT就十分令人惊叹(参考:AutoGPT是如何让GPT-4自动帮你完成任务的——最火的AutoGPT原理解析!),后来OpenAI的Lilian Weng博客更加让人明白了AI Agent未来的前景(参考:大模型驱动的自动代理(AI Agent):将语言模型的能力变成通用能力的一种方式——来自OpenAI安全团队负责人的解释与观点)。

MetaGPT的优点是针对特定的领域,构建了很精细的角色,质量相比通用的AI Agent来说应该更高。而且它这种建立了类似人类软件开发公司的组织型态也值得大家思考。

MetaGPT的项目地址:https://github.com/geekan/MetaGPT/tree/main

DataLearner 官方微信

欢迎关注 DataLearner 官方微信,获得最新 AI 技术推送

DataLearner 官方微信二维码
返回博客列表

相关博客

  • Moltbook 是什么?一个专为 AI Agent 或者说是 OpenClaw(前身为 Clawdbot 或 Moltbot)设计的社交网络,以及最有趣的讨论案例收集
  • AI编码领域的转变:Karpathy的2026年反思与Boris Cherny的Claude Code团队回应
  • 看特斯拉前AI总监、OpenAI前知名研究员Andrej Karpathy如何看AI大模型编程(Claude Code这样的工具):AI Agent正在重塑编码工作流,2026年的软件工程大变革
  • 大模型工具使用的三次进化:从 Function Calling 到程序化编排
  • 为什么大模型企业都在强调可以连续工作XX小时的Agent和模型?长时运行Agent解析(Long-Running Agents)
  • Anthropic 最新 Agent 工程方案:使用双 Agent 架构让 AI 实现真正的长时自主工作
  • 如何让你的Agent更快,支持更多上下文?Anthropic发布Skills:专为AI Agent系统打造的专业领域工具规范,MCP强大的补充,更低的门槛和资源消耗
  • 直接使用大模型通过界面来操作电脑和浏览器:谷歌发布Gemini 2.5 Computer Use 模型,重塑 AI 与界面交互能力,实测优秀~

热门博客

  • 1Dirichlet Distribution(狄利克雷分布)与Dirichlet Process(狄利克雷过程)
  • 2回归模型中的交互项简介(Interactions in Regression)
  • 3贝塔分布(Beta Distribution)简介及其应用
  • 4矩母函数简介(Moment-generating function)
  • 5普通最小二乘法(Ordinary Least Squares,OLS)的详细推导过程
  • 6使用R语言进行K-means聚类并分析结果
  • 7深度学习技巧之Early Stopping(早停法)
  • 8手把手教你本地部署清华大学的ChatGLM-6B模型——Windows+6GB显卡本地部署