AI・機械学習
上級

MetaGPT(メタジーピーティー)

ソフトウェア開発チームをシミュレートするマルチエージェントLLMフレームワーク。プロダクトマネージャー・アーキテクト・エンジニア・QAなどの役割を持つエージェントが協調し、自然言語の要件からコードを自動生成する。

0 回閲覧
0 いいね
2026/6/7 更新
関連タグ
マルチエージェント
ソフトウェア開発自動化
LLM
コード生成
SOP

MetaGPTとは

MetaGPTはDeepWisdom社が2023年8月に発表したマルチエージェントフレームワーク。論文「MetaGPT: Meta Programming for A Multi-Agent Collaborative Framework」として学術的にも発表された。

設計哲学: SOPのメタプログラミング

MetaGPTの核心はSOP(Standard Operating Procedure: 標準作業手順)をコードで定義するという発想。人間のソフトウェア開発チームがPRD→設計→実装→テストという手順を守るように、MetaGPTのエージェントも構造化された手順に従って情報を引き継ぐ。

標準ロール

  • ProductManager: 要件分析・PRD作成
  • Architect: システム設計・API定義
  • ProjectManager: タスク分割・工数見積
  • Engineer: コード実装
  • QaEngineer: テスト設計・実行

基本的な使い方

# インストール
pip install metagpt

# 設定
metagpt --init-config

# ソフトウェア開発の自動実行
metagpt "スネークゲームをPythonで作って"

これだけで/workspace以下にPRD・設計書・実装コード・テストが生成される。

Pythonでのカスタム利用

import asyncio
from metagpt.roles import ProductManager, Architect, Engineer
from metagpt.team import Team

async def main():
    team = Team()
    team.hire([ProductManager(), Architect(), Engineer()])
    team.invest(investment=3.0)  # LLM APIコスト上限(USD)
    team.run_project("タスク管理Webアプリ(React + FastAPI)を作って")
    await team.run(n_round=5)

asyncio.run(main())

カスタムRoleの定義

from metagpt.roles import Role
from metagpt.actions import Action

class CodeReviewer(Role):
    name: str = "コードレビュアー"
    profile: str = "Senior Engineer"
    
    def __init__(self, **kwargs):
        super().__init__(**kwargs)
        self._init_actions([ReviewCode])

DataInterpreter

2024年にリリースされた特殊エージェント。データ分析タスクに特化し、コードを段階的に生成・実行しながら問題を解決する。

from metagpt.roles.di.data_interpreter import DataInterpreter

di = DataInterpreter()
await di.run("titanic.csvを分析して生存率に影響する要因をビジュアライズして")

SWE-Bench評価での成果

MetaGPTはSWE-Bench(実際のGitHubイシューを解決するベンチマーク)でAutoGenやChatDevを上回るスコアを記録している。

他フレームワークとの比較

  • MetaGPT: SOP構造化・ソフトウェア開発特化
  • AutoGen: 会話型・汎用タスク向け
  • CrewAI: 役割宣言型・ビジネスワークフロー向け
この記事について
カテゴリーAI・機械学習
難易度上級
作成日2026/6/7