当前位置: 首页 > news >正文

MetaGPT - 多Agent框架

在这里插入图片描述

文章目录

    • 一、关于 MetaGPT
      • 功能介绍
      • 快速开始的演示视频
      • 教程
    • 二、安装
      • Pip安装
      • Docker安装


一、关于 MetaGPT

MetaGPT 为GPTs分配不同的角色,以形成一个协作实体来完成复杂的任务。

  • github : https://github.com/geekan/MetaGPT
  • twitter : https://twitter.com/MetaGPT
  • huggingface : https://huggingface.co/spaces/deepwisdom/MetaGPT-SoftwareCompany
  • ROADMAP : https://github.com/geekan/MetaGPT/blob/main/docs/ROADMAP.md
  • Discord : https://discord.gg/ZRHeExS6xv
  • 联系邮箱: alexanderwu@deepwisdom.ai

功能介绍

  1. MetaGPT输入一句话的老板需求,输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等
  2. MetaGPT内部包括产品经理 / 架构师 / 项目经理 / 工程师,它提供了一个软件公司的全过程与精心调配的SOP
    • Code = SOP(Team) 是核心哲学。我们将SOP具象化,并且用于LLM构成的团队

在这里插入图片描述

软件公司多角色示意图(正在逐步实现)


快速开始的演示视频

  • 在 MetaGPT Huggingface Space 上进行体验
  • Matthew Berman: How To Install MetaGPT - Build A Startup With One Prompt!!
  • 官方演示视频
    https://github.com/geekan/MetaGPT/assets/34952977/34345016-5d13-489d-b9f9-b82ace413419

教程

  • 🗒 在线文档
  • 💻 如何使用
  • 🔎 MetaGPT的能力及应用场景
  • 🛠 如何构建你自己的智能体?
    • MetaGPT的使用和开发教程 | 智能体入门
    • MetaGPT的使用和开发教程 | 多智能体入门
  • 🔖 示例
    • 辩论
    • 调研员
    • 票据助手
  • ❓ 常见问题解答

二、安装

Pip安装

确保您的系统已安装 Python 3.9 或更高版本。您可以使用以下命令来检查:python --version
您可以这样使用 conda:conda create -n metagpt python=3.9 && conda activate metagpt

pip install metagpt
metagpt --init-config  # 创建 ~/.metagpt/config2.yaml,根据您的需求修改它
metagpt "创建一个 2048 游戏"  # 这将在 ./workspace 创建一个仓库

或者您可以将其作为库使用

from metagpt.software_company import generate_repo, ProjectRepo
repo: ProjectRepo = generate_repo("创建一个 2048 游戏")  # 或 ProjectRepo("<路径>")
print(repo)  # 它将打印出仓库结构及其文件

详细的安装请参考 cli_install


Docker安装

注意:在Windows中,你需要将 “/opt/metagpt” 替换为Docker具有创建权限的目录,比如"D:\Users\x\metagpt"

# 步骤1: 下载metagpt官方镜像并准备好config2.yaml
docker pull metagpt/metagpt:latest
mkdir -p /opt/metagpt/{config,workspace}
docker run --rm metagpt/metagpt:latest cat /app/metagpt/config/config2.yaml > /opt/metagpt/config/config2.yaml
vim /opt/metagpt/config/config2.yaml # 修改配置文件# 步骤2: 使用容器运行metagpt演示
docker run --rm \--privileged \-v /opt/metagpt/config/config2.yaml:/app/metagpt/config/config2.yaml \-v /opt/metagpt/workspace:/app/metagpt/workspace \metagpt/metagpt:latest \metagpt "Write a cli snake game"

详细的安装请参考 docker_install


2025-01-04 (六)

相关文章:

MetaGPT - 多Agent框架

文章目录 一、关于 MetaGPT功能介绍快速开始的演示视频教程 二、安装Pip安装Docker安装 一、关于 MetaGPT MetaGPT 为GPTs分配不同的角色&#xff0c;以形成一个协作实体来完成复杂的任务。 github : https://github.com/geekan/MetaGPTtwitter : https://twitter.com/MetaGP…...

Hyperbolic dynamics

http://www.scholarpedia.org/article/Hyperbolic_dynamics#:~:textAmong%20smooth%20dynamical%20systems%2C%20hyperbolic%20dynamics%20is%20characterized,semilocal%20or%20even%20global%20information%20about%20the%20dynamics. 什么是双曲动力系统&#xff1f; A hy…...

TIM的输入捕获

IC&#xff08;Input Capture&#xff09;输入捕获 输入捕获模式下&#xff0c;当通道输入引脚出现指定电平跳变时&#xff0c;当前CNT的值将被锁存到CCR中 我们使用测周法测频率 void IC_Init(void) {RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);RCC_APB1PeriphCl…...

SCAU期末笔记 - 数据库系统概念往年试卷解析

数据库搞得人一头雾水&#xff0c;题型太多太杂&#xff0c;已经准备摆烂了。就刷刷往年试卷&#xff0c;挂不挂听天由命。 2019年 Question 1 选择题 1. R ∩ S R∩S R∩S等于一下哪个选项&#xff1f; 画个文氏图秒了 所以选A. R ∩ S R − ( R − S ) R∩SR-(R-S) R∩…...

黑马跟学.苍穹外卖.Day01

黑马跟学.苍穹外卖.Day01 苍穹外卖-day01课程内容1. 软件开发整体介绍1.1 软件开发流程1.2 角色分工1.3 软件环境 2. 苍穹外卖项目介绍2.1 项目介绍2.2 产品原型2.3 技术选型 3. 开发环境搭建3.1 前端环境搭建3.2 后端环境搭建3.2.1 熟悉项目结构3.2.2 Git版本控制3.2.3 数据库…...

获取系统启动时间

获取系统启动时间 uptime命令 gbgb:~$ uptime09:29:41 up 2:21, 4 users, load average: 0.00, 0.00, 0.00 gbgb:~$ 这里的up 13 min表示系统已经运行了2个小时13分钟。 date 命令 /proc/uptime gbgb:~$ date -d "$(awk -F. {print $1} /proc/uptime) second ago&…...

Istio 补充 Kubernetes 的不足

1 Istio 补充 Kubernetes 的不足 Kubernetes 强大但无法解决复杂分布式系统中的非功能性需求&#xff0c;如流量路由、协议转换、请求重试和负载均衡。Istio作为Service Mesh&#xff0c;通过独立的代理进程处理这些需求&#xff0c;避免直接修改业务代码。 2. 独立的代理进程…...

以图像识别为例,关于卷积神经网络(CNN)的直观解释

大家读完觉得有意义记得关注和点赞&#xff01;&#xff01;&#xff01; 作者以图像识别为例&#xff0c;用图文而非数学公式的方式解释了卷积神经网络的工作原理&#xff0c; 适合初学者和外行扫盲。 目录 1 卷积神经网络&#xff08;CNN&#xff09; 1.1 应用场景 1.2 起…...

使用PyTorch实现基于稀疏编码的生成对抗网络(GAN)在CIFAR-10数据集上的应用

使用PyTorch实现基于稀疏编码的生成对抗网络(GAN)在CIFAR-10数据集上的应用 目录 使用PyTorch实现基于稀疏编码的生成对抗网络(GAN)在CIFAR-10数据集上的应用1. 引言2. 数据集介绍3. 模型网络结构3.1 网络结构3.2 编码器3.3 生成器3.4 判别器4. 模型优化器与损失函数4.1 优…...

Java重要面试名词整理(十八):Sentinel

文章目录 服务雪崩及其解决方案技术选型: Sentinel or Hystrix 流量治理组件Sentinel**基于SentinelResource注解埋点实现资源保护** Sentinel控制台**限流阈值类型****流控模式****直接****关联** **流控效果**系统规则——系统自适应保护 限流算法**计数器法****滑动时间窗口…...

【微信小程序获取用户手机号

微信小程序获取用户手机号有2种,一种是前端自己解密,一种是获取后发给后端,后端去解密 重点:要在微信公众平台设置里面绑定微信开放平台账号,不然反解不出来用户手机号上代码: <button style"font-size: 16px;" open-type"getPhoneNumber" getphonenumb…...

Profinet转EtherNet/IP网关连接AB PLC的应用案例

某大型制造企业的生产车间同时采用了西门子 S7 - 1500 PLC 作为核心控制系统的一部分&#xff0c;负责主要生产流程的控制与数据处理&#xff1b;而在特定生产环节&#xff0c;由于历史设备遗留或工艺配套需求&#xff0c;存在使用 AB PLC 的情况。这就导致了在整个自动化生产系…...

Maven的依赖管理

1. 依赖管理 依赖管理&#xff0c;可以将有关依赖项的所有信息放在共同的POM中&#xff0c;并对子POM中的工件进行更简单的引用。举个例子&#xff1a; 父POM <project>......<dependencyManagement><dependencies><dependency><groupId>gro…...

验证码识别插件 - captcha-killer

验证码识别插件 - captcha-killer 简介 captcha-killer 是一款用于 Burpsuite 的验证码识别插件。它的主要功能是调用各种验证码识别接口&#xff0c;以便在进行渗透测试时能够自动识别和绕过验证码。这个插件本身并不直接进行验证码的识别&#xff0c;而是通过调用外部的 OC…...

面试题解,Java中的“对象”剖析

一、说一说JVM中对象的内存布局&#xff1f;new一个对象到底占多大内存&#xff1f; 话不多说&#xff0c;看下图&#xff0c;对象的内存布局图 一个对象的内存布局主要由三部分组成&#xff1a;对象头&#xff08;Object Header&#xff09;、实例数据&#xff08;Instance D…...

对计网大题的一些指正(中间介绍一下CDM的原理和应用)

目录 前言&#xff1a; &#xff08;1&#xff09;五层原理体系结构每层功能&#xff1a; 下面是文档的答案&#xff1a; 我在之前的博客里面有介绍过五层原理体系结构&#xff0c; 按理来说&#xff0c;第五层应该是应用层才对&#xff0c;而会话层的功能应该被放到应用层…...

122. 买卖股票的最佳时机 II

https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-ii/description/?envTypestudy-plan-v2&envIdtop-interview-150问题分析&#xff1a; 和买卖股票的最佳时机I这题相比&#xff0c;区别就是可以买多只股票虽然同时只能持有一支&#xff0c;但是我们还是可以…...

qt中如何判断字符串是否为数字,整数,浮点数?

在 Qt 中&#xff0c;可以使用多种方法来判断字符串是否为数字、整数或浮点数。Qt 提供了一些方便的字符串和数值处理函数&#xff0c;可以帮助你实现这些判断。以下是几种常见的方法&#xff1a; 1. 使用 QRegularExpression Qt 提供了 QRegularExpression 类&#xff0c;可…...

《GICv3_Software_Overview_Official_Release_B》学习笔记

1.不同版本的 GIC 架构及其主要功能如下图所示&#xff1a; 2.GICv2m&#xff08;Generic Interrupt Controller Virtualization Model&#xff09;是针对ARM架构的GIC&#xff08;通用中断控制器&#xff09;的一种扩展&#xff0c; GICv2m扩展为虚拟化环境中的中断管理提供了…...

告别Kibana:Elasticsearch 桌面客户端的新变革

告别Kibana&#xff1a;Elasticsearch 桌面客户端的新变革 在大数据处理与分析领域&#xff0c;Elasticsearch 及其相关技术的应用日益广泛。长期以来&#xff0c;Kibana 在数据可视化与查询管理方面占据重要地位&#xff0c;但随着技术的不断发展&#xff0c;用户对于更高效、…...

【蓝桥杯研究生组】第14届Java试题答案整理

试题链接&#xff1a;链接 A题 满足条件的答案有&#xff1a;35813116 public class TianShu {public static void main(String[] args) {int ans 0;// 2000.1.1 - 2000000.1.1// 年份是月份的倍数&#xff0c;也是日的倍数for (int year2000; year<2000000; year) {for …...

链式调用方式重写父类set方法导致fastjson解析的对象属性未赋值

反序列化后发现属性为null 昨天使用fastjson的JSON.parseArray(json, class)反序列化的时候&#xff0c;发现返回的list列表中的对象某个属性为null&#xff0c;但是json字符串里面这个属性是有值的&#xff0c;经过排查发现是因为子类重写了父类的set方法&#xff0c;且返回值…...

[AUTOSAR 基础入门] - AUTOSAR配置工具

返回总目录 前文我们提到了要借助 EasySAR 平台来助力大家更好地融合 AUTOSAR 的理论与实践&#xff0c;让大家能够切实将所学知识转化为实际操作能力。建议大家感兴趣的去注册一下看看。跳转链接&#xff1a;EasySAR EasySAR是昂辉科技基于 AUTOSAR 方法论设计的一款面向汽车…...

鸿蒙开发:实现键值数据库存储

前言 鸿蒙当中数据持久化存储&#xff0c;为我们提供了多种的实现方式&#xff0c;比如用户首选项方式&#xff0c;关系型数据库方式&#xff0c;键值型数据库方式&#xff0c;文件存储方式等等&#xff0c;对于数据量比较的小的&#xff0c;我们直接选择轻量级的用户首选项方式…...

ip属地的信息准确吗?ip归属地不准确怎么办

在数字化时代&#xff0c;IP属地信息成为了我们日常生活中不可或缺的一部分。在各大社交媒体平台上&#xff0c;IP属地信息都扮演着重要的角色。然而&#xff0c;随着技术的不断进步和网络的复杂性增加&#xff0c;IP属地信息的准确性问题也日益凸显。那么&#xff0c;IP属地信…...

CSS——1.优缺点

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title></title><link rel"stylesheet" type"text/css" href"1-02.css"/></head><body><!--css&#xff1a;层叠样式表…...

Android设备使用AOA协议进行主机与配件模式通信

1.使用TYPC-C数据线连接两台华为手机&#xff1a; TYPE-C线&#xff0c;先连接下图右边的ACCESSORY 再连接左边的HOST 此时左边的HOST(白色) 会给右边的ACCESSORY(黑色) 充电 接着打开左连接的HostChart会自动调起授权&#xff0c;然后会启动右边的AccessoryChart USB HOS…...

MySQL中深度分页问题的优化

MySQL中深度分页问题的优化 在MySQL中&#xff0c;使用LIMIT子句进行分页查询时&#xff0c;可能会遇到一个常见的性能问题&#xff1a;当LIMIT子句中的偏移量X很大时&#xff0c;查询速度会显著下降。例如&#xff0c;LIMIT 0,10可能只需要20毫秒&#xff0c;而LIMIT 1000000,…...

5. C语言 常量与宏定义

本章目录: 前言一、什么是常量&#xff1f;1. 整型常量2. 浮点型常量3. 字符常量4. 字符串常量 二、如何定义常量&#xff1f;1. 使用 #define 宏定义2. 使用 const 关键字 三、#define 和 const 的区别四、使用建议1. 使用场景区分2. 避免宏定义的潜在问题 五、特殊用法与小技…...

【mybatis-plus问题集锦系列】mybatis使用xml配置文件实现数据的基础增删改查

简单的数据查询&#xff0c;我们可以在mapper接口里面去实现&#xff0c;但是如果是复杂的查询&#xff0c;我们就可以使用xml配置文件去做&#xff0c; 官网链接xml配置文件 实现效果 实现代码 根据mapper接口的包结构&#xff0c;在resources包里面新建同名同结构的xml文件…...

spring防止重复点击,两种注解实现(AOP)

第一种&#xff1a;EasyLock 简介 为了简化可复用注解&#xff0c;自己实现的注解&#xff0c;代码简单随拿随用 使用方式 1.创建一个注解 Target(ElementType.METHOD) Retention(RetentionPolicy.RUNTIME) Documented public interface EasyLock {long waitTime() default …...

Spring Boot 3 实现 MySQL 主从数据库之间的数据同步

✅ Spring Boot 3 实现 MySQL 主从数据库之间的数据同步 在实际项目中,为了提高 系统的读性能 和 数据的可用性,通常会使用 主从数据库架构。Spring Boot 提供了对 多数据源 的良好支持,可以轻松配置 主从数据库 的数据同步,实现 读写分离。 🎯 方案介绍 我们将通过 Sp…...

WPS-JS宏快速上手

WPS JS宏注意事项 代码后面可以不写分号“ ; ”&#xff1b; 缩进对程序的运行影响不大&#xff0c;但为了易读&#xff08;防止自己以后看不懂&#xff09;&#xff0c;还是乖乖写好&#xff1b; 代码是逐行运行的&#xff0c;意味着下面一行代码错了&#xff0c;前面的代码…...

力扣hot100——堆

215. 数组中的第K个最大元素 快速排序 class Solution { public:int findKthLargest(vector<int>& a, int k) {auto qsort [&](this auto&& qsort, int l, int r) -> void {if (l r) return;int i l - 1, j r 1;int x a[(l r) / 2];/*如果把…...

【小制作】米家模拟手指点击

代码功能解释 这段代码是一个基于Arduino平台的控制程序&#xff0c;主要功能包括&#xff1a; 初始化&#xff1a;设置引脚模式、初始化编码器、舵机和EEPROM。按键检测&#xff1a;处理按钮的单击、双击和长按事件&#xff0c;并根据事件执行相应操作。编码器更新&#xff…...

ubuntu1604 apt镜像源切换

1、如何查看当前源 cat /etc/apt/sources.list less /etc/apt/sources.list 2、apt源修改为阿里镜像&#xff0c;这里ubuntu是1604&#xff1a; deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/…...

leetcode刷题笔记

题目思路1.两数之和哈希表2.两数相加链表操作3. 无重复字符的最长子串滑动窗口&#xff0c;特别注意数组越界情况&#xff01;4. 寻找两个正序数组的中位数5.最长回文子串从中间向两边扩展&#xff0c;注意整个字符串都是回文串的边界情况10.正则表达式匹配动态规划&#xff0c…...

修复 ITunes 在 Windows 或 Mac 上不断崩溃的问题 [100% 有效]

对于 iDevice 用户来说&#xff0c;只能通过 iTunes 在 iDevice 和计算机之间传输文件的困境一直是一个紧迫的问题。所有 iPhone 用户可能都知道&#xff0c;iTunes 并不是一款高效的应用程序&#xff0c;有时性能会很差&#xff0c;例如在 iDevices 和计算机之间传输文件时不断…...

Mac M2基于MySQL 8.4.3搭建(伪)主从集群

前置准备工作 安装MySQL 8.4.3 参考博主之前的文档&#xff0c;在本地Mac安装好MySQL&#xff1a;Mac M2 Pro安装MySQL 8.4.3安装目录&#xff1a;/usr/local/mysql&#xff0c;安装好的MySQL都处于运行状态&#xff0c;需要先停止MySQL服务最快的方式&#xff1a;系统设置 …...

Visual Point Cloud Forecasting enables Scalable Autonomous Driving——点云论文阅读(12)

此内容是论文总结,重点看思路!! 文章概述 这篇文章介绍了一个名为 ViDAR 的视觉点云预测框架,它通过预测历史视觉输入生成未来点云,作为自动驾驶的预训练任务。ViDAR 集成了语义、三维几何和时间动态信息,有效提升了感知、预测和规划等自动驾驶核心任务的性能。实验表明…...

handpose x plus 数据解析 >> DataBall

DataBall 助力快速掌握数据集的信息和使用方式&#xff0c;会员享有 百种数据集&#xff0c;持续增加中。 需要更多数据资源和技术解决方案&#xff0c;知识星球&#xff1a; “DataBall - X 数据球(free)” ---------------------------- 样品数据&#xff1a; 通过加入知识…...

LINUX线程操作

文章目录 线程的定义LINUX中的线程模型一对一模型多对一模型多对多模型 线程实现原理线程的状态新建状态&#xff08;New&#xff09;就绪状态&#xff08;Runnable&#xff09;运行状态&#xff08;Running&#xff09;阻塞状态&#xff08;Blocked&#xff09;死亡状态&#…...

每日一学——日志管理工具(ELK Stack)

5.1 ELK Stack 5.1.1 Elasticsearch索引机制 嘿&#xff0c;小伙伴们&#xff01;今天我们要聊聊ELK Stack——一套由Elasticsearch、Logstash和Kibana组成的强大日志管理工具集。通过这套工具&#xff0c;我们可以轻松地收集、存储、搜索和可视化日志数据。首先&#xff0c;…...

设计模式 结构型 适配器模式(Adapter Pattern)与 常见技术框架应用 解析

适配器模式&#xff08;Adapter Pattern&#xff09;是一种结构型设计模式&#xff0c;它允许将一个类的接口转换成客户端所期望的另一个接口&#xff0c;从而使原本因接口不兼容而无法一起工作的类能够协同工作。这种设计模式在软件开发中非常有用&#xff0c;尤其是在需要集成…...

【Leetcode】732. 我的日程安排表 III

文章目录 题目思路代码复杂度分析时间复杂度空间复杂度 结果总结 题目 题目链接&#x1f517; 当 k k k 个日程存在一些非空交集时&#xff08;即, k k k 个日程包含了一些相同时间&#xff09;&#xff0c;就会产生 k k k 次预订。 给你一些日程安排 [startTime, endTime…...

Flutter Android修改应用名称、应用图片、应用启动画面

修改应用名称 打开Android Studio&#xff0c;打开对应项目的android文件。 选择app下面的manifests->AndroidManifest.xml文件&#xff0c;将android:label"bluetoothdemo2"中的bluetoothdemo2改成自己想要的名称。重新启动或者重新打包&#xff0c;应用的名称…...

RocketMQ消费者如何消费消息以及ack

1.前言 此文章是在儒猿课程中的学习笔记&#xff0c;感兴趣的想看原来的课程可以去咨询儒猿课堂 这篇文章紧挨着上一篇博客来进行编写&#xff0c;有些不清楚的可以看下上一篇博客&#xff1a; https://blog.csdn.net/u013127325/article/details/144934073 2.broker是如何…...

华为消费级QLC SSD来了

近日&#xff0c;有关消息显示&#xff0c;华为的消费级SSD产品线&#xff0c;eKitStor Xtreme 200E系列&#xff0c;在韩国一家在线零售商处首次公开销售&#xff0c;引起了业界的广泛关注。 尽管华为已经涉足服务器级别的SSD制造多年&#xff0c;但直到今年6月才正式推出面向…...

Conda 安装 Jupyter Notebook

文章目录 1. 安装 Conda下载与安装步骤&#xff1a; 2. 创建虚拟环境3. 安装 Jupyter Notebook4. 启动 Jupyter Notebook5. 安装扩展功能&#xff08;可选&#xff09;6. 更新与维护7. 总结 Jupyter Notebook 是一款非常流行的交互式开发工具&#xff0c;尤其适合数据科学、机器…...

高等数学学习笔记 ☞ 极限的运算法则与存在准则

1. 极限的运算法则 &#xff08;1&#xff09;有限个无穷小的和是无穷小。 &#xff08;2&#xff09;有限个无穷小的乘积是无穷小。 备注&#xff1a; ①&#xff1a;无限个无穷小的和不一定是无穷小&#xff0c;反例如下&#xf…...