searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

Meta-GPT可以自己成立软件公司的AI

2023-08-03 03:12:06
93
0

一个名叫MetaGPT的项目在GitHub上爆火,一度冲上热榜第一,目前标星已有8.4k。

这个项目的意义,正是让像GPT-4这样的大模型们自己组建一个软件公司,公司里每个员工都使用prompt进行设定担任不同的角色。

换而言之,从产品经理、架构师、设计产品到写代码的活儿全部由GPT-4等一众包了。

完成一个项目的费用(调用大模型API的费用),确实能被压缩到几美元,仅仅是调用API的费用

安装

传统安装

# 第 1 步:确保您的系统上安装了 NPM。并使用npm安装mermaid-js
npm --version
sudo npm install -g @mermaid-js/mermaid-cli

# 第 2 步:确保您的系统上安装了 Python 3.9+。您可以使用以下命令进行检查:
python --version

# 第 3 步:克隆仓库到您的本地机器,并进行安装。
git clone https://github.com/geekan/metagpt
cd metagpt
python setup.py install
 

Docker安装

# 步骤1: 下载metagpt官方镜像并准备好config.yaml
docker pull metagpt/metagpt:v0.3
mkdir -p /opt/metagpt/{config,workspace}
docker run --rm metagpt/metagpt:v0.3 cat /app/metagpt/config/config.yaml > /opt/metagpt/config/config.yaml
vim /opt/metagpt/config/config.yaml # 修改config

# 步骤2: 使用容器运行metagpt演示
docker run --rm \
    --privileged \
    -v /opt/metagpt/config:/app/metagpt/config \
    -v /opt/metagpt/workspace:/app/metagpt/workspace \
    metagpt/metagpt:v0.3 \
    python startup.py "Write a cli snake game"

# 您也可以启动一个容器并在其中执行命令
docker run --name metagpt -d \
    --privileged \
    -v /opt/metagpt/config:/app/metagpt/config \
    -v /opt/metagpt/workspace:/app/metagpt/workspace \
    metagpt/metagpt:v0.3

docker exec -it metagpt /bin/bash
$ python startup.py "Write a cli snake game"
 

docker run ...做了以下事情:

  • 以特权模式运行,有权限运行浏览器
  • 将主机目录 /opt/metagpt/config 映射到容器目录/app/metagpt/config
  • 将主机目录 /opt/metagpt/workspace 映射到容器目录 /app/metagpt/workspace
  • 执行演示命令 python startup.py "Write a cli snake game"

自己构建镜像

# 您也可以自己构建metagpt镜像
git clone https://github.com/geekan/MetaGPT.git
cd MetaGPT && docker build -t metagpt:v0.3 .
 

配置

  • 在 config/key.yaml / config/config.yaml / env 中配置您的 OPENAI_API_KEY
  • 优先级顺序:config/key.yaml > config/config.yaml > env
# 复制配置文件并进行必要的修改
cp config/config.yaml config/key.yaml
 
变量名 config/key.yaml env
OPENAI_API_KEY # 用您自己的密钥替换 OPENAI_API_KEY: "sk-..." export OPENAI_API_KEY="sk-..."
OPENAI_API_BASE # 可选 OPENAI_API_BASE: "https://<YOUR_SITE>/v1" export OPENAI_API_BASE="https://<YOUR_SITE>/v1"

看来主要难度变成了chatgpt的付费会员购买。

示例:启动一个创业公司

python startup.py "写一个命令行贪吃蛇"
# 开启code review模式会会花费更多的money, 但是会提升代码质量和成功率
python startup.py "写一个命令行贪吃蛇" --code_review True
 

运行脚本后,您可以在 workspace/ 目录中找到您的新项目。

平台或工具的倾向性

可以在阐述需求时说明想要使用的平台或工具。 例如:

python startup.py "写一个基于pygame的命令行贪吃蛇"
 

使用

名称
    startup.py - 我们是一家AI软件创业公司。通过投资我们,您将赋能一个充满无限可能的未来。

概要
    startup.py IDEA <flags>

描述
    我们是一家AI软件创业公司。通过投资我们,您将赋能一个充满无限可能的未来。

位置参数
    IDEA
        类型: str
        您的创新想法,例如"写一个命令行贪吃蛇。"

标志
    --investment=INVESTMENT
        类型: float
        默认值: 3.0
        作为投资者,您有机会向这家AI公司投入一定的美元金额。
    --n_round=N_ROUND
        类型: int
        默认值: 5

备注
    您也可以用`标志`的语法,来处理`位置参数`
 

代码实现

from metagpt.software_company import SoftwareCompany
from metagpt.roles import ProjectManager, ProductManager, Architect, Engineer

async def startup(idea: str, investment: float = 3.0, n_round: int = 5):
    """运行一个创业公司。做一个老板"""
    company = SoftwareCompany()
    company.hire([ProductManager(), Architect(), ProjectManager(), Engineer()])
    company.invest(investment)
    company.start_project(idea)
    await company.run(n_round=n_round)
 

你可以查看examples,其中有单角色(带知识库)的使用例子与仅LLM的使用例子。

笔者曾经测试过AutoGpt,提出一个目标,会专门进行拆分子任务并解决,但是实际测试下来,解决的效率比较低,在单个子任务阶段就卡住了。笔者还曾经针对chatgpt专门测试过代码能力,针对同样的需求,能明显感觉到chatgpt进行了各种网上代码的爬取并加工反馈,不同代码的质量参差,没想到现在经过更新换代,专门化的代码文件可以生成的如此快又好,果然类似人类早先的梦想,让机器打工,在有生之年可以实现了。

言而总之,国内的大模型目前还在赶超chatgpt阶段,最起码是在to C端,还需要持续发力,开源后的迭代速度以及衍生的能力及使用方法,开拓了人类视野,加快了人类科技的进程。

0条评论
作者已关闭评论
wisxz
8文章数
1粉丝数
wisxz
8 文章 | 1 粉丝
原创

Meta-GPT可以自己成立软件公司的AI

2023-08-03 03:12:06
93
0

一个名叫MetaGPT的项目在GitHub上爆火,一度冲上热榜第一,目前标星已有8.4k。

这个项目的意义,正是让像GPT-4这样的大模型们自己组建一个软件公司,公司里每个员工都使用prompt进行设定担任不同的角色。

换而言之,从产品经理、架构师、设计产品到写代码的活儿全部由GPT-4等一众包了。

完成一个项目的费用(调用大模型API的费用),确实能被压缩到几美元,仅仅是调用API的费用

安装

传统安装

# 第 1 步:确保您的系统上安装了 NPM。并使用npm安装mermaid-js
npm --version
sudo npm install -g @mermaid-js/mermaid-cli

# 第 2 步:确保您的系统上安装了 Python 3.9+。您可以使用以下命令进行检查:
python --version

# 第 3 步:克隆仓库到您的本地机器,并进行安装。
git clone https://github.com/geekan/metagpt
cd metagpt
python setup.py install
 

Docker安装

# 步骤1: 下载metagpt官方镜像并准备好config.yaml
docker pull metagpt/metagpt:v0.3
mkdir -p /opt/metagpt/{config,workspace}
docker run --rm metagpt/metagpt:v0.3 cat /app/metagpt/config/config.yaml > /opt/metagpt/config/config.yaml
vim /opt/metagpt/config/config.yaml # 修改config

# 步骤2: 使用容器运行metagpt演示
docker run --rm \
    --privileged \
    -v /opt/metagpt/config:/app/metagpt/config \
    -v /opt/metagpt/workspace:/app/metagpt/workspace \
    metagpt/metagpt:v0.3 \
    python startup.py "Write a cli snake game"

# 您也可以启动一个容器并在其中执行命令
docker run --name metagpt -d \
    --privileged \
    -v /opt/metagpt/config:/app/metagpt/config \
    -v /opt/metagpt/workspace:/app/metagpt/workspace \
    metagpt/metagpt:v0.3

docker exec -it metagpt /bin/bash
$ python startup.py "Write a cli snake game"
 

docker run ...做了以下事情:

  • 以特权模式运行,有权限运行浏览器
  • 将主机目录 /opt/metagpt/config 映射到容器目录/app/metagpt/config
  • 将主机目录 /opt/metagpt/workspace 映射到容器目录 /app/metagpt/workspace
  • 执行演示命令 python startup.py "Write a cli snake game"

自己构建镜像

# 您也可以自己构建metagpt镜像
git clone https://github.com/geekan/MetaGPT.git
cd MetaGPT && docker build -t metagpt:v0.3 .
 

配置

  • 在 config/key.yaml / config/config.yaml / env 中配置您的 OPENAI_API_KEY
  • 优先级顺序:config/key.yaml > config/config.yaml > env
# 复制配置文件并进行必要的修改
cp config/config.yaml config/key.yaml
 
变量名 config/key.yaml env
OPENAI_API_KEY # 用您自己的密钥替换 OPENAI_API_KEY: "sk-..." export OPENAI_API_KEY="sk-..."
OPENAI_API_BASE # 可选 OPENAI_API_BASE: "https://<YOUR_SITE>/v1" export OPENAI_API_BASE="https://<YOUR_SITE>/v1"

看来主要难度变成了chatgpt的付费会员购买。

示例:启动一个创业公司

python startup.py "写一个命令行贪吃蛇"
# 开启code review模式会会花费更多的money, 但是会提升代码质量和成功率
python startup.py "写一个命令行贪吃蛇" --code_review True
 

运行脚本后,您可以在 workspace/ 目录中找到您的新项目。

平台或工具的倾向性

可以在阐述需求时说明想要使用的平台或工具。 例如:

python startup.py "写一个基于pygame的命令行贪吃蛇"
 

使用

名称
    startup.py - 我们是一家AI软件创业公司。通过投资我们,您将赋能一个充满无限可能的未来。

概要
    startup.py IDEA <flags>

描述
    我们是一家AI软件创业公司。通过投资我们,您将赋能一个充满无限可能的未来。

位置参数
    IDEA
        类型: str
        您的创新想法,例如"写一个命令行贪吃蛇。"

标志
    --investment=INVESTMENT
        类型: float
        默认值: 3.0
        作为投资者,您有机会向这家AI公司投入一定的美元金额。
    --n_round=N_ROUND
        类型: int
        默认值: 5

备注
    您也可以用`标志`的语法,来处理`位置参数`
 

代码实现

from metagpt.software_company import SoftwareCompany
from metagpt.roles import ProjectManager, ProductManager, Architect, Engineer

async def startup(idea: str, investment: float = 3.0, n_round: int = 5):
    """运行一个创业公司。做一个老板"""
    company = SoftwareCompany()
    company.hire([ProductManager(), Architect(), ProjectManager(), Engineer()])
    company.invest(investment)
    company.start_project(idea)
    await company.run(n_round=n_round)
 

你可以查看examples,其中有单角色(带知识库)的使用例子与仅LLM的使用例子。

笔者曾经测试过AutoGpt,提出一个目标,会专门进行拆分子任务并解决,但是实际测试下来,解决的效率比较低,在单个子任务阶段就卡住了。笔者还曾经针对chatgpt专门测试过代码能力,针对同样的需求,能明显感觉到chatgpt进行了各种网上代码的爬取并加工反馈,不同代码的质量参差,没想到现在经过更新换代,专门化的代码文件可以生成的如此快又好,果然类似人类早先的梦想,让机器打工,在有生之年可以实现了。

言而总之,国内的大模型目前还在赶超chatgpt阶段,最起码是在to C端,还需要持续发力,开源后的迭代速度以及衍生的能力及使用方法,开拓了人类视野,加快了人类科技的进程。

文章来自个人专栏
人工智能-wz
8 文章 | 1 订阅
0条评论
作者已关闭评论
作者已关闭评论
0
0