

# RAG の実装
<a name="speech-rag"></a>

**注記**  
このドキュメントは Amazon Nova バージョン 1 を対象としています。Amazon Nova 2 Sonic ガイドについては、「[ツールの設定](https://docs.aws.amazon.com/nova/latest/nova2-userguide/sonic-tool-configuration.html)」を参照してください。

検索拡張生成 (RAG) は、ナレッジベースから情報を取得して組み込むことでレスポンスを強化します。Amazon Nova Sonic では、ツールの使用を通じて RAG が実装されます。

## ナレッジベースの実装の概要
<a name="speech-rag-implement"></a>

RAG を実装するには、次の要素が必要です。
+ **ツールを設定する** – `promptStart` イベントでナレッジベース検索ツールを定義します。
+ **ツール使用リクエストの受信** – ユーザーが質問すると、モデルはナレッジベースツールを呼び出します。
+ **ベクトルデータベースへのクエリ** – ベクトルデータベースに対して検索クエリを実行します。
+ **結果を返す** – 検索結果をモデルに送り返します。
+ **レスポンスの生成** – モデルは、取得した情報を音声レスポンスに組み込みます。

## ナレッジベースの設定
<a name="speech-rag-tool"></a>

基本的なナレッジベースツールの設定例を次に示します。

```
{
     toolSpec: {
         name: "knowledgeBase",
         description: "Search the company knowledge base for information",
         inputSchema: {
             json: JSON.stringify({
                 type: "object",
                 properties: {
                     query: {
                         type: "string",
                         description: "The search query to find relevant information"
                     }
                 },
                 required: ["query"]
             })
         }
     }
 };
```