【多智能体】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

相关文章

Python pandas库自学超详细教程

《Pythonpandas库自学超详细教程》文章介绍了Pandas库的基本功能、安装方法及核心操作,涵盖数据导入(CSV/Excel等)、数据结构(Series、DataFrame)、数据清洗、转换... 目录一、什么是Pandas库(1)、Pandas 应用(2)、Pandas 功能(3)、数据结构二、安

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Python标准库之数据压缩和存档的应用详解

《Python标准库之数据压缩和存档的应用详解》在数据处理与存储领域,压缩和存档是提升效率的关键技术,Python标准库提供了一套完整的工具链,下面小编就来和大家简单介绍一下吧... 目录一、核心模块架构与设计哲学二、关键模块深度解析1.tarfile:专业级归档工具2.zipfile:跨平台归档首选3.

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

深入浅出SpringBoot WebSocket构建实时应用全面指南

《深入浅出SpringBootWebSocket构建实时应用全面指南》WebSocket是一种在单个TCP连接上进行全双工通信的协议,这篇文章主要为大家详细介绍了SpringBoot如何集成WebS... 目录前言为什么需要 WebSocketWebSocket 是什么Spring Boot 如何简化 We

Java Stream流之GroupBy的用法及应用场景

《JavaStream流之GroupBy的用法及应用场景》本教程将详细介绍如何在Java中使用Stream流的groupby方法,包括基本用法和一些常见的实际应用场景,感兴趣的朋友一起看看吧... 目录Java Stream流之GroupBy的用法1. 前言2. 基础概念什么是 GroupBy?Stream

python中列表应用和扩展性实用详解

《python中列表应用和扩展性实用详解》文章介绍了Python列表的核心特性:有序数据集合,用[]定义,元素类型可不同,支持迭代、循环、切片,可执行增删改查、排序、推导式及嵌套操作,是常用的数据处理... 目录1、列表定义2、格式3、列表是可迭代对象4、列表的常见操作总结1、列表定义是处理一组有序项目的

Debian系和Redhat系防火墙配置方式

《Debian系和Redhat系防火墙配置方式》文章对比了Debian系UFW和Redhat系Firewalld防火墙的安装、启用禁用、端口管理、规则查看及注意事项,强调SSH端口需开放、规则持久化,... 目录Debian系UFW防火墙1. 安装2. 启用与禁用3. 基本命令4. 注意事项5. 示例配置R

C#中的Converter的具体应用

《C#中的Converter的具体应用》C#中的Converter提供了一种灵活的类型转换机制,本文详细介绍了Converter的基本概念、使用场景,具有一定的参考价值,感兴趣的可以了解一下... 目录Converter的基本概念1. Converter委托2. 使用场景布尔型转换示例示例1:简单的字符串到