Repolode
openai

openai/swarm

AgentsとChat Completions API上のハンドオフを使って軽量なマルチエージェント連携を実現する、実験・学習向けのPythonフレームワーク。

スター
22,111
フォーク
2,351
未解決の Issue
38
最終コミット
7 か月前

これは何?

Swarmは、複数のLLMエージェントを連携させるためのPythonフレームワークです。中核となるプリミティブは2つあります。指示と呼び出し可能な関数をまとめたAgentと、あるエージェントから別のエージェントへ会話を引き継ぐハンドオフです。クライアントのrun()メソッドは、新たな関数呼び出しがなくなるまで、モデルの応答生成、ツールの実行、エージェントの切り替えを繰り返します。その後、更新されたメッセージ、アクティブなエージェント、コンテキスト変数を返します。

SwarmはChat Completions APIのみを基盤とし、呼び出し間で状態を保持しません。そのため、呼び出し元は各ターンでメッセージ履歴を渡します。ストリーミング、エージェントや関数から参照できる実行ごとのコンテキスト変数、コマンドラインから設定を試せるデモ用REPLにも対応しています。

このプロジェクトは、実験・学習向けであることが明示されています。OpenAIによると、現在はOpenAI Agents SDKに置き換えられており、本番環境ではそちらの利用が推奨されています。

主な機能

  • 01Agentオブジェクトに、指示とモデルが呼び出せるPython関数をまとめられます。
  • 02ハンドオフにより、あるエージェントから別のエージェントへ会話を引き継げます。
  • 03コンテキスト変数を関数や動的な指示に渡せます。
  • 04Chat Completions APIを基盤としており、サーバー側に状態を保持しません。
  • 05ストリーミング応答と、コマンドラインで実行できるデモループに対応しています。

ユースケース

  • マルチエージェント間のハンドオフやツール呼び出しの仕組みを実践的に学ぶ。
  • リクエストを専門エージェントに振り分けるトリアージフローを試作する。
  • タスクごとに異なるエージェントを使うカスタマーサービスのデモを構築する。

クイックスタート

  1. 1

    pip を使って GitHub から Swarm をインストールします(Python 3.10 以降が必要です)

    pip install git+https://github.com/openai/swarm.git
  2. 2

    README の使用例にあるように、Swarm クライアントを作成し、エージェントと関数を定義してから client.run() を呼び出します

使う前に知っておきたいこと

  • Swarm は実験・教育目的のものであり、本番環境での使用を想定していません。
  • README によると、Swarm は OpenAI Agents SDK に置き換えられており、本番環境にはこちらが推奨されています。
  • Swarm は Chat Completions API を基盤としており、呼び出し間で状態を保持しないため、会話履歴は自分で管理する必要があります。

収録されている特集

トピック

よくある質問

swarm とは?
AgentsとChat Completions API上のハンドオフを使って軽量なマルチエージェント連携を実現する、実験・学習向けのPythonフレームワーク。 Swarmは、複数のLLMエージェントを連携させるためのPythonフレームワークです。中核となるプリミティブは2つあります。指示と呼び出し可能な関数をまとめたAgentと、あるエージェントから別のエージェントへ会話を引き継ぐハンドオフです。クライアントのrun()メソッドは、新たな関数呼び出しがなくなるまで、モデルの応答生成、ツールの実行、エージェントの切り替えを繰り返します。その後、更新されたメッセージ、アクティブなエージェント、コンテキスト変数を返します。
swarm は無料で使えますか?ライセンスは?
swarm は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
swarm は今もメンテナンスされていますか?
半年以上コミットなし。swarm の最終コミットは 2026年4月15日 です。
swarm は何に使えますか?
マルチエージェント間のハンドオフやツール呼び出しの仕組みを実践的に学ぶ。 リクエストを専門エージェントに振り分けるトリアージフローを試作する。 タスクごとに異なるエージェントを使うカスタマーサービスのデモを構築する。
swarm のインストール方法は?
pip を使って GitHub から Swarm をインストールします(Python 3.10 以降が必要です): pip install git+https://github.com/openai/swarm.git README の使用例にあるように、Swarm クライアントを作成し、エージェントと関数を定義してから client.run() を呼び出します
swarm はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/openai/swarm

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト