wow agent day13 metagpt尝鲜

Reference：Datawhale wow agent day13

智能体

在 MetaGPT 看来，可以将智能体想象成环境中的数字人，其中

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

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

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

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

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

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

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

多智能体

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

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

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

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

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

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

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

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

任务

对于每一个任务，至少要明确两点：目标和期望。目标和期望都可以用自然语言去描述。

其他需要明确的是 上下文、回调、输出、使用的工具。

回调可以是一个 python 函数。使用的工具可以是一个 python 列表。

你可以用 pydantic 去约束输出的合适。把大模型的模糊输出变为强制结构化输出。

工具

一个常用的工具就是搜索引擎。例如谷歌的 serper。国内的替代品是什么？

还有爬虫工具

新建一个 Jupyter notebook，把下面的代码拷贝进去

Copy
import asyncio
from metagpt.roles import (
Architect,
Engineer,
ProductManager,
ProjectManager,
)
from metagpt.team import Team
async def startup(idea: str):
company = Team()
company.hire(
[
ProductManager(),
Architect(),
ProjectManager(),
Engineer(),
]
)
company.invest(investment=3.0)
company.run_project(idea=idea)

await company.run(n_round=5)

在上面的代码中，我们直接用默认的角色即可。这些角色都要做什么动作都已经写好了，直接拿过来用。

然后执行下面这行代码，开始干活：

Copy
|Python await startup(idea="开发一个刷题程序")|
| :- |