AIエージェントに外交ゲームをプレイさせてみた
7つのLLM制御勢力による完全な外交ゲームを実行するGitHubリポジトリ。交渉、命令提出、リプレイ機能を備える。
最近、開発者のBrenden EhlersがGitHubで「diplomacy-ai」というオープンソースプロジェクトを公開しました。このプロジェクトは、大規模言語モデル(LLM)で駆動する7つのAIエージェントに、古典的なボードゲーム「外交」をプレイさせるものです。このゲームは複雑な交渉と裏切りで知られており、現在は完全にAIが自律的に行います。
プロジェクトは公式の外交エンジンをベースにしており、各移動フェーズでは指定されたラウンド数の交渉(プライベートメッセージとグローバルブロードキャストの両方をサポート)が行われ、その後各勢力が命令を提出します。システムは各勢力の内部推論、すべてのメッセージ、最終的な命令を記録し、後で振り返ることができます——公にならなかった陰謀も含めて。
アーキテクチャはモジュール化されており、orchestrator.pyがゲームループとメッセージルーティングを担当し、agent.pyがボードの状態をメッセージや命令に変換します。provider.pyは非同期LiteLLMラッパー(リトライ、バックオフ、トークン/コスト/レイテンシ記録をサポート)です。設定ファイルgame.tomlはTOML形式で、モデル、温度、タイムアウト、さらには勢力ごとに異なるLLMモデルを指定できます。
セットアップは簡単で、Python 3.11以上が必要です。Google Gemini(無料体験に推奨)、OpenAI、Anthropicなどの商用モデルに対応し、LM Studioを使ってローカルモデル(Qwen3など)を実行することもできます。実行にはAPIキーの設定が必要で、just test-smokeで簡単な動作確認が可能です。
ゲームの出力はruns/<timestamp>/ディレクトリに保存され、game.json(公式Web UIでロード可能)、各フェーズの詳細な記録、実行ログが含まれます。また、公式Web UI(追加設定が必要)を使ってボードや交渉を可視化することもできます。
このプロジェクトは、複雑なマルチエージェントゲームにおけるLLMの可能性を示すとともに、AIの交渉戦略や隠された情報のゲームを研究するための実用的なツールを提供します。開発者はプロジェクトはまだ改善中であり、コミュニティからの貢献を歓迎すると述べています。