【多智能体】MetaGPT配置教程(应用智谱AI的GLM-4)

2024-02-29 11:52

本文主要是介绍【多智能体】MetaGPT配置教程(应用智谱AI的GLM-4),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

MetaGPT配置教程(使用智谱AI的GLM-4)

文章目录

  • MetaGPT配置教程(使用智谱AI的GLM-4)
    • 零、为什么要学MetaGPT
    • 一、配置环境
    • 二、克隆代码仓库
    • 三、设置智谱AI配置
    • 四、 示例demo(狼羊对决)
    • 五、参考链接

零、为什么要学MetaGPT

  • 因为MetaGPT是 LLM Agent领域第一高分论文,全网Star数最高的多智能体框架。ICLR 2024 Oral 🙌

ICLR 2024录用结果公布:MetaGPT 的论文 《MetaGPT: Meta Programming for A Multi-Agent Collaborative Framework》将被展示为Oral(口头报告)。这一荣誉仅占全部提交论文中的1.2%,并且位列LLM-based Agent 关键字第一!

  • 因为可以当帕鲁LLM老板:输入一句话的老板需求,输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等。

在这里插入图片描述

  • 因为报名了Datawhale的组队学习。(正解)

说了再多也得从环境配置开始…

一、配置环境

创建一个新的conda环境并激活它:

conda create -n for_meta python==3.11
conda activate for_meta

检查Python版本以确保它大于3.9:

python --version

二、克隆代码仓库

然后,从GitHub上克隆MetaGPT的最新代码仓库:

git clone https://github.com/geekan/MetaGPT.git
cd MetaGPT

然后,使用pip安装仓库中的代码:

pip install -e .

但是现在的MetaGPT更新飞快,兴许以后的版本就不同了。所以先确定下现在的版本。

pip show metagpt # Version: 0.7.2

三、设置智谱AI配置

安装之后,可以新建一个项目目录来检索默认的配置文件地址。

from metagpt.const import DEFAULT_WORKSPACE_ROOT, METAGPT_ROOT, OPTIONS
default_yaml_file = METAGPT_ROOT / "config/config.yaml"
print(METAGPT_ROOT / "config/config.yaml")

我们输出的是在MetaGPT的源码目录中config/config2.yaml文件,我们在此设置智谱AI的配置。
修改为以下内容:

llm:api_type: 'zhipuai'api_key: 'Your api key....'model: 'glm-4'

确保将api_key替换为您的智谱AI API密钥。

新注册有百万token,具体可以从这里智谱AI开放平台查看。
(要是有邀请码,邀请别人送token就好了…)

四、 示例demo(狼羊对决)

实际上就是角色扮演

from metagpt.team import Team
from metagpt.roles import Role
from metagpt.environment import Environment
from metagpt.actions import Action
import asyncioaction1 = Action(name="喜羊羊说", instruction="批驳别人想法,表明你的创新发明并带有情感,不要重复。")
action2 = Action(name="灰太狼说", instruction="批驳别人想法,表明你的创新发明并带有情感,不要重复。")honglong = Role(name="喜羊羊", profile="羊村发明家",goal="赢得青青草原最强发明产品", actions=[action1], watch=[action2])
bob = Role(name="灰太狼", profile="狼堡发明家",goal="赢得青青草原最强发明产品", actions=[action2], watch=[action1])env = Environment(desc="最强发明评选大赛")team = Team(investment=10.0, env=env, roles=[honglong, bob])asyncio.run(team.run(idea="主题:实用性与美观性。每条消息不超过4句话。", send_to="喜羊羊", n_round=5))
# 这里设置的n_round=5是指两个人一共对话的次数是5个回合。

Tip:如果你遇到ModuleNotFoundError: No module named 'pwd'的错误,请将import pwd移动到使用它的位置。借鉴群里的图。

在这里插入图片描述

至此,我们就可以直接运行代码,得到如下输出结果。
一共对话5次,中途发生了一点点的网络问题,不过问题不大,依旧能继续执行下去。

请添加图片描述

五、参考链接

  1. 论文地址:https://arxiv.org/abs/2308.00352
  2. 代码仓库:https://github.com/geekan/MetaGPT
  3. 官方文档:https://docs.deepwisdom.ai/zhcn/guide/get_started/introduction.html
  4. Datawhale学习仓库:https://github.com/datawhalechina/hugging-multi-agent

这篇关于【多智能体】MetaGPT配置教程(应用智谱AI的GLM-4)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/758690

相关文章

Elasticsearch 在 Java 中的使用教程

《Elasticsearch在Java中的使用教程》Elasticsearch是一个分布式搜索和分析引擎,基于ApacheLucene构建,能够实现实时数据的存储、搜索、和分析,它广泛应用于全文... 目录1. Elasticsearch 简介2. 环境准备2.1 安装 Elasticsearch2.2 J

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

SpringCloud动态配置注解@RefreshScope与@Component的深度解析

《SpringCloud动态配置注解@RefreshScope与@Component的深度解析》在现代微服务架构中,动态配置管理是一个关键需求,本文将为大家介绍SpringCloud中相关的注解@Re... 目录引言1. @RefreshScope 的作用与原理1.1 什么是 @RefreshScope1.

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

SpringBoot日志配置SLF4J和Logback的方法实现

《SpringBoot日志配置SLF4J和Logback的方法实现》日志记录是不可或缺的一部分,本文主要介绍了SpringBoot日志配置SLF4J和Logback的方法实现,文中通过示例代码介绍的非... 目录一、前言二、案例一:初识日志三、案例二:使用Lombok输出日志四、案例三:配置Logback一

springboot security之前后端分离配置方式

《springbootsecurity之前后端分离配置方式》:本文主要介绍springbootsecurity之前后端分离配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的... 目录前言自定义配置认证失败自定义处理登录相关接口匿名访问前置文章总结前言spring boot secu

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

一文详解SpringBoot响应压缩功能的配置与优化

《一文详解SpringBoot响应压缩功能的配置与优化》SpringBoot的响应压缩功能基于智能协商机制,需同时满足很多条件,本文主要为大家详细介绍了SpringBoot响应压缩功能的配置与优化,需... 目录一、核心工作机制1.1 自动协商触发条件1.2 压缩处理流程二、配置方案详解2.1 基础YAML

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则