生成AIエージェントにおけるエージェント・ツールのガイドライン
生成AIエージェントでは、エージェント内のエージェント・ツールにより、別のエージェントのアクティブ・エージェント・エンドポイントをアタッチして、そのサブエージェントをツールとして構成できます。
ドキュメントのために、コラボレータ・エージェントはエージェント・ツールとして構成されたサブエージェントです。構成に1つ以上のコラボレータ・エージェントがあるエージェントは、スーパーバイザ・エージェントです。
コラボレータ・エージェントおよびスーパーバイザ・エージェントを使用して、スーパーバイザ・エージェントを介して、特殊なタスクを処理するコラボレータ・エージェントに問合せを編成するフレームワークを実装できます。
スーパーバイザおよび協力者エージェントの概要
スーパーバイザ・エージェントとそのコラボレータ・エージェントのプロパティおよび職責の理解。
-
スーパーバイザ・エージェントおよびコラボレータ・エージェントは、異なるテナンシに属することができます。
-
コラボレータ・エージェントは、エージェントがアクティブなエージェント・エンドポイントに関連付けられているかぎり、任意のツール・タイプ(RAGツールなど)またはツール・タイプの組合せ(RAGおよびファンクション・コール・ツールなど)を持つエージェントになります。
- エージェント・ツールとして構成されたエージェントは、独立して動作し、スーパーバイザ・エージェントに統合できます。
-
コラボレータ・エージェントを持つスーパーバイザ・エージェントには、追加のツール(RAGやSQLなど)を含めることができます。
-
スーパーバイザ・エージェントは、次のことを担当します。
-
セッション管理とクエリー・ルーティング
-
コラボレータ・エージェントまたはツールからのレスポンスの集計
-
グローバル・チャット履歴の保守
-
-
コラボレータ・エージェントは、次のことを担当します。
- 専門に関連する問合せの処理(HRなど)
- グローバル・セッションに関連付けられたローカライズされたチャット履歴の保守。
-
スーパーバイザ・エージェント、コラボレータ・エージェントおよびツールについては、メトリックと請求が別々に処理されます。
複数のコラボレータ・エージェントからのレスポンスを含む考えられるデータ・フロー・シナリオは、次のように記述できます。
- ユーザーは、チャットセッションでスーパーバイザエージェントにクエリーを送信します。問合せは複数の特殊化にまたがっています。
- スーパーバイザエージェントは、ルーティングロジックに基づいてクエリーを分割し、関連するコラボレータエージェントにサブクエリーを委任します。
- 各コラボレータ・エージェントは、そのセッション・コンテキストを使用して副問合せを処理します。コラボレータエージェントは、応答をスーパーバイザエージェントに返します。
- スーパーバイザ・エージェントは、レスポンスを集計して統合出力にフォーマットし、その出力をユーザーに送信します。
ワークフロー
コラボレータエージェントとスーパーバイザエージェントを実装するためのワークフローは次のとおりです。
- 必要なOCI Identity and Access Management (IAM)ポリシーを理解し、追加できます。IAMポリシーを参照してください。
- 任意のツールを使用してコラボレータ・エージェントを作成します。ヘルプが必要な場合は、エージェントの作成を参照してください。
- 各コラボレータ・エージェントに、アクティブでセッションに対して有効なエージェント・エンドポイントが関連付けられていることを確認します。ヘルプが必要な場合は、エンドポイントの詳細の取得を参照してください。
- 監督者エージェントを作成します。エージェント・ツール・タイプを使用して、コラボレータ・エージェントを追加します。ヘルプが必要な場合は、エージェント・ツールの作成を参照してください。
- スーパーバイザ・エージェントのエージェント・エンドポイントがセッションに対して有効になっていることを確認します。ヘルプが必要な場合は、エンドポイントの詳細の取得を参照してください。
IAMポリシー
「サービスを使用する前にポリシーを追加」の説明に従って、すべての生成AIエージェント・リソースへのアクセス権をユーザーに付与してください。
次の項も参照してください。
動的グループとポリシー
genai-agent-family
を管理する権限を持つ動的グループを追加する必要があります。
-
動的グループを作成し、次の一致ルールを追加します。
ALL {resource.type='genaiagent'}
ヘルプが必要な場合は、動的グループの作成を参照してください。
-
動的グループに権限を付与します。
-
デフォルトのアイデンティティ・ドメインで使用できる次のポリシーを記述します。
allow dynamic-group <dynamic-group-name> to manage genai-agent-family in tenancy
-
Oracle Identity Cloud Service (IDCS)ドメイン名および動的グループ名を指定して、デフォルトではないアイデンティティ・ドメインで次のポリシーを使用します:
allow dynamic-group '<idcs-domain-name>/<dynamic-group-name>' to manage genai-agent-family in tenancy
集約リソース・タイプではなく個々のリソース・タイプに基づいて権限を割り当てるには、生成AIエージェントのリソース・タイプについてを参照してください。
-
クロス・テナンシ・アクセス
別のテナンシのエージェント・エンドポイントを使用するには、ターゲット・テナンシおよびエージェント・ツールを作成するテナンシで特定のポリシーを設定する必要があります。次の情報も収集します。
- ターゲット・テナンシ名およびOCID。ターゲット・テナンシは、使用するアクティブなエージェント・エンドポイントがあるテナンシです。
- エージェント・ツールを作成するテナンシ名およびOCID。
- 動的グループ名およびOCID。
次のクロス・テナンシ・ポリシー・ステートメントを記述します。該当する場合は、デフォルトではないアイデンティティ・ドメインで使用するために、構文で'<idcs-domain-name>/<dynamic-group-name>'
という形式を使用します。
- エージェント・ツールを作成するテナンシで:
-
<target-tenancy>
は、使用するアクティブなエージェント・エンドポイントを持つテナンシです。Define tenancy <target-tenancy> as <target-tenancy-ocid>
Endorse dynamic-group <dynamic-group-name> to manage genai-agent-family in tenancy <target-tenancy>
- ターゲット・テナンシ:
-
<this-tenancy>
は、エージェント・ツールを作成するテナンシです。Define tenancy <this-tenancy> as <this-tenancy-ocid>
Define dynamic-group <dynamic-group-name> as <dynamic-group-ocid>
Admit dynamic-group <dynamic-group-name> of tenancy <this-tenancy> to manage genai-agent-family in tenancy
ヘルプが必要な場合は、アイデンティティ・ドメインを使用するOCI IAMのドキュメントで、クロステナンシ・アクセス・ポリシーを参照してください。
セッションが有効なエンドポイント
エージェント・ツールは、セッションが有効なエージェント・エンドポイントを持つエージェントのみをサポートします。
チャット・セッションのコンテキストを保持するためにエージェント・エンドポイントでセッションが有効になっている場合、生成AIエージェントはセッションIDを作成し、対話型会話のエージェント・セッションを保持します。セッション中は、会話全体で一貫性のある意味のある応答を提供するために、コンテキストと継続性が維持されます。
スーパーバイザ・エージェントで構成するコラボレータ・エージェントの場合、エージェントにセッション・ベースのエージェント・エンドポイントのみがあることを確認してください。また、スーパーバイザ・エージェントは、セッションが有効になっているエージェント・エンドポイントにのみ関連付ける必要があります。
デフォルトでは、コンソールを使用してエージェントを作成し、同時にエージェント・エンドポイントを自動的に作成することを選択した場合、エージェントで作成されたエージェント・エンドポイントでセッションが有効になります。確認するには、エージェント内のエンドポイントの詳細を表示できます。
エージェント・エンドポイントを手動で作成する場合は、エンドポイントをエージェント・ツールで構成する場合は、「セッションの有効化」が選択されていることを確認します。
必須情報
エージェント・ツールを作成する前に、次の情報を収集します。
- ツールとして追加するエージェントの名前。
- そのエージェントのアクティブなセッション・ベースのエージェント・エンドポイントの名前。使用できるアクティブなエンドポイントがエージェントにない場合は、エージェント・エンドポイントを作成します。ヘルプが必要な場合は、エンドポイントの作成を参照してください。
- エージェント・エンドポイントが、エージェント・ツールを作成するテナンシとは異なるテナンシにある場合は、エージェント・エンドポイントOCIDを取得します。ヘルプが必要な場合は、エンドポイントの詳細の取得を参照してください。