マルチエージェントコラボレーションを作成する - Amazon Bedrock

マルチエージェントコラボレーションを作成する

マルチエージェントコラボレーションの作成は、次のステップで構成されます。

  1. コラボレーターエージェントを作成し、デプロイします。マルチエージェントコラボレーションワークフロー内で特定のタスクを実装するように、各コラボレーターエージェントを設定してください。

  2. 新しいスーパーバイザーエージェントを作成するか、既存のエージェントにスーパーバイザーのロールを割り当てます。新しいスーパーバイザーエージェントを作成するとき、または既存のエージェントをスーパーバイザーエージェントとして特定するときに、スーパーバイザーエージェントが複数のコラボレーターエージェント間で情報を処理する方法を指定することもできます。

    スーパーバイザーエージェントにコラボレーターエージェントからのレスポンスを調整するタスクを割り当てることも、スーパーバイザーエージェントに適切なコラボレーターエージェントに情報をルーティングするタスクを割り当てて、最終レスポンスを送信することもできます。スーパーバイザーエージェントに情報をルーティングするタスクを割り当てると、レイテンシーが短縮されます。

  3. コラボレーターエージェントのエイリアスバージョンをスーパーバイザーエージェントに関連付けます。

    注記

    現時点では、最大 10 人のコラボレーターエージェントをスーパーバイザーエージェントに関連付けることができます。

  4. マルチエージェントコラボレーションチームを準備してテストします。

  5. スーパーバイザーエージェントをデプロイして呼び出します。

マルチエージェントコラボレーションは、Amazon Bedrock コンソールで作成でき、API、AWS CLI、または AWS SDK を使用して作成できます。マルチエージェントコラボレーションを作成する方法については、任意の方法のタブを選択し、手順に従います。

Console
ステップ 1: コラボレーターエージェントを作成する
ステップ 2: 新しいスーパーバイザーエージェントを作成するか、既存のエージェントにスーパーバイザーロールを割り当てる
  1. 新しいスーパーバイザーエージェントを作成する場合は、エージェントを手動で作成および設定する する手順に従い、次のステップに進みます。

    すでにエージェントを設定していて、そのエージェントにスーパーバイザーロールを割り当てる場合は、次のステップに進みます。

  2. エージェントビルダーを開いていない場合は、次を実行します。

    1. Amazon Bedrock コンソールを使用するためのアクセス許可を持つ IAM ID を使用して、AWS マネジメントコンソールにサインインします。Amazon Bedrock コンソール (https://console.aws.amazon.com/bedrock) を開きます。

    2. 左側のナビゲーションペインで [エージェント] を選択します。次に、[エージェント] セクションでエージェントを選択します。

    3. [エージェントビルダーで編集] を選択します。

    4. [エージェントビルダー] で、[マルチエージェントコラボレーション] セクションまで下にスクロールし、[編集] を選択します。

  3. [マルチエージェントコラボレーション] ページの [コラボレーションステータス] セクションで、[マルチエージェントコラボレーション] を有効にします。これにより、エージェントはスーパーバイザーエージェントとして識別されます。

  4. [コラボレーション構成] セクションで、スーパーバイザーエージェントが複数のコラボレーターエージェント全体の情報を処理して最終レスポンスを調整する方法を選択します。

    1. スーパーバイザーエージェントにコラボレーターエージェントからのレスポンスを調整させる場合は、[スーパーバイザー] を選択します。

    2. スーパーバイザーエージェントに適切なコラボレーターエージェントに情報ををルーティングして最終レスポンスを送信させる場合は、[ルーティング機能付きスーパーバイザー] を選択します。

    3. 次のステップに進み、コラボレーターエージェントを追加します。

ステップ 3: コラボレーターエージェントを追加する
  1. [エージェントコラボレーター] セクションを展開し、マルチエージェントコラボレーション用に作成したコラボレーターエージェントの詳細を提供します。

    1. [コラボレーターエージェント] の場合は、ドロップダウンからコラボレーターエージェントと [エージェントエイリアス] を選択します。[表示] を選択して、コラボレーターエージェントの詳細を表示できます。

    2. [コラボレーター名] には、コラボレーターエージェントの代替名を入力します。この名前は、このエージェントの元の名前を置き換えません。

    3. [コラボレーション手順] で、このコラボレーターがスーパーバイザーエージェントに使用される時期の詳細を入力します。

    4. (オプション) スーパーバイザーエージェントが以前の会話のコンテキストをこのコラボレーターエージェントと共有する場合は、[会話履歴を有効にする] をオンにします。これをオンにすると、スーパーバイザーは、ユーザー入力テキストや各会話ターンからのスーパーバイザーエージェントのレスポンスなど、現在のセッションの完全な履歴を含めます。

  2. [コラボレーターを追加] を選択して、このコラボレーターエージェントをマルチエージェントコラボレーションチームに追加します。コラボレーターエージェントを追加するには、すべてのコラボレーターエージェントを追加するまでステップ 1 を繰り返します。

  3. コラボレーターエージェントの追加が完了したら、次のいずれかのオプションを選択します。

    • [マルチエージェントコラボレーション] にとどまるには、[保存] を選択して次のステップに進み、マルチエージェントコラボレーションチームの準備とテストを行います。

    • [エージェントの詳細] ページに戻る場合は、[保存して終了] を選択します。

ステップ 4: マルチエージェントコラボレーションを準備してテストする
  • 手順に従って、マルチエージェントコラボレーションチームの準備とテストを行います。

ステップ 5: マルチエージェントコラボレーションをデプロイする
  • InvokeAgent リクエストを行うようにスーパーバイザーエージェントを設定して、マルチエージェントコラボレーションをデプロイします。

API

マルチエージェントコラボレーションチームを作成するには、次の手順に従います。

ステップ 1: コラボレーターエージェントを作成する
ステップ 2: 新しいスーパーバイザーエージェントを作成するか、既存のエージェントにスーパーバイザーロールを割り当てる
  • 新しいスーパーバイザーエージェントを作成するには、Amazon Bedrock エージェントのビルドタイムエンドポイントを使用して CreateAgent リクエストを送信します (リクエストとレスポンスの形式およびフィールドの詳細についてはリンクを参照)。

    既存のエージェントにスーパーバイザーロールを割り当てるには、Amazon Bedrock エージェントのビルドタイムエンドポイントを使用して UpdateAgent リクエストを送信します。すべてのフィールドが上書きされるため、更新するフィールドと、変更せずに維持するフィールドの両方を含めます。

    最低限、次のフィールドを含める必要があります。

    フィールド ユースケース
    agentResourceRoleArn エージェントで API オペレーションを呼び出すアクセス許可を持つサービスロールの ARN を指定する
    foundationModel エージェントがオーケストレーションで使用する基盤モデル (FM) を指定する
    instruction エージェントに何をすべきかの指示を提供する。オーケストレーションプロンプトテンプレートの $instructions$ プレースホルダーで使用されます。
    agentCollaboration

    エージェントにスーパーバイザーロールを割り当てるには。

    スーパーバイザーエージェントがコラボレーターエージェントからのレスポンスを調整し、レスポンスを出力する場合は、SUPERVISOR を指定します。

    スーパーバイザーエージェントが適切なコラボレーターエージェントに情報をルーティングして、最終レスポンスを送信する場合は、SUPERVISOR_ROUTER を指定します。

    デフォルトでは、このフィールドは DISABLED に設定されます。

    次のフィールドはオプションです。

    フィールド ユースケース
    description エージェントが何をするかの説明
    idleSessionTTLInSeconds エージェントがセッションを終了して保存された情報を削除するまでの時間。
    customerEncryptionKeyArn エージェントリソースを暗号化するための KMS キーの ARN
    tags タグをエージェントに関連付ける。
    promptOverrideConfiguration オーケストレーションの各ステップで FM に送信されるプロンプトをカスタマイズする
    guardrailConfiguration エージェントにガードレールを追加する。使用するガードレールの ID または ARN とバージョンを指定します。
    clientToken API リクエストが 1 回だけ完了するようにします。詳細については、「べき等性の確保」を参照してください。

    レスポンスでは、新しく作成されたスーパーバイザーエージェントの詳細を含む CreateAgent オブジェクトが返されます。エージェントの作成に失敗すると、トラブルシューティング用に、レスポンスの CreateAgent オブジェクトで failureReasons のリストと recommendedActions のリストが返されます。

ステップ 3: コラボレーターエージェントを追加する
  • コラボレーターエージェントをスーパーバイザーエージェントと関連付けるには、Amazon Bedrock エージェントのビルドタイムエンドポイントを使用して AssociateAgentCollaborator リクエストを送信します (リクエストとレスポンスの形式およびフィールドの詳細についてはリンクを参照)。

    最低限、次のフィールドを含める必要があります。

    フィールド ユースケース
    collaboratorName コラボレーターエージェントの代替名を指定するには。この名前はコラボレーション手順にのみ表示され、元のエージェント名は置き換えられません。
    agentDescriptor エージェントのエイリアスの Arn を指定するには。
    collaborationInstruction コラボレーターエージェントに何をすべきかの指示を提供するには。
    relayConversationHistory

    TO_COLLABORATOR に設定して、スーパーバイザーエージェントがこのコラボレーターエージェントとの以前の会話のコンテキストを共有するように指定します。

    有効な値: TO_COLLABORATOR | DISABLED

ステップ 4: マルチエージェントコラボレーターチームを準備してテストする
  • 手順に従って、マルチエージェントコラボレーションチームの準備とテストを行います。

ステップ 4: マルチエージェントコラボレーションチームをデプロイする
  • InvokeAgent リクエストを行うようにスーパーバイザーエージェントを設定して、マルチエージェントコラボレーションチームをデプロイします。