MetaGPT – DeepWisdomチームが開発したオープンソースのマルチエージェントフレームワーク
MetaGPT – DeepWisdomチームが開発したオープンソースのマルチエージェントフレームワーク紹介
MetaGPTとは?
MetaGPTは、DeepWisdomチームによって開発されたオープンソースのマルチエージェントフレームワークであり、2023年6月に正式にオープンソース化されました。大規模言語モデル(LLM)を活用して複数のエージェントが協調し、複雑なタスクに対して自動化されたソリューションを提供します。人間のワークフローを模倣し、標準作業手順(SOPs)をプロンプトのシーケンスに変換することで、タスクの効率的な分解と協調を実現します。

MetaGPTの主な特徴
マルチエージェント協調:MetaGPTは小さなソフトウェア会社のようで、製品マネージャー、アーキテクト、エンジニアなどの異なる役割があります。それぞれの役割がエージェントに対応し、要件分析、システム設計、コード生成、デバッグなど特定のタスクを担当します。
メタプログラミングフレームワーク:人間のワークフローをプロンプトのシーケンスに変換することで、MetaGPTは複数のエージェントが効率的に協調できるようにし、コミュニケーション不足によるエラーを減らします。
タスクの分解と実行:このフレームワークは「組み立てライン」のような方式を採用し、複雑なタスクを複数のサブタスクに分解し、それぞれを異なるエージェントに割り当てることで、タスクの実行をより一貫性のある正確なものにします。
自然言語プログラミング:MetaGPTは、自然言語での要件記述から自動的なコード生成までの一連のプロセスをサポートし、プログラミングをより身近なものにします。
高性能と堅牢性:コード生成のベンチマークテストにおいて、MetaGPTのPass@1の成功率は最大85.9%および87.7%に達し、タスク完了率は100%です。

MetaGPTの技術アーキテクチャ
マルチエージェントシステム:MetaGPTは、製品マネージャー、アーキテクト、プロジェクトマネージャー、エンジニアなどの役割をGPTモデルに割り当て、これらの役割が協調して複雑なタスクを完了します。
エージェント通信メカニズム:エージェント間で情報を効果的に伝達できる完全な通信ルールを備えています。
ワークフローエンジン:有向非巡回グラフ(DAG)を使用してタスクフローを管理し、タスクをスムーズに実行します。
MetaGPTの使い方
1. 環境設定
システムにPython 3.9以上がインストールされていることを確認してください。以下のコマンドでPythonのバージョンを確認できます:
python3 --version
バージョンが3.9未満の場合は、Pythonをアップグレードしてください
2. MetaGPTのインストール
MetaGPTリポジトリをクローン:
git clone https://github.com/geekan/MetaGPT.git cd MetaGPT
開発モードでインストール:
pip install -e .
3. MetaGPTの設定
設定ファイルの作成
以下のコマンドを実行して設定ファイルを初期化します:
metagpt --init-config
これにより、~/.metagpt/config2.yamlにデフォルトの設定ファイルが作成されます
設定ファイルの編集
設定ファイルを編集してLLM APIキーなどのパラメータを設定します。例:
llm: api_type: "openai" # またはその他のサポートされているAPIタイプ model: "gpt-3.5-turbo" api_key: "YOUR_API_KEY"
設定ファイルの優先順位は:config/key.yaml > config/config.yaml > 環境変数 です。
4. MetaGPTの使用
コマンドラインでの実行
コマンドラインで直接MetaGPTを実行します:
metagpt "Create a 2048 game"
Pythonスクリプトでの実行
MetaGPTをインポートしてプロジェクトを実行します:
from metagpt.software_company import generate_repo, ProjectRepo
repo: ProjectRepo = generate_repo("Create a 2048 game")
print(repo)MetaGPTの応用シナリオ
ソフトウェア開発:要件分析からコード生成とデバッグまで、MetaGPTはソフトウェア開発プロセス全体を自動化できます。
複雑なタスクの分解:複雑なタスクを複数のサブタスクに分解し、異なるエージェントが協力して完了するように手配できます。
データ分析:大量のデータを迅速に処理・分析し、企業の意思決定に根拠を提供します。
自然言語プログラミング:自然言語による入力から直接コードを生成でき、プログラミングの難易度を下げます。
MetaGPTの優位性
マルチエージェントアーキテクチャ:より複雑なタスクを処理し、より包括的なソリューションを提供できます。
チーム協調と標準化された業務フロー:タスク処理の正確性と安定性を保証し、エラーの可能性を減らします。
柔軟性と拡張性:異なる分野のニーズに応じて調整と最適化が可能です。
GitHubリポジトリ:https://github.com/geekan/MetaGPT
関連ニュース:
脚本プランナー▸
AIアプリ
AIニュース