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 级别中随机选择的数学问题。
基于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.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 # Change the config
# Step 2: Run metagpt demo with container
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"
# You can also start a container and execute commands in it
docker 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/bash
metagpt "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
— 完 —
点这里👇关注我,记得标星哦~
一键三连「分享」、「点赞」和「在看」
科技前沿进展日日相见 ~