AI・機械学習
上級

AutoGen(オートジェン)

Microsoft Research が開発したマルチエージェント会話フレームワーク。複数のLLMエージェントが会話形式で協調・議論・タスク実行する仕組みを提供し、コード生成・数学問題・リサーチ等の複雑なタスクを自動化する。2024年にv0.4で大規模リアーキテクチャ。

0 回閲覧
0 いいね
2026/6/20 更新
関連タグ
LLMエージェント
Microsoft
マルチエージェント
会話型AI
Python
AutoGen

AutoGenとは

AutoGenは、Microsoft Researchが2023年9月に公開したマルチエージェント会話フレームワークである。複数のLLMエージェントが会話形式でメッセージをやり取りしながら、コード生成・実行・デバッグ・リサーチ等の複雑なタスクを協調的に解決する。GitHub Stars 40,000超(2026年時点)で、LLMエージェントフレームワークの中で最も人気が高い。

主な特徴

  • 会話ベースの協調: エージェント間の「会話」がタスク解決の手段。人間の議論プロセスを模倣
  • 柔軟なエージェント定義: 各エージェントにシステムプロンプト・ツール・コード実行環境を個別設定
  • コード実行統合: エージェントが生成したPythonコードをDockerコンテナ内で自動実行・結果をフィードバック
  • GroupChat: 3体以上のエージェントがラウンドロビンまたはLLM選択で発言順を決めるグループ会話
  • Human-in-the-Loop: UserProxyAgentが人間の代理として会話に参加。承認・修正・質問が可能
  • v0.4 リアーキテクチャ(AutoGen 0.4/AG2): イベント駆動・非同期メッセージパッシング・プラグインベースの新設計。v0.2とはAPIが大きく異なる
  • AutoGen Studio: ノーコードUIでエージェントを設計・テスト・デプロイ。プログラミング不要でマルチエージェントを構築
  • ライセンス: MIT(CC BY 4.0 for docs)

v0.2 vs v0.4 の違い

観点v0.2v0.4 (AG2)
アーキテクチャ同期関数呼び出し非同期イベント駆動
エージェントConversableAgentBaseChatAgent(プラグイン)
会話管理GroupChatTeam(RoundRobin/Selector等)
コード実行DockerCommandLineCodeExecutor同左 + WASM Sandbox
状態管理会話履歴のみ永続ストア対応
推奨度レガシー現行推奨

コード例(v0.4)

from autogen_agentchat.agents import AssistantAgent
from autogen_agentchat.teams import RoundRobinGroupChat
from autogen_ext.models.openai import OpenAIChatCompletionClient

model_client = OpenAIChatCompletionClient(model="gpt-4o")

coder = AssistantAgent("coder", model_client=model_client,
    system_message="Pythonコードを書いて問題を解決してください")
reviewer = AssistantAgent("reviewer", model_client=model_client,
    system_message="コードをレビューしてバグや改善点を指摘してください")

team = RoundRobinGroupChat([coder, reviewer], max_turns=6)
result = await team.run(task="フィボナッチ数列の最適化")

ユースケース

  1. コード生成+レビュー: Coder→Reviewer→Coderのループで品質の高いコードを自動生成
  2. リサーチエージェント: Researcher→Critic→Synthesizerの3体で論文調査・批判的検証・要約
  3. データ分析: Analyst→Visualizerの協調でSQL生成→グラフ描画→考察
  4. 教育: Teacher→Studentの対話シミュレーションで学習コンテンツ生成
  5. ゲームプレイ: 複数エージェントがマフィアゲームや人狼を実行する研究事例

選び方・注意点

  • v0.2からv0.4への移行: APIが大幅変更。v0.2で構築した既存システムの移行にはコードの書き直しが必要
  • コスト管理: エージェント間の会話が冗長になるとAPI呼び出し回数が増大。max_turnsの設定が重要
  • コード実行のセキュリティ: DockerまたはWASM Sandboxで隔離必須。ローカル実行は危険
  • LangGraphとの使い分け: 明示的なワークフロー制御→LangGraph、自然な会話ベース協調→AutoGen
  • AutoGen Studio: 非エンジニアがプロトタイピングに使えるが、本番利用にはコードベースの方が柔軟

よくある質問(FAQ)

Q1: AutoGenとLangChain/LangGraphの違いは? A: LangGraphは「グラフでワークフローを明示的に定義」、AutoGenは「エージェント同士の会話で暗黙的にタスクを解決」。LangGraphは制御性が高く、AutoGenは柔軟性が高い。プロダクション向けにはLangGraph、研究・実験にはAutoGenが向く。

Q2: AutoGen StudioはプロダクションOK? A: 2026年時点ではプロトタイピング・デモ向け。本番利用にはコードベースのv0.4 APIを推奨。ただしAutoGen Studioで設計→コードエクスポート→本番デプロイのワークフローは有効。

Q3: AG2(AutoGen v0.4)と旧AutoGen(v0.2)はどちらを使うべき? A: 新規プロジェクトはv0.4一択。v0.2は公式にレガシーとされ、新機能の追加は行われない。ただしv0.2の方がドキュメント・チュートリアルが豊富で学習しやすい面もある。

まとめ

  • AutoGenはMicrosoft Research製のマルチエージェント会話フレームワークでGitHub 40K+ Stars
  • 複数エージェントが会話形式で協調しタスクを解決する独自アプローチ
  • v0.4でイベント駆動・非同期設計に刷新、AutoGen Studioでノーコード構築も可能
  • コスト管理とv0.2→v0.4移行が実用上の課題
この記事について
カテゴリーAI・機械学習
難易度上級
作成日2026/5/31