単一のナレッジベースを使用して Amazon Bedrock エージェントのパフォーマンスを最適化する - Amazon Bedrock

単一のナレッジベースを使用して Amazon Bedrock エージェントのパフォーマンスを最適化する

Amazon Bedrock エージェントには、単一のナレッジベースを持つエージェントのシンプルなユースケースを対象に、レイテンシーを最適化できるさまざまなフローを選択するオプションがあります。エージェントがこの最適化を利用できるようにするには、エージェントの該当バージョンが次の条件に当てはまることを確認します。

  • エージェントにナレッジベースが 1 つだけ含まれている。

  • エージェントにアクショングループが含まれていないか、すべて無効になっている。

  • 十分な情報がない場合でも、エージェントはユーザーに追加情報を求めない。

  • エージェントはデフォルトのオーケストレーションプロンプトテンプレートを使用している。

これらの条件を確認する方法については、任意の方法のタブを選択してステップを実行してください。

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

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

  3. [エージェントの概要] セクションで、[ユーザー入力] フィールドが [無効] であることを確認します。

  4. 最適化がエージェントの作業中のドラフトに適用されているかどうかを確認する場合は、[作業中のドラフト] セクションの [作業中のドラフト] を選択します。最適化がエージェントの特定のバージョンに適用されているかどうかを確認する場合は、[バージョン] セクションでバージョンを選択します。

  5. [ナレッジベース] セクションにナレッジベースが 1 つだけ含まれていることを確認します。ナレッジベースが複数ある場合は、1 つを除くすべてのナレッジベースを無効にします。ナレッジベースを無効にする方法については、「ナレッジベースとエージェントの関連付けを解除する」を参照してください。

  6. [アクショングループ] セクションにアクショングループが含まれていないことを確認します。アクショングループがある場合は、すべて無効にします。アクショングループを無効にする方法については、「アクショングループを変更する」を参照してください。

  7. [詳細プロンプト] セクションで、[オーケストレーション] フィールドの値が [デフォルト] であることを確認します。[上書き] になっている場合は、[編集] を選択し (エージェントの特定のバージョンを表示している場合は、まず作業中のドラフトに移動する必要があります)、以下を実行してください。

    1. [詳細プロンプト] セクションで [オーケストレーション] タブを選択します。

    2. テンプレートをデフォルト設定に戻すと、カスタムプロンプトテンプレートは削除されます。後で必要となる場合は、必ずテンプレートを保存しておきます。

    3. [オーケストレーションテンプレートのデフォルトを上書き] を選択解除します。表示されるメッセージを確認します。

  8. 追加した変更を適用するには、[エージェントの詳細] ページの上部またはテストウィンドウで [準備] を選択します。次に、テストウィンドウでメッセージを送信して、エージェントの最適化されたパフォーマンスをテストします。

  9. (オプション) 必要に応じて、「アプリケーションに Amazon Bedrock エージェントをデプロイして使用する」の手順に従ってエージェントの新しいバージョンを作成します。

API
  1. Amazon Bedrock エージェントのビルドタイムエンドポイントを使用して ListAgentKnowledgeBases リクエストを送信し、エージェントの ID を指定します。agentVersion には、作業中のドラフトの場合は DRAFT を使用し、そうでない場合は該当するバージョンを指定します。レスポンスで、agentKnowledgeBaseSummaries に 1 つのオブジェクトのみ (1 つのナレッジベースに対応) が含まれていることを確認します。ナレッジベースが複数ある場合は、1 つを除くすべてのナレッジベースを無効にします。ナレッジベースを無効にする方法については、「ナレッジベースとエージェントの関連付けを解除する」を参照してください。

  2. Amazon Bedrock エージェントのビルドタイムエンドポイントを使用して ListAgentActionGroups リクエストを送信し、エージェントの ID を指定します。agentVersion には、作業中のドラフトの場合は DRAFT を使用し、そうでない場合は該当するバージョンを指定します。レスポンスで、actionGroupSummaries リストが空であることを確認します。アクショングループがある場合は、すべて無効にします。アクショングループを無効にする方法については、「アクショングループを変更する」を参照してください。

  3. Amazon Bedrock エージェントのビルドタイムエンドポイントを使用して GetAgent リクエストを送信し、エージェントの ID を指定します。レスポンスの promptOverrideConfiguration フィールドの promptConfigurations リスト内で、promptType 値が ORCHESTRATIONPromptConfiguration オブジェクトを探します。promptCreationMode 値が DEFAULT の場合、何もする必要はありません。OVERRIDDEN の場合は、以下を実行してテンプレートをデフォルト設定に戻します。

    1. テンプレートをデフォルト設定に戻すと、カスタムプロンプトテンプレートは削除されます。後で必要となる場合は、basePromptTemplate フィールドから必ずテンプレートを保存しておきます。

    2. Amazon Bedrock エージェントのビルドタイムエンドポイントを使用して UpdateAgent リクエストを送信します。オーケストレーションテンプレートに対応する PromptConfiguration オブジェクトで、promptCreationMode の値を DEFAULT に設定します。

  4. 加えた変更をすべて適用するには、Amazon Bedrock エージェントのビルドタイムエンドポイントを使用して PrepareAgent リクエストを送信します。次に、Amazon Bedrock エージェントのランタイムエンドポイントを使用して InvokeAgent リクエストを送信し、エージェントの TSTALIASID エイリアスを使ってエージェントの最適化されたパフォーマンスをテストします。

  5. (オプション) 必要に応じて、「アプリケーションに Amazon Bedrock エージェントをデプロイして使用する」の手順に従ってエージェントの新しいバージョンを作成します。