🎉

MetaGPT使ってみた

に公開

目次

  1. MetaGPTとは
  2. 動かしてみる
  3. 次回の展望

MetaGPTとは

https://arxiv.org/abs/2308.00352
こちらの論文で紹介されているMetaGPTが気になったので調べてみました

  • ChatGPT4ベースのメタプログラミングフレームワーク
  • 人間の作業手順SOPsを参考に役割を特化させたエージェントを立てる
    • プロダクトマネージャー、アーキテクト、プロジェクトマネージャー、エンジニア、QAエンジニアの5種類
  • 各エージェントは構造化された厳格な出力を生成する
    • 要件文書、フローチャートなど
    • これによりエージェント間の情報欠落を防ぎ効率よくタスクをこなせる
  • 出力した成果物はメッセージプールに入りいつでもアクセス可能
  • コード生成後に段階的に改善することで品質を高める
  • コード生成においてSOTA達成
  • 必要なトークン数も少なくて済む

という内容です
うまく使えば、開発等の様々な場面で使えるかもしれませんね!

https://github.com/geekan/MetaGPT
コードはこちらで公開されています

動かしてみる

早速Colabで動かしてみました

!git clone https://github.com/geekan/metagpt
%cd metagpt
!pip install -e.

import os
os.environ['OPENAI_API_KEY'] = "OpenAI APIの認証トークン"

!python /content/metagpt/startup.py "Create a simple calculator app" --run_tests True

これだけで実行できます
API叩くだけなのでGPUも使いません

指示は「Create a simple calculator app」としてシンプルな計算器を作ってもらいます

2023-11-16 06:18:41.098 | INFO     | metagpt.const:get_project_root:27 - PROJECT_ROOT set to current working directory: /content
2023-11-16 06:18:41.319 | INFO     | metagpt.config:__init__:44 - Config loading done.
2023-11-16 06:18:45.106 | INFO     | metagpt.team:invest:39 - Investment: $3.0.
2023-11-16 06:18:45.107 | INFO     | metagpt.roles.role:_act:207 - Alice(Product Manager): ready to WritePRD
## Original Requirements
The original requirement is to create a simple calculator app.

## Product Goals
```python
[
    "Create a user-friendly calculator app",
    "Ensure accurate calculations for basic arithmetic operations",
    "Provide a visually appealing and intuitive interface"
]
```

## User Stories
```python
[
    "As a user, I want to perform basic arithmetic operations so that I can solve simple mathematical problems",
    "As a user, I want to clear my calculations so that I can start a new calculation",
    "As a user, I want to see a history of my past calculations so that I can refer back to them",
    "As a user, I want to use the calculator on various devices so that I can calculate anytime, anywhere"
]
```

このような標準出力が出力されてきます

約10分で完了
費用は1ドル弱
成果物はColab上にファイルでも出力されます

ローカルに落として動かしてみました
1行だけ修正が必要でしたが、こんな感じで計算器ができました(ちゃんと動きます)

次回の展望

こういった技術を様々な場面で使えるよう、練習も兼ねて

  • Web UIにする
  • 日本語対応させる
  • ChatGPTでなく自前のモデルでも動かせるようにする

あたりに挑戦してみようと思います

Discussion