【AI的未来 - AI Agent系列】【MetaGPT】0. 你的第一个MetaGPT程序

《MetaGPT智能体开发入门》开课,跟着课程,学习MetaGPT智能体开发。

0. 安装MetaGPT

请确保你的系统已安装Python 3.9+。你可以通过以下命令进行检查:

bash 复制代码
python3 --version

下面是具体的安装命令:

  • 安装命令
bash 复制代码
pip install metagpt
  • 如果想安装特定版本
bash 复制代码
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple metagpt==0.5.2
  • 如果想更新最新的版本和使用最新功能
bash 复制代码
pip install git+https://github.com/geekan/MetaGPT
  • 想看源代码,使用源代码
bash 复制代码
git clone https://github.com/geekan/MetaGPT.git
cd /your/path/to/MetaGPT
pip install -e .

1. 配置MetaGPT

这里使用OpenAI API,所以你首先需要有一个OpenAI的Key。

配置的内容包括三个:

  • OPENAI_API_KEY:你的OpenAI Key
  • OPENAI_API_MODEL:将要使用的大模型,例如"gpt-3.5-turbo"
  • OPENAI_API_BASE:服务地址,如果用中转服务,必填

下面将配置的内容加入工程中。MetaGPT官方提供的配置方式有3种:

  • 环境变量
  • config/key.yaml
  • config/config.yaml

MetaGPT将会按照下述优先级来读取你的配置:config/key.yaml > config/config.yaml > environment variable

我这里使用环境变量的方式。

(1)创建一个工程目录 MyMetaGPT,用VSCode打开

(2)新建一个.env文件,将以上配置填加到该文件中

在Python文件(MetaGPT_test.py)中将该.env文件设置的内容加载到环境变量中:

python 复制代码
# 加载 .env 到环境变量
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())

2. 运行第一个MetaGPT程序

我们将创建一个多智能体团队,根据我们的一句话需求编写一个二十一点的游戏软件。

(1)导入已实现的角色

python 复制代码
import asyncio
from metagpt.roles import (
    Architect,
    Engineer,
    ProductManager,
    ProjectManager,
)
from metagpt.team import Team

(2)初始化公司团队,配置对应的智能体,设置对应的预算以及提供一个写一个小游戏的需求。

python 复制代码
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)

(3)运行

python 复制代码
asyncio.run(startup(idea="write a cli blackjack game")) # blackjack: 二十一点

运行成功后,可以看到输出结果:

  • 运行过程
  • 运行结束之后在工程目录下会出现一个workspace文件夹,里面就是生成的游戏代码

3. 让我们来看下它写出来的程序怎么样

运行它生成的main.py文件,可以运行成功,然后跟它玩21点游戏,我输了。

功能还是很强大的,整个过程我们只输入了一句话"write a cli blackjack game"。

4. 运行时可能遇到的问题

(1)MetaGPT中用的OpenAI接口好像是<1.0,所以不要安装>1.0的版本,否则无法运行。这就需要Anaconda这样的虚拟环境进行环境隔离,以避免影响到你需要使用openai > 1.0接口的其它项目运行。

(2)运行过程中报错如下,可参考这篇文章解决。

未完待续,请看下篇文章:【AI的未来 - AI Agent系列】【MetaGPT】1. AI Agent如何重构世界

相关推荐
nancy_princess2 小时前
clip实验
人工智能·深度学习
飞哥数智坊3 小时前
TRAE Friends@济南第4次活动:100+极客集结,2小时极限编程燃爆全场!
人工智能
AI自动化工坊3 小时前
ProofShot实战:给AI编码助手添加可视化验证,提升前端开发效率3倍
人工智能·ai·开源·github
飞哥数智坊3 小时前
一场直播涨粉 2 万的背后!OpenClaw + 飞书,正在重塑软件交付的方式
人工智能
飞哥数智坊3 小时前
养虾记第3期:安装、调教、落地,这场沙龙我们全聊了
人工智能
再不会python就不礼貌了3 小时前
从工具到个人助理——AI Agent的原理、演进与安全风险
人工智能·安全·ai·大模型·transformer·ai编程
AI医影跨模态组学3 小时前
Radiother Oncol 空军军医大学西京医院等团队:基于纵向CT的亚区域放射组学列线图预测食管鳞状细胞癌根治性放化疗后局部无复发生存期
人工智能·深度学习·医学影像·影像组学
A尘埃3 小时前
神经网络的激活函数+损失函数
人工智能·深度学习·神经网络·激活函数
没有不重的名么4 小时前
Pytorch深度学习快速入门教程
人工智能·pytorch·深度学习
有为少年4 小时前
告别“唯语料论”:用合成抽象数据为大模型开智
人工智能·深度学习·神经网络·算法·机器学习·大模型·预训练