

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# ナレッジベースをクエリし、取得したデータに基づいてレスポンスを生成する
<a name="kb-test-retrieve-generate"></a>

**重要**  
ガードレールは、入力と LLM から生成されたレスポンスにのみ適用されます。実行時にナレッジベースから取得したリファレンスには適用されません。

ナレッジベースをセットアップした後、ナレッジベースをクエリし、[https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html) APIオペレーションを使用してソースデータから取得されたチャンクに基づいてレスポンスを生成できます。元のソースデータへの引用を含めてレスポンスが返されます。デフォルトの Amazon Bedrock ナレッジベースランカーではなく[再ランク付けモデル](rerank.md)を使用して、取得中にソースチャンクの関連性をランク付けすることもできます。

**マルチモーダルコンテンツの制限**  
`RetrieveAndGenerate` では、マルチモーダルコンテンツのサポートが制限されています。Nova マルチモーダル埋め込みを使用する場合、RAG 機能はテキストコンテンツのみに制限されます。オーディオおよびビデオ処理を含むマルチモーダルを完全にサポートするには、テキスト埋め込みモデルで BDA を使用します。詳細については、「[マルチモーダルコンテンツのナレッジベースを構築する](kb-multimodal.md)」を参照してください。

**注記**  
`RetrieveAndGenerate` フロー中に `Retrieve` レスポンスから返されたイメージは、レスポンス生成のプロンプトに含まれます。`RetrieveAndGenerate` レスポンスにはイメージを含めることはできませんが、イメージを含むソースを引用できます。

ナレッジベースのクエリを実行する方法については、任意の方法のタブを選択し、その手順を実行してください。

------
#### [ Console ]

**ナレッジベースをテストするには**

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

1. 左側のナビゲーションペインで **[ナレッジベース]** を選択します。

1. **[ナレッジベース]** セクションで、次のいずれかの操作を行います。
   + テストするナレッジベースの横にあるラジオボタンを選択して、**[ナレッジベースをテストする]** を選択します。右側からテスウィンドウが表示されます。
   + テストするナレッジベースを選択します。右側からテスウィンドウが表示されます。

1. ナレッジベースから取得した情報を基にしたレスポンスを生成するには、**[クエリに対するレスポンスを生成する]** を有効にします。Amazon Bedrock はデータソースに基づいてレスポンスを生成し、提供された情報を脚注とともに引用します。

1. レスポンスの生成に使用するモデルを選択するには、**[モデルを選択]** を選択します。次に、**[適用]** を選択します。

1. (オプション) 設定アイコン (![\[Three horizontal sliders with adjustable circular controls for settings or parameters.\]](http://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/images/icons/configurations.png)) を選択して、**[設定]** を開きます。構成については、「[クエリとレスポンスの生成を設定してカスタマイズする](kb-test-config.md)」を参照してください。

1. チャットウィンドウのテキストボックスにクエリを入力して **[実行]** を選択すると、ナレッジベースからのレスポンスが表示されます。

1. 脚注を選択して、レスポンスのその部分の引用元からの抜粋を表示します。ファイルを含む S3 オブジェクトに移動するリンクを選択します。

1. 返されたチャンクの詳細を表示するには、**[ソースの詳細を表示]** を選択します。
   + クエリの設定を表示するには、**[クエリ設定]** を展開します。
   + ソースチャンクの詳細を表示するには、ソースチャンクの横の右矢印 (![\[Play button icon with a triangular shape pointing to the right.\]](http://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/images/icons/caret-right-filled.png)) を選択して展開します。以下の情報が表示されます。
     + ソースチャンクからの未加工テキスト。このテキストをコピーするには、コピーアイコン (![\[Icon representing a crop or resize function, with two overlapping rectangles.\]](http://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/images/icons/copy.png)) を選択します。Amazon S3 を使用してデータを保存した場合は、外部リンクアイコン (![\[Icon of a square with an arrow pointing outward from its top-right corner.\]](http://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/images/icons/external.png)) を選択して、対象ファイルを含む S3 オブジェクトに移動します。
     + Amazon S3 を使用してデータを保存した場合、ソースチャンクに関連付けられているメタデータ。属性/フィールドのキーと値は、ソースドキュメントに関連付けられている `.metadata.json` ファイルで定義されています。詳細については、「[クエリとレスポンスの生成を設定してカスタマイズする](kb-test-config.md)」の「**メタデータとフィルタリング**」セクションを参照してください。

**チャットオプション**
+ レスポンス生成に別のモデルを使用するには、**[モデルを変更]** を選択します。モデルを変更すると、チャットウィンドウ内のテキストは完全に消去されます。
+ **[レスポンスを生成]** をクリアして、ソースチャンクを直接取得するに切り替えます。設定を変更すると、チャットウィンドウ内のテキストは完全に消去されます。
+ チャットウィンドウ内のテキストを消去するには、ほうきアイコン (![\[Magnifying glass icon with a checkmark inside, symbolizing search or inspection.\]](http://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/images/icons/broom.png)) を選択します。
+ チャットウィンドウ内のすべての出力をコピーするには、コピーアイコン (![\[Icon representing a crop or resize function, with two overlapping rectangles.\]](http://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/images/icons/copy.png)) を選択します。

------
#### [ API ]

ナレッジベースにクエリを実行し、基盤モデルを使用してデータソースからの結果に基づいてレスポンスを生成するには、[Amazon Bedrock エージェントランタイムエンドポイント](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-rt)を使用して、[https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html) リクエストを送信します。

[https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerateStream.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerateStream.html) API はストリーミング形式でデータを返すため、結果全体を待たずにチャンクで生成されたレスポンスにアクセスできます。

以下のフィールドが必要です。

**注記**  
API レスポンスには引用イベントが含まれています。`citation` メンバーは非推奨になりました。代わりに、`generatedResponse` および `retrievedReferences` フィールドを使用することをお勧めします。参考までに、「[https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_CitationEvent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_CitationEvent.html)」を参照してください。


****  

| フィールド | 基本的な説明 | 
| --- | --- | 
| input | クエリを指定する text フィールドが含まれます。 | 
| retrieveAndGenerateConfiguration | 取得と生成の設定を指定する [RetrieveAndGenerateConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerateConfiguration.html) が含まれます。詳細については、以下を参照してください。 | 

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


****  

| フィールド | ユースケース | 
| --- | --- | 
| sessionId | 前のセッションと同じ値を使用してそのセッションを続行し、モデルのコンテキストを維持します。 | 
| sessionConfiguration | セッションの暗号化用のカスタム KMS キーが含まれます。 | 

[RetrieveAndGenerateConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerateConfiguration.html) に `knowledgeBaseConfiguration` フィールドを含めます。このフィールドは、次のフィールドを含む [KnowledgeBaseRetrieveAndGenerateConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_KnowledgeBaseRetrieveAndGenerateConfiguration.html) オブジェクトにマッピングされます。
+ 以下のフィールドが必要です。  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/kb-test-retrieve-generate.html)
+ 次のフィールドはオプションです。  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/kb-test-retrieve-generate.html)

[KnowledgeBaseRetrievalConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_KnowledgeBaseRetrievalConfiguration.html) 内の [KnowledgeBaseVectorSearchConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_KnowledgeBaseVectorSearchConfiguration.html) に `rerankingConfiguration` フィールドを含めることで、デフォルトの Amazon Bedrock ナレッジベースランキングモデルで再ランキングモデルを使用できます。`rerankingConfiguration` フィールドは [VectorSearchRerankingConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_VectorSearchRerankingConfiguration.html) オブジェクトにマッピングされています。このオブジェクトでは、使用する再ランキングモデル、含める追加のリクエストフィールド、再ランキング中にドキュメントを除外するメタデータ属性、および再ランク付け後に返される結果の数を指定できます。詳細については、「[VectorSearchRerankingConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_VectorSearchRerankingConfiguration.html)」を参照してください。

**注記**  
指定した `numberOfRerankedResults` 値が [KnowledgeBaseVectorSearchConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_KnowledgeBaseVectorSearchConfiguration.html) の `numberOfResults` 値より大きい場合、返される結果の最大数は `numberOfResults` の値になります。例外は、クエリ分解を使用する場合です (詳細については、「[クエリとレスポンスの生成を設定してカスタマイズする](kb-test-config.md)」の「**クエリの変更**」セクションを参照してください)。クエリ分解を使用する場合、`numberOfRerankedResults` は `numberOfResults` の最大 5 倍になります。

レスポンスは、生成されたレスポンスを `output` フィールドに返し、引用されたソースチャンクを `citations` フィールドの配列として返します。各 [Citation](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Citation.html) オブジェクトは以下のフィールドを含みます。


****  

| フィールド | 基本的な説明 | 
| --- | --- | 
| generatedResponsePart | textResponsePart フィールドには、引用が関係する text が含まれます。span フィールドは、引用を含む出力の部分の先頭と末尾のインデックスを提供します。 | 
| retrievedReferences | [RetrievedReference](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievedReference.html) オブジェクトの配列。各オブジェクトには、ソースチャンクの content、ドキュメントに関連付けられた metadata、データソース内のドキュメントの URI または URL の location が含まれます。コンテンツが画像の場合、base64 でエンコードされたコンテンツのデータ URI は data:image/jpeg;base64,\$1\$1base64-encoded string\$1 の形式で返されます。 | 

レスポンスは `sessionId` 値も返します。この値は、同じ会話を維持するために別のリクエストで再利用できます。

リクエストに `guardrailConfiguration` を含めた場合、`guardrailAction` フィールドはコンテンツがブロックされたかどうかを通知します。

取得したデータに画像が含まれている場合、レスポンスは次のレスポンスヘッダーも返します。これには、レスポンスで返されたソースチャンクのメタデータが含まれます。
+ `x-amz-bedrock-kb-byte-content-source` – 画像の Amazon S3 URI が含まれます。
+ `x-amz-bedrock-kb-description` – 画像の Base64 でエンコードされた文字列が含まれます。

**注記**  
[メタデータフィルターを設定する](kb-test-config.md)ときに、これらのメタデータレスポンスヘッダーをフィルタリングすることはできません。

------

**注記**  
レスポンスの生成中にプロンプトが文字制限を超えたというエラーが表示された場合は、次の方法でプロンプトを短縮できます。  
取得される結果の最大数を減らします (これにより、[ナレッジベースのプロンプトテンプレート: オーケストレーションと生成](kb-test-config.md#kb-test-config-prompt-template) の \$1search\$1results\$1 プレースホルダーで入力される内容が短縮されます)。
より小さなチャンクを使用するチャンキング戦略でデータソースを再作成します (これにより、[ナレッジベースのプロンプトテンプレート: オーケストレーションと生成](kb-test-config.md#kb-test-config-prompt-template) の \$1search\$1results\$1 プレースホルダーで入力される内容が短縮されます)。
プロンプトテンプレートを短縮します。
ユーザークエリを短縮します (これにより、[ナレッジベースのプロンプトテンプレート: オーケストレーションと生成](kb-test-config.md#kb-test-config-prompt-template) の \$1query\$1 プレースホルダーに入力される内容が短縮されます)。