書籍『Designing Multi-Agent Systems』の補完コード。学習用にゼロから構築したマルチエージェントフレームワーク PicoAgents を収録。
VRSEN/agency-swarm
明確な役割を持つAIエージェント同士が、定義された通信フローに沿って作業を引き継ぐマルチエージェントシステムを構築するPythonフレームワーク。
- スター
- 4,630
- フォーク
- 1,062
- 未解決の Issue
- 9
- 最終コミット
- 6 日前
これは何?
Agency Swarmは、実際のチームのように編成された複数のAIエージェントが連携して動作するアプリケーションを構築するためのPythonフレームワークです。各エージェントには個別の役割、指示、ツールが与えられ、どのエージェントが誰に会話を開始できるかを開発者が定義します。OpenAI Agents SDKを基盤とし、その上にオーケストレーション層を追加しています。
エージェントは専用のsend_messageツールを使って通信し、Agencyに設定する方向付きのcommunication_flowsによって、誰が誰に連絡できるかを制御します。ツールは@function_toolデコレーターを使ったPython関数、Pydanticフィールドを持つBaseToolサブクラス、またはOpenAPIスキーマから作成できます。会話履歴は、たとえばデータベースやファイルストアに保存するためのロード/保存コールバックを通じて永続化できます。
Python 3.12以降を対象としており、OpenAIモデルをネイティブにサポートします。Anthropic、Gemini、Azure OpenAIなどの他のプロバイダーもLiteLLM経由で利用できます。Agencyを実行するためのWebデモとターミナルインターフェースも用意されています。
主な機能
- 01各エージェントに個別の指示、ツール、モデル設定を持たせ、役割を定義できます。
- 02方向付きの通信フローで、エージェント間の通信を制限できます。
- 03Python関数、BaseToolクラス、OpenAPIスキーマから型安全なツールを作成できます。
- 04ロード/保存コールバックを通じて会話履歴を永続化できます。
- 05Webデモ、ターミナルUI、非同期のget_response APIから実行できます。
ユースケース
- CEOエージェントが開発者エージェントやアシスタントエージェントに作業を委任するような、専門エージェントチームのプロトタイプを作る。
- OpenAPIスキーマで記述された既存のAPIをエージェントが呼び出す、社内業務の自動化を構築する。
- セッションをまたいで会話状態を保存する必要があるマルチエージェントワークフローを実行する。
クイックスタート
- 1
pipでフレームワークをインストールします
pip install -U agency-swarm - 2
OpenAI APIキーを.envファイルまたはシェルに設定します
export OPENAI_API_KEY="YOUR_API_KEY" - 3
Agency Starter Templateから始め、READMEに従ってエージェントと通信フローを定義します
使う前に知っておきたいこと
- Python 3.12以降が必要です。
- エージェントの実行には、OpenAI APIキーまたは別の対応モデルプロバイダーが必要です。
- v0.xから移行するには、新しいSDKベースのバージョンに合わせてプロジェクトを調整する必要があります。
収録されている特集
トピック
よくある質問
- agency-swarm とは?
- 明確な役割を持つAIエージェント同士が、定義された通信フローに沿って作業を引き継ぐマルチエージェントシステムを構築するPythonフレームワーク。 Agency Swarmは、実際のチームのように編成された複数のAIエージェントが連携して動作するアプリケーションを構築するためのPythonフレームワークです。各エージェントには個別の役割、指示、ツールが与えられ、どのエージェントが誰に会話を開始できるかを開発者が定義します。OpenAI Agents SDKを基盤とし、その上にオーケストレーション層を追加しています。
- agency-swarm は無料で使えますか?ライセンスは?
- agency-swarm は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- agency-swarm は今もメンテナンスされていますか?
- 活発にメンテナンス中。agency-swarm の最終コミットは 2026年11月2日 です。
- agency-swarm は何に使えますか?
- CEOエージェントが開発者エージェントやアシスタントエージェントに作業を委任するような、専門エージェントチームのプロトタイプを作る。 OpenAPIスキーマで記述された既存のAPIをエージェントが呼び出す、社内業務の自動化を構築する。 セッションをまたいで会話状態を保存する必要があるマルチエージェントワークフローを実行する。
- agency-swarm のインストール方法は?
- pipでフレームワークをインストールします: pip install -U agency-swarm OpenAI APIキーを.envファイルまたはシェルに設定します: export OPENAI_API_KEY="YOUR_API_KEY" Agency Starter Templateから始め、READMEに従ってエージェントと通信フローを定義します
- agency-swarm はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/VRSEN/agency-swarm
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
ツール、ハンドオフ、ガードレール、セッション、トレーシングを備えたマルチエージェントワークフローを構築できる、軽量なPythonフレームワーク。OpenAIを含む100種類以上のLLMに対応します。
Python、.NET、JavaでAIエージェントやマルチエージェントシステムを構築するためのSDK。モデル、プラグイン、ベクトルデータベースと連携できます。
YAMLとWebコンソールでエージェント、ワークフロー、タスクを定義し、ソフトウェアなどを作成できるノーコードのマルチエージェントプラットフォーム。
本番運用に適したAIエージェントとマルチエージェントワークフローを、.NETとPythonで構築・オーケストレーション・デプロイするためのオープンなフレームワーク。
共有環境で会話や行動、記憶、カスタムアクションの実行を行うAIエージェントを配置したシミュレーションを作成できるPythonフレームワーク。