ライフスタイル

Amazon Bedrock ナレッジベースに単発RAGと検索のみモードが追加、質問の難易度に応じて検索方法を選択可能に

AWSは、Amazon Bedrock Managed Knowledge BaseがAgenticRetrieveStreamで単発RAGと検索のみに対応し、既存のエージェント型検索も維持すると発表しました。社内向けAI質問応答アシスタントを作る開発者は、同じAPIで簡単な問い合わせも複雑な比較も処理できます。AWSによると、簡単な質問は応答が速くなり、モデル使用量も減らせます。

読了目安 7 分

Amazon Bedrock ナレッジベースに単発RAGと検索のみモードが追加、質問の難易度に応じて検索方法を選択可能に
画像:Mokaair (Original editorial artwork)

何が起きたのか

AWSは公式ブログで、Amazon Bedrock Managed Knowledge BaseがAgenticRetrieveStreamを通じて、単発の検索拡張生成(RAG)と検索のみのリクエストに対応したと発表しました。RAGとは、企業の文書から関連する箇所を探し出し、それをもとにAIモデルが回答を作成する手法です。ナレッジベースは、AIが参照するそれらの文書を保管するデータベースです。

AWSによると、単発RAGはナレッジベースを一度だけ検索し、基盤モデル(質問を理解して文章を生成する大規模AIモデル)が見つかった箇所をもとに回答を生成します。検索のみは、該当箇所だけを返して回答は生成せず、アプリケーションやユーザーが原文を直接扱えるようにします。この2つのモードは、サービス側が複数回の検索を計画・実行してから回答する既存のエージェント型検索に加わった形です。

AWSの説明では、エージェント型検索は基盤モデルが質問をサブクエリに分解し、関連するナレッジベースを検索して、結果が十分かどうかを評価します。必要に応じて、設定された反復上限の範囲内で検索を調整し、箇所の文脈が不足していれば文書全体を取得することもできます。回答生成を有効にすると、サービスは取得した情報を統合して引用を付け、トレースイベントには計画と検索の手順が表示されます。

3つのモードの選び方

AWSによると、maxAgentIterationの範囲は0〜5となり、このパラメータ1つでリクエストごとのモードを決められます。1回の反復は基盤モデルの1回の呼び出しに相当します。値nでは最大n−1回のエージェント型計画が許可され、最後の反復は回答生成のために確保されます。AWSはさらに、最初の計画の前に実行される初期の推測的検索は反復回数に含まれないと述べています。

AWSが説明する3つの検索モードの比較
maxAgentIteration動作(AWSの説明に基づく)適した場面
01回の検索のみ。基盤モデルは呼び出さず、Retrieve APIの直接呼び出しと同等該当箇所の取得、原文の確認
11回の検索と1回の回答。計画やクエリの書き換えなし範囲が明確な直接的な質問
2〜5最大n−1回の計画の後に回答複数の要素を含む質問、比較型、複数ナレッジベースにまたがる質問

一般ユーザーと開発者への実際の影響

社内向け質問応答アシスタントでは、簡単な問い合わせも複雑な比較も、同じAPIで扱えるようになります。AWSによると、単発RAGは基盤モデルの呼び出しが1回で済むため、エージェント型検索に比べてレイテンシとモデル使用量を抑えられます。検索のみでは基盤モデルをまったく呼び出しません。

AWSは3つの使い方を例示しています。「個人事業主が事業用口座を開設するのに必要な書類は何か」という質問には、maxAgentIteration=1で回答生成を有効にします。個人事業主と有限責任会社の口座開設要件を比較する質問には、maxAgentIteration=4を使えます。ポリシーの原文を読む必要がある場合は、0を指定して回答生成を無効にします。

制限と注意点

  • AWSによると、モードの選択はアプリケーションのロジックの役割であり、このパラメータがリクエストを自動的に振り分けることはありません。
  • AWSによると、maxAgentIteration=0でgenerateResponseをtrueにするのは無効な設定で、4xxエラーが返されます。
  • AWSによると、検索のみで返される箇所はストリームのresultイベントに含まれ、scoreやlocationフィールドはありません。この点で、Retrieveを直接呼び出した場合のレスポンス形式とは異なります。
  • AWSによると、例に挙げたアシスタントは口座を承認するものではなく、銀行の審査・承認プロセスに代わるものでもありません。
  • AWSは、反復上限を高くすれば常により良い回答になるとは限らないため、代表的な質問で評価するよう注意を促しています。

始め方(AWSの説明に基づく)

  1. 自社の文書から、代表的な質問と期待される回答を用意します。複数の文書にまたがらないと答えられない質問や、文書では答えられない質問も含めます。
  2. AgenticRetrieveStream APIリファレンスに従い、リクエストでmaxAgentIterationとgenerateResponseを設定します。
  3. 同じナレッジベースで単発RAGと既存のエージェント型設定を比較し、応答レイテンシとリクエストコストを測定するとともに、回答が正しいか、検索された箇所に裏付けられているかを確認します。
  4. 結果に基づき、各ワークフローで品質要件を満たす最小の反復上限を選びます。

よくある質問

単発RAGは単一のナレッジベースしか使えませんか。

いいえ。AWSによると、maxAgentIterationが0と1を含む3つのモードすべてが複数のナレッジベースに対応しています。エージェント型モードで追加されるのは、クエリの分解、根拠の評価、反復的な検索です。

既存のエージェント型リクエストに影響はありますか。

AWSの説明では、2〜5を使う既存リクエストは現在の動作を維持します。そのため開発者はアプリケーション全体を設計し直さず、必要に応じて新モードを導入できます。

検索のみモードは言語モデルを呼び出しますか。

いいえ。AWSによると、maxAgentIteration=0では基盤モデルを一切呼び出さず、Retrieve APIの直接呼び出しと同等の動作になりますが、レスポンス形式は異なります。

値は高く設定すべきですか、低くすべきですか。

AWSによると、値が低いほど呼び出しが速く予測しやすくなり、高いほどプランナーが検索を分解・調整して本当に難しい質問に対応できます。AWSは、簡単な問い合わせは低い値から始め、複雑な質問でレイテンシより精度が重要な場合に引き上げることを勧めています。

このトピックの最新ニュースを見る

出典

ライフスタイル