[Paper Reading] METAGPT: META PROGRAMMING FOR A MULTI-AGENT COLLABORATIVE FRAMEWORK

news/2025/9/22 20:33:57/文章来源:https://www.cnblogs.com/fariver/p/19105555

目录
  • METAGPT: META PROGRAMMING FOR A MULTI-AGENT COLLABORATIVE FRAMEWORK
  • TL;DR
  • Method
  • Experiment
    • HumanEval
    • MBPP
  • 效果可视化
  • 总结与思考
  • 相关链接

METAGPT: META PROGRAMMING FOR A MULTI-AGENT COLLABORATIVE FRAMEWORK

link
时间:23.08
单位:DeepWisdom公司
相关领域:Agent
作者相关工作:

  • Sirui Hong
  • Mingchen Zhuge
    被引次数:1347
    项目主页:
    https://github.com/geekan/MetaGPT

TL;DR

相对于普通LLM能够解决复杂任务,使用SOP(Standardized Operating Procedures)编码为prompt任务序列,从而将复杂任务分解为多个子任务给多个agents,不同agent赋予不同职能角色,实验证明相对于之前多agents系统效果更好。

Method

image
image

Q:是否SFT?
A:MetaGPT的核心创新在于框架设计(如多角色协作、SOPs集成),而非训练方法。它主要依赖现有的LLM(如GPT-4)作为基础模型,通过提示工程(Prompt Engineering)和结构化工作流引导智能体行为,而非直接修改模型参数。
如何收集数据?如何测试?
Q:如何给不同Agents扮演不同角色?
A:

  • 每个智能体被赋予明确的​​角色配置文件​​(Profile),包括:名称、职责(Goal)、约束(Constraints)、上下文(Context)和技能(Skills)。
  • 智能体按SOPs顺序激活(图3),例如:产品经理→架构师→项目经理→工程师→QA工程师。

Experiment

HumanEval

​​HumanEval​​ 是一个用于评估代码生成模型能力的基准测试数据集。根据论文第4.1节(Datasets部分)的描述,其主要特点如下:

  • ​​内容与规模​​:它包含 ​​164个手写的编程任务​​。
  • ​​任务构成​​:每个任务都包含了​​函数规格说明(function signature)、描述(descriptions)、参考代码(reference codes)和测试用例(tests)​​。
  • ​​评估目标​​:该基准旨在测试模型根据自然语言描述和函数签名来生成正确代码的能力。
  • 评估指标​​:论文采用由 (Chen et al., 2021a) 提出的​​无偏Pass@k来评估生成代码的功能正确性。其计算公式为:
    \(Pass@k = E_Problems [1 - (C(n-c, k) / C(n, k))]\)
    含义:​​至少有一个​​在top-k候选样本中的代码能够通过测试的概率。
    其中,n是生成的样本数量,c是通过测试的样本数量,若k=1表示第一个候选样本能通过测试。

MBPP

  • 内容与规模​​:它由​​427个Python编程任务​​构成。
  • 任务焦点​​:这些任务涵盖了​​Python核心概念和标准库特性​​。与HumanEval类似,每个任务也提供了​​描述、参考代码和自动化测试用例​​。
  • 评估目标​​:与HumanEval共同用于验证MetaGPT在代码生成功能上的准确性。
  • 评估指标​​:同样使用​​无偏Pass@k​​ 作为核心评估指标。

image

image

  1. Lines (Total Code Lines)​​
    ​​含义​​:指​​生成的代码总行数​​。这是一个衡量产出的量化指标,表示在完成特定任务时,整个项目一共编写了多少行代码。
    ​​在实验中的意义​​:通常,更复杂的软件项目会产生更多的代码行数。如表3所示,当仅有1个工程师(Engineer)时,生成了83.0行代码;而当角色齐全(4个角色)时,代码量增加到191.0行,表明任务被更完整地实现。
  2. ​​Expense​​
    ​​含义​​:指​​经济成本​​,即调用大语言模型(如GPT-4)生成所有这些内容所花费的金钱,单位为美元($)。
    ​​在实验中的意义​​:这项指标衡量了解决方案的“昂贵”程度。如表3所示,成本从仅有一个工程师时的0.915,随着角色增加而上升到1.385。这说明更精细的角色分工和协作虽然提升了质量,但也增加了计算和token消耗的成本。
  3. Revisions
    ​​含义​​:指​​人工修订成本​​,具体表示为使生成的代码能够正常运行,​​需要人工进行干预和修改的次数​​
    ​​在实验中的意义​​:这是衡量自动化程度和代码初始质量的关键指标。​​数值越低越好​​。表3清晰显示,随着角色增多,所需的人工修订次数从10次显著降低到2.5次,证明MetaGPT的多角色SOP设计能有效减少错误,减轻人类的后期调试负担。
  4. ​​Executability​​
    ​​含义​​:指​​可执行性​​,是一个对生成代码质量进行人工评估的分数
    ​​评分标准​​(根据论文第4.1节 Evaluation Metrics 定义):

​​1 (Failure/Non-functional)​​: 完全失败或不可运行。
​​2 (Runnable but imperfect)​​: 可以运行但不完美,存在明显缺陷。
​​3 (Nearly perfect)​​: 近乎完美,基本符合预期。
​​4 (Flawless)​​: 完美无瑕,完全符合期望。

效果可视化

image

总结与思考

相关链接

全文翻译
https://zhuanlan.zhihu.com/p/719175829

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/910286.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二进制 - 20243867孙堃2405

原码的表示分为 “符号位” 和 “数值位” 两部分,具体规则如下: 符号位:二进制数的最高位(最左边的位),用于表示正负: 符号位为 0 时,表示正数; 符号位为 1 时,表示负数。 数值位:除符号位外的其余位,直接…

建设网站要先给钱才能做英文网站怎么做外贸推广

是啊,有时候职场就是这么现实,你说你到一家公司能图啥,图它能让你享受累死累活的快感还是图他给你养老送终?还不是图那点工资,图能多学点东西在下一家公司开的高一点,多少人背井离乡不就为了博一个前程。 小蔡怎么说也算是陪公司从低谷爬起来的,至少也待了1、2年了,但是…

学习问题日记-1

学习Nginx时候,在Linux平台上安装Nginx时候遇到的问题报错。 已加载插件:fastestmirror Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&…

记一次生产环境内存溢出记录

今天同事说生产环境发生了fullGC,内存12G监控显示使用了快10G了,fullGC时候把dump文件给下载下来了,于是拿着fullGc 使用idea自带的工具分析。 发现idea自带的工具不太好用,只能显示一堆占用的char[] 和String【】,…

如何购买海外服务器常德seo公司

基础篇 1.常用图像格式介绍 常用图像像素格式 RGB 和 YUV。 1.1RGB RGB分类通常指的是将图像或颜色按照RGB(红、绿、蓝)颜色空间进行分组或分类。RGB图像格式通常包括RGB24(RGB888)、RGB32、RGBA、RGB565等。 RGB24是一种常用…

做推广网站长兴县网站建设

一、现状 低代码开发平台要让每个人,包括开发者和普通业务人员,都能够成为企业数字化过程中的主导者和构建者!让普通人更容易上手! 基于这一目标,应用需求多的云服务商成为低代码投资的主要来源。一家云服务商如谷歌云…

颜色搭配对网站重要性7zwd一起做网店官网

题8 交通灯控制系统 十字路口交通灯由红、绿两色LED显示器(两位8段LED显示器)组成,LED显示器显示切换倒计时,以秒为单位,每秒更新一次;为确保安全,绿LED计数到0转红,经5秒延时&#…

北京做网站的好公司什么网站做博客好

(1)socket套接字 1)在linux环境下,socket用于表示进程间网络通信的特殊文件类型,其本质是内核借助缓冲区形成的伪文件(不占磁盘空间,除此之外还有二进制文件,管道,字符文…

常州外贸公司网站建设寺院网站建设

点评:杀死进程最安全的方法是单纯使用kill命令,不加修饰符,不带标志。 首先使用ps -ef命令确定要杀死进程的PID,然后输入以下命令: # kill -pid 注释:标准的kill命令通常都能达到目的。终止有问题的进…

个人网站推广怎么做百度公司简介介绍

长度最小的数组 长度最小的数组 文章目录 长度最小的数组题目描述解法暴力解法滑动窗口Java示例代码c示例代码 题目描述 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 [numsl, numsl1, ..., numsr-1, num…

国内外c2c网站有哪些建设和同城类似的网站

此次主要在阐述人机界面和 PLC 通讯时的模式状态,并列举了通讯故障实例。帮助大伙加深对这俩者的了解,掌握起来也不再是难题,解决掉拦路虎。一 台数 显 四 辊 卷 板 机PLC 控 制 系 统 核 心 与 人机界面在使用过程中,出现人机界面…

火星wap建站python创建网页

做企业应用开发难免会跟 AD 打交道,在之前的 dotNET FrameWork 时代,通常使用 System.DirectoryServices 的相关类来操作 AD ,在 dotNET Core 中没有这个命名空间,在张善友大佬的推荐下,知道了 Novell.Directory.Ldap。…

四舍六入五成双

四舍六入五成双是一种精确度的计数保留法。这里"四"是小于五的意思,"六"是大于五的意思,"五"是舍入位之后的尾数逢五的话看前一位,奇进偶不进。如1.25保留一位小数,因为2是偶数,所…

织梦制作网站地图大型网站建设制作公司

kali linux 默认ssh是禁止root登录的 为了通过 SSH 进入你的 Kali Linux 系统,你可以有两个不同的选择。第一个选择是创建一个新的非特权用户然后使用它的身份来登录。第二个选择,你可以以 root 用户访问 SSH 。为了实现这件事,需要在SSH 配…

设计网站页面要注意什么公司展厅

pipe函数 管道函数 man pipe #include <unistd.h> int pipe(int pipefd[2]);参数介绍&#xff1a;pipefd读写文件描述符&#xff0c;0-代表读&#xff0c; 1-代表写父子进程实现pipe通信&#xff0c;实现ps aux | grep bash 功能 经常出现的问题&#xff1a; 父进程认为…

商业网站导航怎么做信阳工程建设一体化平台网站

学习使用wps将ppt的页面保存为图片的方法 方案 方案 1、打开ppt&#xff0c;点击文件&#xff0c;另存为&#xff0c;选择文件类型为图片格式&#xff0c;jpg或者png&#xff0c;如下图&#xff1a; 2、点击每张幻灯片

win7电脑做网站主机xml网站地图在线生成工具

跨境商品的采购类型有三种&#xff1a;直邮、保税、一般贸易&#xff0c;而一般贸易的商品已经清关入境了&#xff0c;虽然是跨境商品&#xff0c;但是无需再清关&#xff0c;所以商品详情页无需显示进口税相关信息。 直邮跨境商品显示的进口税信息如下图所示&#xff1a; 保税…

上海找人做网站因脉网站建设公司怎么呀韩国

2019独角兽企业重金招聘Python工程师标准>>> 一、Mybatis介绍 MyBatis是一个支持普通SQL查询&#xff0c;存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和…

丽水公司网站建设绿色郑州网站

一、linux应用程序如何接收参数&#xff1f; 1. argc、argv Linux应用程序执行时&#xff0c;我们往往通过命令行带入参数给程序&#xff0c;比如 ls /dev/ -l 其中参数 /dev/ 、-l都是作为参数传递给命令 ls 应用程序又是如何接收这些参数的&#xff1f; 通常应用程序都…

珠海网站建设推广服务在58做网站推广有用没

一:题目 二:代码 #include <iostream> #include<vector> using namespace std; int main() {/**思路:1.确定dp数组的定义以及下标的含义dp[i][j] 表示的是一条路径到达下标i和j时&#xff0c;的最大值 2.确定dp数组的状态转移公式我们当前位置的最大值其实是由右上…