MetaGPT前期准备与快速上手

大家好,MetaGPT 是基于大型语言模型(LLMs)的多智能体协作框架,GitHub star数量已经达到31.3k+。
接下来我们聊一下快速上手

这里写目录标题

      • 一、环境搭建
        • 1.python 环境
        • 2. MetaGpt 下载
      • 二、MetaGPT配置
        • 1.调用 ChatGPT API 服务
        • 2.简单使用
          • 二十一点游戏
          • 贪吃蛇游戏

一、环境搭建

python 环境最好是 3.9

1.python 环境

利用 anaconda 创建 python3.9 的虚拟环境

conda create -n python39 python-3.9
2. MetaGpt 下载
git clone https://github.com/geekan/MetaGPT.git
cd /your/path/to/MetaGPT
pip install -e .

也可以采取以下方式

pip install metagpt
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple metagpt==0.5.2
pip install git+https://github.com/geekan/MetaGPT

二、MetaGPT配置

1.调用 ChatGPT API 服务

API 可以在万能的某宝上获取,再次就不多赘述。在此主要想和大家聊了聊怎么调用 AIP

在此之前我们需要:

  • 安装 openai
pip install --upgrade openai
  • 获取 API 密钥 (某宝,文章最后有介绍方法)
  • 配置 python 科学代理

【控制面板】->【网络和Internet】->【Internet选项】->【连接】->【局域网设置】

之后在python里运行下方的代码,将冒号内的内容改为上图红色框框里的地址。

os.environ["http_proxy"] = "http://127.0.0.1:7890"
os.environ["https_proxy"] = "http://127.0.0.1:7890"

如下图

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

打开我们亲爱的 jupyter (也而已是 pycharm) 运行 简单的测试代码

import os
from openai import OpenAIos.environ["http_proxy"] = "http://127.0.0.1:7890"
os.environ["https_proxy"] = "http://127.0.0.1:7890"os.environ["OPENAI_API_KEY"] = "sk-*****"client = OpenAI()completion = client.chat.completions.create(model="gpt-3.5-turbo",messages=[{"role": "system", "content": "You are a poetic assistant, skilled in explaining complex programming concepts with creative flair."},{"role": "user", "content": "Compose a poem that explains the concept of recursion in programming."}]
)print(completion.choices[0].message)

得到以下输出, 调用API成功。

在这里插入图片描述

2.简单使用

接下来通过二十一点和贪吃蛇两个游戏来带大家简单运用一些 MetaGpt

二十一点游戏

该代码在 jupter 运行

代码如下

import asyncio
from metagpt.roles import (Architect,Engineer,ProductManager,ProjectManager,
)
from metagpt.team import Teamimport os
from openai import OpenAIos.environ["http_proxy"] = "http://127.0.0.1:7890"
os.environ["https_proxy"] = "http://127.0.0.1:7890"os.environ["OPENAI_API_KEY"] = "sk-*
async def startup(idea: str):company = Team()company.hire([ProductManager(),Architect(),ProjectManager(),Engineer(),])company.invest(investment=3.0)company.start_project(idea=idea)await company.run(n_round=5)
await startup(idea="write a cli blackjack game")

这段代码体现了 MetaGPT 的设计理念,该设计理念认为每个项目都可以抽象为一个标准流程(SOP)。在这个 SOP 下,不同的角色(Role)负责项目的不同方面,组成一个项目组(Team),共同完成项目。在上述代码中,MetaGPT 利用了 ProductManager、Architect、ProjectManager 和 Engineer 四个角色组成了一个项目组(Team),并共同完成了一个游戏开发任务。

metagpt生成了所有的设计文件和代码框架。

在这里插入图片描述

贪吃蛇游戏

接下来我们在 终端 运行

1.首先修改配置文件,拷贝样例配置 config.yaml 中的内容到你的新文件中,然后添加一下内容

OPENAI_BASE_URL: "https://api.openai.com/v1"
OPENAI_PROXY: "http://127.0.0.1:7890"
OPENAI_API_KEY: "sk-***"  # set the value to sk-xxx if you host the openai interface for open llm model
OPENAI_API_MODEL: "gpt-3.5-turbo"
# OPENAI_API_MODEL: "gpt-4-1106-preview"
MAX_TOKENS: 1500
RPM: 10
TIMEOUT: 60 # Timeout for llm invocation

2.然后再终端运行

metagpt "写一个贪吃蛇游戏"

在这里插入图片描述

就会在终端显示思路和代码,随后我们可以在 workspace 目录下看到游戏的全部代码

在这里插入图片描述

运行

MetaGPT\workspace\game_snake\game_snake> python .\main.py

启动!

在这里插入图片描述


在这里讲一讲 openai api key 的获取方法

在获取OpenAI API key之前我们需要openai官网中注册一个账号。这里假设我们已经有了openai账号,先在openai官网登录,然后选择API。(如下图)

在这里插入图片描述

在OPENAI的API官网首页左侧边栏找到API keys,点击进入:

在这里插入图片描述

点击 Create new secret key

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/344237.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

手机扫一扫文档、证件表格就能打印,不用专门找扫描软件啦

现在各大品牌的手机扫一扫功能都可以满足扫描文档、扫描表格的功能,平常如果需要将纸质文件扫描成电子档,拿起手机就可以实现。文件签名后再扫描成PDF版本,相信大家都用得不少了。 今天就用华为手机的扫一扫给大家示范一下如何将文档、证件、…

设计模式—行为型模式之状态模式

设计模式—行为型模式之状态模式 状态(State)模式:对有状态的对象,把复杂的“判断逻辑”提取到不同的状态对象中,允许状态对象在其内部状态发生改变时改变其行为。 状态模式包含以下主要角色: 环境类&am…

Kafka配置Kerberos安全认证及与Java程序集成

Background 本文主要介绍在 Kafka 中如何配置 Kerberos 认证,以及 java 使用 JAAS 来进行 Kerberos 认证连接。本文演示为单机版。 所用软件版本 查看 Kerberos 版本命令:klist -V 软件名称版本jdk1.8.0_202kafka2.12-2.2.1kerberos1.15.1 1、Kerberos …

【STM32】STM32学习笔记-串口发送和接收(27)

00. 目录 文章目录 00. 目录01. 串口简介02. 串口相关API2.1 USART_Init2.2 USART_InitTypeDef2.3 USART_Cmd2.4 USART_SendData2.5 USART_ReceiveData 03. 串口发送接线图04. USB转串口模块05. 串口发送程序示例06. 串口发送支持printf07. 串口发送支持printf_v208.09.10. 01.…

Linux网络基础及bonding实际操作

1.查看linux基础的网络配置 网关:route -n ip地址:ifconfig 或 ip a DNS服务器:cat /etc/resolv.conf 主机名:hostname 路由:route -n 网络连接状态:ss 或 netstat 2.临时修改网卡名称 3.永久修…

在全志T113-i平台上实现H.265视频解码步骤详解

H.265,也被称为HEVC(HighEfficiency Video Coding),作为H.264的继任者,提供了更好的视频压缩和更高的视频质。H.265通过引入更多先进的编码技术,如更强大的运动估计和更高效的变换编码,对比H.264进行了改进。这些改进使…

宏景eHR 多处 SQL注入漏洞复现

0x01 产品简介 宏景eHR人力资源管理软件是一款人力资源管理与数字化应用相融合,满足动态化、协同化、流程化、战略化需求的软件。 0x02 漏洞概述 宏景eHR view、trainplan_tree.jsp等接口处存在SQL注入漏洞,未经过身份认证的远程攻击者可利用此漏洞执行任意SQL指令,从而窃…

Python web自动化测试框架搭建(功能接口)——通用模块

1、通用模块: config.conf: 公共配置文件,配置报告、日志、截图路径,以及邮件相关配置 [report] reportpath E:\workspace\WebAutomation\src\functiontest\Report\2017-07-18 screen_path E:\workspace\WebAutomation\src\functiontest\R…

vue上传文件加进度条,fake-progress一起使用

el-upload上传过程中加进度条,进度条el-progress配合fake-progress一起使用,效果如下: 安装 npm install fake-progress 在用到的文件里面引用 import Fakeprogress from "fake-progress"; 这个进度条主要是假的进度条&#xff…

数字信号处理 唐向宏著 pdf +课后答案 免费下载

数字信号处理——原理、实现与仿真 pdf 唐向宏著 +课后答案 杭州电子科技大学 费劲心思在网上花钱买的,共享给大家 永久链接:https://wwi.lanzoup.com/b0140pf4f 密码:aflj 里面除了有原书PDF,还有课后题答案

OpenHarmony——基于HDF驱动框架构建的Display驱动模型

概述 功能简介 LCD(Liquid Crystal Display)驱动编程,通过对显示器上电、初始化显示器驱动IC(Integrated Circuit)内部寄存器等操作,使其可以正常工作。 基于HDF(Hardware Driver Foundation…

数字化新时代,智慧社区再升级:低代码平台助您轻松打造

随着科技的飞速发展,社区的数字化转型已成为大势所趋。党的二十大报告提出,要“完善网格化管理、精细化服务、信息化支撑的基层治理平台,健全城乡社区治理体系”,更是为社区数字化建设,打造智慧社区指明了方向和路径。…