メインコンテンツまでスキップ

スーパーバイザー エージェントを使用して、調整されたマルチエージェント システムを作成します。

このページでは、スーパーバイザーエージェントを使用して、AIエージェントとツールを連携させて複雑なタスクに取り組むマルチエージェントスーパーバイザーシステムを作成する方法について説明します。対象分野の専門家からの自然言語フィードバックに基づいて、連携を改善できます。

スーパーバイザーエージェントとは?

Supervisor Agent を使用して、Genie Spaces、エージェントエンドポイント、Unity Catalog 関数、MCP サーバー、およびカスタムエージェントを調整し、連携して多様な専門分野にわたる複雑なタスクを完了するスーパーバイザーシステムを作成します。Supervisor Agent は、高度な AI オーケストレーション パターンを使用してエージェントのインタラクション、タスクの委任、および結果の統合を管理し、包括的なソリューションを提供します。複数の言語に対応しています。

スーパーバイザーエージェントがシステムを構築し、人間のフィードバックにより時間をかけて改善できるようにします。次のユースケースのサポートに最適です。

  • 調査レポートと利用データ全体を検索して、市場分析と知見を提供します。
  • 内部プロセスに関する質問に回答し、そのチケットバックログを自動化します。
  • ポリシー、FAQ、アカウント、およびその他の質問に回答することで、顧客サービスを迅速化します。

スーパーバイザーエージェントを使用すると、対象分野の専門家からの自然言語フィードバックに基づいて、スーパーバイザーの調整品質を向上させ、エージェントの動作を調整できます。システムのパフォーマンスを最適化するための例とガイドラインを提供します。

スーパーバイザーエージェントは、アプリケーションのダウンストリームで使用できる包括的なエンドポイントを作成します。たとえば、Playground でプロンプトを送信したり、Databricks Apps を使用してチャットアプリケーションを構築したりして、エンドポイントを操作できます。スーパーバイザーには組み込みのアクセス制御があるため、エンドユーザーはアクセス権を持つサブエージェントとデータにのみアクセスできます。

Supervisor Agent は、デフォルトストレージを使用して、一時的なデータ変換、モデルチェックポイント、および各エージェントを動かす内部メタデータを保存します。エージェントが削除されると、エージェントに関連付けられているすべてのデータはデフォルトストレージから削除されます。

要件

サポートされているサブエージェントとツール

警告

エージェントツールで任意のコードを実行すると、エージェントがアクセスできる機密情報やプライベート情報が公開される可能性があります。顧客は、信頼できるコードのみを実行し、データへの意図しないアクセスを防ぐためにガードレールと適切な権限を実装する責任があります。

スーパーバイザーを作成する際には、調整するサブエージェントを提供し、エンドユーザーにそれぞれに対する明示的なアクセス権を付与する必要があります。次の表に、サポートされているサブエージェントの種類、それぞれの作成方法、および必要なエンドユーザー権限を示します。スーパーバイザーには組み込みのアクセス制御があり、エンドユーザーはアクセス権を持つサブエージェントとデータにのみアクセスできます。明示的なアクセス権がないと、スーパーバイザーはサブエージェントから役立つ応答を返すことができません。

サブエージェントタイプ

作成方法

必要なエンドユーザー権限

Genieスペース

Genieスペースの作成と管理

Genieスペースおよびその基盤となるUnity Catalogオブジェクトへのアクセス。Genie Spaceの共有を参照してください。

ダッシュボードを公開しました

ダッシュボードを作成しダッシュボードを公開します

CAN VIEW 公開されたダッシュボードで。「ダッシュボードの権限を管理」を参照してください。

ナレッジアシスタントエージェントのエンドポイント

ナレッジアシスタントを使用して、ドキュメントに対して高品質のチャットボットを作成します

CAN QUERY エージェントエンドポイントで。権限の管理を参照してください。

モデルサービングエンドポイント

カスタム モデルサービング エンドポイントの作成

CAN QUERY サービングエンドポイントで。「モデルサービングエンドポイントでのアクセス許可の管理」を参照してください。

Unity Catalogの関数

Unity Catalog 関数を使用して AI エージェントツールを作成

EXECUTE Unity Catalog 関数で。実行を参照してください。

Unity Catalogテーブル

Databricks テーブル

SELECT テーブルに対し、さらに親カタログとスキーマに対しUSE CATALOGおよびUSE SCHEMAの権限が必要です。Unity Catalog の権限リファレンスをご覧ください。

Unity Catalog ボリューム

Unity Catalogのボリュームとは何ですか?

READ VOLUME ボリュームに対して、さらにその親カタログとスキーマに対してUSE CATALOGおよびUSE SCHEMAの権限。Unity Catalog の権限リファレンスをご覧ください。

AI Searchインデックス

AI Searchエンドポイントとインデックスの作成

USE CATALOG 親カタログ上、親スキーマ上でUSE SCHEMA、AI Searchインデックス上でSELECTUnity Catalog の権限リファレンスをご覧ください。

スーパーバイザーエージェント

スーパーバイザー エージェントを使用して、調整されたマルチエージェント システムを作成します。

CAN QUERY スーパーバイザーエージェント上で。ステップ4: 権限の管理を参照してください。

Web検索

組み込み機能で、セットアップは不要です。Supervisor Agent は、Web検索に基盤モデルAPIを使用します。ワークスペースの利用資格については、制限事項を参照してください。

追加の権限は不要です。スーパーバイザは、クエリを公開ウェブに送信する前に、各ウェブ検索の呼び出しを承認するよう常にエンドユーザーに促し、ソース引用付きで合成された回答を返します。

外部MCPサーバー

MCPサービスを使用してエージェントをサードパーティ製ツールに接続するかDatabricks Marketplaceからインストールします

USE CONNECTION Unity Catalog 接続について。「USE CONNECTION」を参照してください。

カスタムMCPサーバー

独自のMCPサーバーをホストする

CAN_USE Databricksアプリで。AIエージェントの認証を参照してください。

カスタムエージェント

AIエージェントを作成し、Databricks Appsにデプロイする

CAN_USE Databricksアプリで。AIエージェントの認証を参照してください。

マルチエージェント スーパーバイザー システムを作成します。

ワークスペースの左側のナビゲーションペインで、エージェントアイコン。 エージェント に移動します。「エージェントの作成」をクリックし、「スーパーバイザーエージェント」を選択します。

ステップ 1: スーパーバイザーを構成します。

スーパーバイザを設定し、調整するエージェントを追加します。

左側にツールとサブエージェントペインが表示されているスーパーバイザーエージェント設定ページ。

  1. 左側のサイドペインの ツールとサブエージェント で、ツールとサブエージェントを追加します。追加するツール/エージェントの種類をクリックし、表示されるドロップダウンから選択します。または、検索バーを使用してツール/エージェントを選択します。最大30個のエージェントとツールを選択できます。

  2. より良い結果を得るには、各ツール/サブエージェントに説明を提供してください。ツール/サブエージェントをクリックして説明を調整します。スーパーバイザーは、説明にある情報を使用してエージェントを調整します。タスクの委任を改善するために、できるだけ詳細に提供してください。

  3. 各ツール/エージェントのアクセス許可を管理するには、ツール/エージェントタイルにカーソルを合わせ、「新しいウィンドウのアイコン。」をクリックします。これにより、そのツール/エージェントがDatabricksで開かれ、そこからアクセス許可を構成できます。必要なエンドユーザーのアクセス許可については、「サポートされているサブエージェントとツール」を参照してください。

注記

エンドユーザーがいずれのサブエージェントにもアクセスできない場合、スーパーバイザは会話を終了します。エンドユーザーが一部のサブエージェントにのみアクセスできる場合、スーパーバイザーは、アクセスできないサブエージェントから会話をリダイレクトします。

  1. (オプション) 指示 フィールドで、スーパーバイザーが応答する方法のガイドラインを指定します。

  2. (オプション)「**説明**」フィールドで、このスーパーバイザーが行うことの概要を提供します。この説明はユーザーに表示され、検索に使用されます。

ステップ2: スーパーバイザーエージェントをテストする

スーパーバイザーの初期化が完了したら、スーパーバイザーが複数のエージェントを調整して複雑なタスクを処理する能力をテストしてください。右側のペインで、エージェントとチャットしてその応答を評価します。

  1. (省略可)AI Playgroundでエージェントをテストすることもできます。 Playgroundで開く をクリックします。これにより、スーパーバイザー エンドポイントが接続された状態で AI Playground が開きます。AI 支援機能が有効になっている場合、 AI Judge合成タスク生成 を有効にして、スーパーバイザーの評価に役立てることができます。
  2. スーパーバイザーの複雑な質問またはタスクを入力してください。
  3. 応答を評価します。スーパーバイザーがタスクを適切なエージェントに確実に委任するようにします。
  4. スーパーバイザーとの対話中に、その応答を改善するために ガイドラインを追加 するよう求められることがあります。応答ガイドラインを提供し、応答を再生成します。
  5. エージェントの応答に基づいて、左側のパネルの『説明』と『手順』フィールドを調整して、その設定を改善してください。

スーパーバイザーのパフォーマンスに満足している場合は、スーパーバイザーをそのまま使用し続けてください。

ステップ3: スーパーバイザーを改善する

スーパーバイザーエージェントは、自然言語フィードバックに基づいてスーパーバイザーの動作を調整できます。構成ページから専門家のフィードバックを収集して、スーパーバイザーの調整品質を向上させます。スーパーバイザーのラベル付きデータを収集すると、パフォーマンスを向上させることができます。スーパーバイザーエージェントは、新しいデータからスーパーバイザーを再トレーニングし、最適化します。

**例**タブで、スーパーバイザーの質問とタスクシナリオを追加します。

  1. ラベルを付ける質問を追加します。

    1. 質問を追加するには、**+ 追加**をクリックします。
    2. 「**質問の追加**」モーダルで、質問を入力します。
    3. 追加 をクリックします。質問がUIに表示されます。
    4. 評価したいすべての質問を追加するまで繰り返します。
    5. 質問を削除するには、ケバブメニューをクリックし、 削除 をクリックします。
  2. 質問を追加し終えたら、エージェントを他の人と共有してレビューしてもらうことで、高品質なラベル付きデータセットの構築に役立てることができます。専門家からのフィードバックを収集するために、Supervisor Agent 設定ページへのリンクを共有します。

  3. 専門家がスーパーバイザーエージェントおよび適切なサブエージェントにアクセスできるようにしてください。

    1. 右上隅にあるケバブメニューケバブメニューアイコン。をクリックして、アクセス許可を管理してください。専門家にCAN_MANAGE権限を付与して、エージェントにアクセスし、フィードバックを提供できるようにしてください。
    2. 専門家が各サブエージェントへのアクセス権を持っていることを確認します。サブエージェントのタイプごとの必要な権限については、「サポートされているサブエージェントとツール」を参照してください。

    専門家がサブエージェントにアクセスできない場合、スーパーバイザーは会話を終了します。エンドユーザーが一部のサブエージェントにのみアクセスできる場合、スーパーバイザーは、アクセスできないサブエージェントから会話をリダイレクトします。

  4. データをラベル付けするには、質問をクリックし、表示されるパネルで「 ガイドライン 」を追加します。ガイドラインは保存されるとすぐに適用されます。

  5. 構成ページまたはAI Playgroundでエージェントを再度テストし、パフォーマンスが向上したことを確認します。必要に応じて、動作の改善を継続するために、質問とガイドラインを追加してください。

ステップ4: 権限の管理

デフォルトでは、エージェント作成者とワークスペース管理者のみがエージェントに対する権限を持っています。他のユーザーがエージェントを編集またはクエリできるようにするには、明示的に権限を付与する必要があります。

エージェントの権限を管理するには:

  1. [**エージェント**] ページで、エージェントを開きます。

  2. 上部の ケバブメニューアイコン。 ケバブメニューをクリックします。

  3. [アクセス許可を管理] をクリックします。

  4. **権限設定** ウィンドウで、ユーザー、グループ、またはサービスプリンシパルを選択します。

  5. 付与する権限を選択してください:

    • 管理可能 : 権限の設定、エージェント構成の編集、品質の向上など、エージェントの管理が可能です。
    • クエリ可能 : AI Playgroundで、およびAPIを介してエージェントエンドポイントをクエリできます。このアクセス許可を持つユーザーのみが、エージェントページでエージェントを表示または編集できません。
  6. [ 追加 ] をクリックします。

  7. 保存 をクリックします。

注記

2025年9月16日より前に作成されたエージェントエンドポイントの場合、**サービングエンドポイント**ページからエンドポイントに**クエリ可能**のアクセス許可を付与できます。

ステップ 5: エージェントエンドポイントをクエリーする

エージェントページで、 エンドポイント をクリックしてエージェントエンドポイントを開き、詳細を表示します。

作成されたスーパーバイザーエンドポイントをクエリーする方法は複数あります。AI Playground で提供されているコード例を出発点として使用してください。

  1. プレイグラウンドで開く をクリックします。
  2. Playground から コードを取得 をクリックします。
  3. エンドポイントの使用方法を選択してください:
    • curl を使用してエンドポイントをクエリするコード例として、 Curl API を選択します。
    • Pythonを使用してエンドポイントを操作するコード例については、 Python API を選択してください。

Databricks SDK を使用してスーパーバイザーエージェントを管理する

備考

ベータ版

この機能はベータ版です。アカウント管理者は、 [プレビュー] ページからこの機能へのアクセスを制御できます。Databricksのプレビューを管理するを参照してください。

Databricks SDK for Python を使用して、Supervisor Agent とそのツールをプログラムで作成および管理できます。利用可能な操作の完全なリストについては、Supervisor Agents SDK リファレンスを参照してください。

スーパーバイザーエージェントを作成する

以下の例では、表示名、説明、および指示を使用して、新しいスーパーバイザーエージェントを作成します。

Python
from databricks.sdk import WorkspaceClient
from databricks.sdk.service.supervisoragents import SupervisorAgent

w = WorkspaceClient()

supervisor_agent = SupervisorAgent(
display_name="<display-name>",
description="<description>",
instructions="<instructions>",
)
created = w.supervisor_agents.create_supervisor_agent(supervisor_agent=supervisor_agent)
print(created)

<display-name><description>、および <instructions> をスーパーバイザーエージェントの値に置き換えてください。

ツール (サブエージェント) を管理

SDKを使用して、既存のスーパーバイザーエージェントにツール(サブエージェント)を追加、更新、削除できます。ツールは、ナレッジアシスタント、Genie Spaces、Unity Catalog 関数、およびその他のエージェントエンドポイントなどのサブエージェントを表します。

ツール(サブエージェント)を追加

次の例では、既存のスーパーバイザーエージェントにナレッジアシスタントをツールとして追加します。

Python
from databricks.sdk import WorkspaceClient
from databricks.sdk.service.supervisoragents import Tool, KnowledgeAssistant

w = WorkspaceClient()

tool = Tool(
tool_type="knowledge_assistant",
description="<tool-description>",
knowledge_assistant=KnowledgeAssistant(
knowledge_assistant_id="<knowledge-assistant-id>",
),
)

created_tool = w.supervisor_agents.create_tool(
parent="supervisor-agents/<supervisor-agent-id>",
tool=tool,
tool_id="<tool-id>",
)
print(created_tool)

<supervisor-agent-id> をスーパーバイザーエージェントの ID に、<knowledge-assistant-id> をツールとして追加するナレッジアシスタントの ID に、<tool-id> をツールの固有の識別子に置き換えます。

ツール (サブエージェント) を更新する

次の例では、既存のツールの説明を更新します。

Python
from databricks.sdk import WorkspaceClient
from databricks.sdk.service.supervisoragents import Tool
from databricks.sdk.common.types.fieldmask import FieldMask

w = WorkspaceClient()

updated_tool = w.supervisor_agents.update_tool(
name="supervisor-agents/<supervisor-agent-id>/tools/<tool-id>",
tool=Tool(
tool_type="knowledge_assistant",
description="<new-description>",
),
update_mask=FieldMask(["description"]),
)
print(updated_tool)

update_maskで許可されるフィールド:description

ツール(サブエージェント)を削除

以下の例では、スーパーバイザーエージェントからツールを削除します。

Python
from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

w.supervisor_agents.delete_tool(
name="supervisor-agents/<supervisor-agent-id>/tools/<tool-id>",
)

制限事項

次のステップ

スーパーバイザーエージェントの長時間実行タスク