39.1k Star ! Meta GPT:AI Agent 排名第一,第一家人工智能软件公司,迈向自然语言编程

作者:Aitrainee | AI进修生

排版太难了,请点击这里查看原文:39.1k Star ! Meta GPT:AI Agent 排名第一,第一家人工智能软件公司,迈向自然语言编程

cover_image

39.1k Star ! Meta GPT:AI Agent 排名第一,第一家人工智能软件公司,迈向自然语言编程

原创 Aitrainee [ AI进修生 ](javascript:void(0)😉

AI进修生

微信号 AitraineeGPT

功能介绍 AI算法工程师 / Prompt工程师 / ROS机器人开发者 | 分享AI动态与算法应用资讯,提升技术效率。



Aitrainee | 公众号:AI进修生

MetaGPT:🌟 多Agent框架:第一家人工智能软件公司,迈向自然语言编程,MetaGPT的论文在 ICLR 2024 上被接受为oral报告(前
1.2%),在基于 LLM 的智能体类别中排名第一.

MetaGPT将一行需求作为输入,并输出 用户故事 / 竞争分析 / 需求 / 数据结构 / API / 文档 等。在内部,MetaGPT包括
产品经理 / 架构师 / 项目经理 / 工程师 。它提供了整个软件公司的流程,以及精心编排的标准操作程序(SOP)。

代码= SOP (团队) 是核心理念。我们实现SOP并将其应用于由LLM组成的团队。

一个软件公司由基于LLM的角色组成。

MetaGPT 最初是一家软件公司,但它的能力并不仅限于此。您可以在自己的场景中使用这个多代理框架来构建自己的应用程序。具体可以参考用例下的研究员。

快速入门和演示视频

官方演示视频

M atthew Berm an: 如何安装 MetaGPT - 只需一个提示即可创建一家初创公司!

数据解释器: DataInterpreter

什么是数据解释器

DataInterpreter是MetaGPT多个Agent中的一环。数据解释器是一个通过代码解决数据相关问题的代理。它了解用户需求,制定计划,编写执行代码,并在必要时使用工具。这些功能使其能够应对各种场景。请随意查看本文和下面的示例。

机器学习建模

官方演示了MetaGPT的数据解释器用于机器学习建模的两个例子

解决数学问题

用于DataInterpreter解决从数学数据集的 level5 级别中随机选择的数学问题。

收据OCR识别

基于paddle OCR生成工具代码,然后在利用大模型的语义理解

网页仿制

人 机交互

MetaGPT在进行项目创建、执行任务的途中,仍然可以接受人类的指令,进行人机交互

Researcher: 搜索网络和编写报告

与上面的数据解释器,类似的另外一个Agent是研究者,用户输入研究问题。

研究人员使用 GPT
生成一组研究问题,对任何给定任务形成客观意见。收到GPT分解后的问题后,研究人员针对每个研究问题通过搜索引擎进行搜索以获得初步搜索结果。使用浏览器获取
URL 检索网页内容并总结网页内容。整合所有汇总内容并跟踪其来源。

最后,指导GPT根据整合内容生成最终研究报告。以下是研究员角色架构的流程图

官方给出了一个代码示例:

python3 -m metagpt.roles.researcher "tensorflow vs. pytorch"

多个Agent

组合智能体的操作例子,比如斯坦福小镇,我的世界这些…

使 Docker 安

安装方面还是挺简单的,首先的话确保你安装了Docker,然后你需要修改一下config2.yaml来确保你选择基准的LLM模型。


# Step 1: Download metagpt official image and prepare config2.yamldocker pull metagpt/metagpt:latestmkdir -p /opt/metagpt/{config,workspace}docker run --rm metagpt/metagpt:latest cat /app/metagpt/config/config2.yaml > /opt/metagpt/config/config2.yamlvim /opt/metagpt/config/config2.yaml # Change the config  
  
# Step 2: Run metagpt demo with containerdocker 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"  
  
# You can also start a container and execute commands in itdocker run --name metagpt -d \    --privileged \    -v /opt/metagpt/config/config2.yaml:/app/metagpt/config/config2.yaml \    -v /opt/metagpt/workspace:/app/metagpt/workspace \    metagpt/metagpt:latest  
  
docker exec -it metagpt /bin/bashmetagpt "Write a cli snake game"

支持的模型api非常多,我使用了 gpt3.5和最新的LLama3 70B,获取API: 6种免费使用Llama3
70B的方法及英伟达提供的免费API接口调用!



我们可以在这个文件夹下找到config2.yaml

/opt/metagpt/config/

LLam3 70B是这样配置的:

获取Gpt3.5免费API: 利用免登录 ChatGPT Web 提供的无限制免费GPT-3.5-Turbo API 服务

在该文件夹下可以看到它生成的项目,我用它生成了贪吃蛇,还有时钟摆动的一些项目

/opt/metagpt/workspace/

如何建立自己的Agents?

智能体

学术界和工业界对术语“智能体”提出了各种定义。大致来说,一个智能体应具备类似人类的思考和规划能力,拥有记忆甚至情感,并具备一定的技能以便与环境、智能体和人类进行交互。

智能体 = 大语言模型(LLM) + 观察 + 思考 + 行动 + 记忆

这个公式概括了智能体的功能本质。为了理解每个组成部分,让我们将其与人类进行类比:

大语言模型(LLM):LLM作为智能体的“大脑”部分,使其能够处理信息,从交互中学习,做出决策并执行行动。

观察:这是智能体的感知机制,使其能够感知其环境。智能体可能会接收来自另一个智能体的文本消息、来自监视摄像头的视觉数据或来自客户服务录音的音频等一系列信号。这些观察构成了所有后续行动的基础。

思考:思考过程涉及分析观察结果和记忆内容并考虑可能的行动。这是智能体内部的决策过程,其可能由LLM进行驱动。

行动:这些是智能体对其思考和观察的显式响应。行动可以是利用 LLM
生成代码,或是手动预定义的操作,如阅读本地文件。此外,智能体还可以执行使用工具的操作,包括在互联网上搜索天气,使用计算器进行数学计算等。

记忆:智能体的记忆存储过去的经验。这对学习至关重要,因为它允许智能体参考先前的结果并据此调整未来的行动。

多智能体

多智能体系统可以视为一个智能体社会,其中

多智能体 = 智能体 + 环境 + 标准流程(SOP) + 通信 + 经济

这些组件各自发挥着重要的作用:

智能体:在上面单独定义的基础上,在多智能体系统中的智能体协同工作,每个智能体都具备独特有的LLM、观察、思考、行动和记忆。

环境:环境是智能体生存和互动的公共场所。智能体从环境中观察到重要信息,并发布行动的输出结果以供其他智能体使用。

标准流程(SOP):这些是管理智能体行动和交互的既定程序,确保系统内部的有序和高效运作。例如,在汽车制造的SOP中,一个智能体焊接汽车零件,而另一个安装电缆,保持装配线的有序运作。

通信:通信是智能体之间信息交流的过程。它对于系统内的协作、谈判和竞争至关重要。

经济:这指的是多智能体环境中的价值交换系统,决定资源分配和任务优先级。

一个例子

这是一个简单的例子,展示了智能体如何工作:

在环境中,存在三个智能体Alice、Bob和Charlie,它们相互作用。

他们可以将消息或行动的输出结果发布到环境中,同时也会被其他智能体观察到。

下面将揭示智能体Charlie的内部过程,该过程同样适用于Alice和Bob。

在内部,智能体Charlie具备我们上述所介绍的部分组件,如LLM、观察、思考、行动。Charlie思考和行动的过程可以由LLM驱动,并且还能在行动的过程中使用工具。

Charlie观察来自Alice的相关文件和来自Bob的需求,获取有帮助的记忆,思考如何编写代码,执行写代码的行动,最终发布结果。

Charlie通过将结果发布到环境中以通知Bob。Bob在接收后回复了一句赞美的话。

现在你对这些概念有了初步了解。随时进行下一步的学习,了解MetaGPT是如何为你构建智能体并为其动态提供框架支持的。

智能体实践

通过以下命令运行以及Colab笔记

python3 examples/build_customized_agent.py--msg "write a function that calculates the sum of a list"


https://colab.research.google.com/drive/1SF3bJiDjKw6Xwnz2Rf0j8Hc0U4KsSB2L?usp=sharing

参考链接

https://github.com/geekan/MetaGPT

https://docs.deepwisdom.ai/main/zh/guide/get_started/configuration/llm_api_configuration.html

https://docs.deepwisdom.ai/main/en/guide/get_started/installation.html#install-
with-docker

https://docs.deepwisdom.ai/main/zh/guide/tutorials/concepts.html

** 点这里 👇 关注我,记得标星哦~ **

**
**

一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见 ~

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

XV6源码阅读——页表

文章目录 前言分页硬件实际转换 内核地址空间 前言 一个本硕双非的小菜鸡,备战24年秋招。打算尝试6.S081,将它的Lab逐一实现,并记录期间心酸历程。 代码下载 官方网站:6.S081官方网站 分页硬件 RISC-V指令(用户和内…

一款支持串口、网口自定义协议的调试软件

ComMax通讯调试软件是一款支持自定义串口,网口通讯协议的调试软件,用户可以根据需要,自定义协议包,然后根据接受的数据选择要发送的数据包。是一款强大、好用的调试软件。 点击下载 提取码:wmfg 不用安装 下载解压即…

LMbench单独执行某一个组件 | benchmark教程

LMbench官网 > https://lmbench.sourceforge.net/man/ 下载源码,编译得到的Benchmark是由很多文件组成的,上面的链接中官方给出了每个组件的各参数的含义,可以对照着修改使用,以达到测试在某个组件上表现的作用。 以bw_mem为例…

代码随想录第43天|1049.最后一块石头的重量II 494. 目标和

1049.最后一块石头的重量II 1049. 最后一块石头的重量 II - 力扣(LeetCode) 代码随想录 (programmercarl.com) 动态规划之背包问题,这个背包最多能装多少?LeetCode:1049.最后一块石头的重量II_哔哩哔哩_bilibili 有…

虚拟局域网PPTP配置与验证

虚拟局域网PPTP配置与验证 前言PPTP服务侧安装配置REF 前言 虚拟专用网(Virtual Private Network,VPN)是一种通过公共网络建立安全的连接的技术。它能够在不同的地理位置之间建立私密的通信通道,实现远程访问网络资源的安全性和隐…

QCC3040/QCC3056/QCC3086/QCCXXX发射(TX SOURCE)AUX/USB发射A2DP音乐/HFP通话

之前写过几篇USB 发射的文章,如下链接,现在在通话的基础上增加新的玩法。 https://blog.csdn.net/TengTaiTech/article/details/137339630?spm1001.2014.3001.5501 https://blog.csdn.net/TengTaiTech/article/details/137790676?spm1001.2014.3001.55…

论文解读:(VPT)Visual Prompt Tuning

文章汇总 要解决的问题 大型模型应用于下游任务本身就存在挑战。最明显的(通常也是最有效的)适应策略是对预先训练好的模型进行全面的端到端微调。 动机 只微调参数的一个子集 解决的办法 只在输入空间中引入少量特定于任务的可学习参数,而在下游训练期间冻结…

Attention和Transformer灵魂七问

1. 引言 最近,ChatGPT和其他聊天机器人将大语言模型LLMs推到了风口浪尖。这就导致了很多不是学ML和NLP领域的人关注并学习attention和Transformer模型。在本文中,我们将针对Transformer模型结构提出几个问题,并深入探讨其背后的技术理论。这…

出海企业必备:Zoho Desk打造高效海外工单管理体系!

出海工单系统和常见的工单系统相比有什么不同呢?工单系统主要事帮助售前或者售后人员记录、处理、跟踪客户需求,不仅有利于企业内部管理的规范化,还能够有效提高客户服务质量。 工单系统可以帮助出海企业搭建统一的订单管理、售后服务、甚至…

Java多线程交替打印

多线程交互 在Java中,可以使用synchronized关键字或者java.util.concurrent包中的工具来实现多线程交替打印。以下是一个使用synchronized关键字的示例: public class AlternatePrinting {private static final Object lock new Object();private sta…

AES和RSA加解密算法学习笔记(实战版)

1. 写在前面 今天整理一篇有关密码学的学习笔记,原因是最近做的一个任务是在网络传输的时候,需要对传输的包进行加密和解密工作,以保证传输过程的安全性。所以,这个过程用到了AES和RSA两个算法。 场景:假设我要给我的老师传送毕设代码和论文, 我已经把代码和论文打成了一…

Giants Planet 宣布推出符文,建立在坚实价值的基础上

这是一项旨在释放我们不断发展的生态系统全部潜力的新功能。符文提供了一种更简单的方法来创建通证,这些通证可以从比特币区块链的安全性和去中心化中获益。 符文:建立在坚实的基础上 可以将比特币视为存储贵重物品的安全保险库。 符文就像保险库中的特…

Idea:阿里巴巴Java编码插件

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 一、Alibaba Java Coding Guidelines插件介绍 二、使用步骤 总结 提示:以下是本篇文章正文内容,下面案例可供参考 一、Alibaba Java Coding …

微软如何打造数字零售力航母系列科普02 --- 微软低代码应用平台加速企业创新 - 解放企业数字零售力

微软低代码应用平台推动企业创新- 解放企业数字零售力 微软在2023年GARTNER发布的魔力象限图中处于头部领先(leader)地位。 其LCAP产品是Microsoft Power Apps,扩展了AI Builder、Dataverse、Power Automate和Power Pages,这些都包…

计算机网络实验——学习记录五(TCP协议2)

一、TCP协议重传机制 TCP协议是一种面向连接、可靠的传输层协议。为了保证数据的可靠传输,TCP采用数据包重传的机制来应对网络传输过程中可能出现的丢包、错包和乱序等问题。 TCP协议的重传包括超时重传、快速重传、带选择确认SACK的重传和重复SACK重传四种。 二、…

基于JavaWeb手工艺品购物系统的设计与实现

1、系统演示视频(演示视频) 2、需要请联系

实现游戏地图读取与射击运行

射击代码来源自2D 横向对抗射击游戏(by STF) - CodeBus 地图读取改装自 瓦片地图编辑器 解决边界检测,实现使用不同像素窗口也能移动不闪退-CSDN博客 // 程序:2D RPG 地图编辑器改游戏读取器 // 作者:民用级脑的研发…

HarmonyOS ArkUI实战开发-网页加载(Web)

移动应用开发中,网页使用的场景非常多,比如在APP内安排一个优惠活动啥的,就可以直接加载一个H5页面高效并且及时,也省去了使用原生开发要升级版本的麻烦,ArkUI开发框架提供了 Web 组件来加载一个网页,本节笔…

音频文件太大了怎么办?如何实现音乐内存压缩?超实用的音频压缩技巧分享给你

一,我们需要了解音乐文件是如何存储的。 音乐文件通常以数字格式存储,如 MP3、WAV、FLAC等。这些格式各有优缺点,但共同点是它们都需要占用一定的存储空间。文件大小取决于多个因素,包括音频质量、编码格式和采样率等。因此&…

网盘_游戏_博客自动化部署(Nginx多项目部署)

目录 一.前提介绍 二.环境介绍 三.自述(脚本) 四.关于Nginx多项目部署 一.前提介绍 在我之前的博客里详细介绍了上述项目的部署,那么如何使用简单脚本自动部署和使用Nginx多项目部署是本文来介绍的基础篇章。 二.环境介绍 CentOS Linux…