欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 名人名企 > AI Agent工程师认证-学习笔记(3)——【多Agent】MetaGPT

AI Agent工程师认证-学习笔记(3)——【多Agent】MetaGPT

2025/4/13 5:50:54 来源:https://blog.csdn.net/qq_74869852/article/details/140939756  浏览:    关键词:AI Agent工程师认证-学习笔记(3)——【多Agent】MetaGPT

学习链接:【多Agent】MetaGPT学习教程

源代码链接(觉得很好,star一下):GitHub - 基于MetaGPT的多智能体入门与开发教程

MetaGPT链接:GitHub - MetaGPT

前期准备

        1、获取MetaGPT

(1)使用pip获取MetaGPT

pip install metagpt==0.6.6#或者在国内加速安装镜像
#pip install -i https://pypi.tuna.tsinghua.edu.cn/simple metagpt==0.6.6

(2)通过github仓库获取MetaGPT

#如果要获取指定版本的MetaGPT,可以自行选择不同的分支与tag
git clone https://github.com/geekan/MetaGPT.git
cd /your/path/to/MetaGPT
pip install -e .

        2、配置MetaGPT

 (以配置ChatGPT为例)

        与我们在 chatgpt 官网使用的所见即所得的 chat 功能不同,在使用metagpt时我们需要确保自己能够使用 openai的 api 服务,OpenAI API 服务是付费的,每一个开发者都需要首先获取并配置 OpenAI API Key,才能在自己构建的应用中访问 ChatGPT。

命令行执行:

export OPENAI_API_KEY="sk-..."  填入你自己的OpenAI API key
export OPENAI_API_MODEL="intended model" 选择你要使用的模型,例如:gpt-4, gpt-3.5-turbo

或者在代码中使用os库来将自己的OpenAI API key设定为环境变量来使用OpenAI API 服务:

import os
os.environ["OPENAI_API_KEY"] = "sk-..."  # 填入你自己的OpenAI API key
os.environ["OPENAI_API_MODEL"] = "intended model" # 选择你要使用的模型,例如:gpt-4, gpt-3.5-turbo
os.environ["OPENAI_API_BASE"] = "https://api.openai-forward.com/v1"

同时MetaGPT还提供了利用config.yaml文件来配置OpenAI API服务的方法

  1. 在当前项目的工作目录下,新建一个文件夹config并在该文件夹下添加一个config.yamlkey.yaml文件

  2. 拷贝样例配置 config.yaml 中的内容到你的新文件中。

  3. 在新文件内设置自己的OPENAI API KEY配置

OPENAI_API_KEY:"sk-..."
YOUR_API_KEYOPENAI_API_MODEL:"intended model" # gpt-4, gpt-3.5-turbo, etc.

        记住:如果你按照通过github仓库获取MetaGPT,config/config.yaml已经存在于目录中。只需要直接进行配置,或拷贝一个新文件 config/key.yaml 并进行配置。 这样你就不会因为不小心提交了API KEYT而导致泄露。

MetaGPT将会按照下述优先级来读取你的配置:

config/key.yaml > config/config.yaml > environment variable

        我们也可以配置其他LLM大模型的API,这里只是以ChatGPT为例进行配置。 

        3、首次尝试 

        代码中创建了两个角色,分别代表民主党候选人Alex和共和党候选人Bob。他们将在一个名为"US election live broadcast"的环境中进行对话。您的代码还定义了两个动作,分别是"AlexSay"和"BobSay",以及一个团队,其中包括了这两个角色。目标是模拟两位候选人在直播环境中就气候变化这一话题进行对话。这将有助于模拟候选人在现实选举中的表现和对话。 

import asynciofrom metagpt.actions import Action
from metagpt.environment import Environment
from metagpt.roles import Role
from metagpt.team import Teamaction1 = Action(name="AlexSay", instruction="Express your opinion with emotion and don't repeat it")
action2 = Action(name="BobSay", instruction="Express your opinion with emotion and don't repeat it")
alex = Role(name="Alex", profile="Democratic candidate", goal="Win the election", actions=[action1], watch=[action2])
bob = Role(name="Bob", profile="Republican candidate", goal="Win the election", actions=[action2], watch=[action1])
env = Environment(desc="US election live broadcast")
team = Team(investment=10.0, env=env, roles=[alex, bob])asyncio.run(team.run(idea="Topic: climate change. Under 80 words per message.", send_to="Alex", n_round=5))

智能体综述及多智能体框架介绍

        1、AI Agent体系介绍

(1)什么是AI Agent

         Agent(智能体) = 一个设置了一些目标或任务,可以迭代运行的大型语言模型。这与大型语言模型(LLM)在像ChatGPT这样的工具中“通常”的使用方式不同。在ChatGPT中,你提出一个问题并获得一个答案作为回应。而Agent拥有复杂的工作流程,模型本质上可以自我对话,而无需人类驱动每一部分的交互。

——Logan Kilpatrick,OpenAI 开发者关系负责人

        ChatGPT接收单一查询的输入并返回输出,它一次不能完成超过一个任务。而AI Agent则可以自驱的定义工作流程并规划任务进行解决。 

        在 LLM 支持的自主Agent系统中,LLM 充当Agents的大脑,并辅以几个关键组成部分如下:

①规划
  • 子目标和分解:Agents将大型任务分解为更小的、可管理的子目标,从而能够有效处理复杂的任务。

  • 反思和完善:Agents可以对过去的行为进行自我批评和自我反思,从错误中吸取教训,并针对未来的步骤进行完善,从而提高最终结果的质量。

②记忆
  • 短期记忆:我认为所有的上下文学习都是利用模型的短期记忆来学习。

  • 长期记忆:这为Agents提供了长时间保留和回忆(无限)信息的能力,通常是通过利用外部向量存储和快速检索来实现。

③工具使用
  • Agents学习调用外部 API 来获取模型权重中缺失的额外信息(通常在预训练后很难更改),包括当前信息、代码执行能力、对专有信息源的访问等。

(2)智能体用例

 ①概念验证Agent-BabyAGI

Baby AGI 是一个 python 脚本,它使用 OpenAI 和 Pinecone API 以及 LangChain 框架来创建、组织、确定优先级以及执行任务。Baby AGI 背后的过程是,它将使用基于上一个任务结果的预定义目标创建一个任务。

这是通过使用 OpenAI 的自然语言处理 (NLP) 功能实现的,该功能允许系统根据目标创建新任务。它使用 Pinecone 来存储该特定任务的结果并检索上下文,并使用 LangChain 框架来处理决策过程。

②生成Agents模拟
  • 记忆流:是一个长期记忆模块(外部数据库),用自然语言记录智能体经验的完整列表。

  • 检索模型:根据相关性、新近度和重要性,呈现上下文以告知Agents的行为

  • 反射机制:随着时间的推移将记忆合成更高层次的推论,并指导智能体未来的行为。它们是对过去事件的更高层次的总结

  • 规划与反应:将反思和环境信息转化为

③应用层的Moe-多人求解

(3)更多仓库和产品 

        2、多智能体框架介绍

①什么是MetaGPT
②经典案例:软件公司
③更多关于MetaGPT
④其他多智能体框架

单智能体开发

多智能体开发 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词