

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

# Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する
<a name="knowledge-base-create"></a>

データソースに接続してナレッジベースを作成するときは、以下を設定または指定します。
+ ナレッジベースを定義して識別する一般情報
+ ナレッジベースへのアクセス許可を持つサービスロール
+ ナレッジベースの設定 (データソースからデータを変換するときに使用する埋め込みモデル、埋め込みを保存するサービスのストレージ設定、およびオプションでマルチモーダルデータを保存する S3 の場所など)

**注記**  
ルートユーザーを使用してナレッジベースを作成することはできません。これらのステップを開始する前に、IAM ユーザーでログインします。

自分のユースケースに対応するセクションを展開してください。

## コンソールを使用する
<a name="knowledge-base-create-console"></a>

**ナレッジベースを設定するには**

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

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

1. **[ナレッジベース]** セクションで、作成ボタンを選択し、ベクトルストアを含むナレッジベースの作成を選択します。

1. (オプション) ナレッジベースのデフォルトの名前を変更し、説明を入力します。

1. 他の必要なAWSサービスにアクセスするためのアクセス許可を Amazon Bedrock に付与する AWS Identity and Access Management(IAM) ロールを選択します。Amazon Bedrock にサービスロールを作成させることも、[Neptune Analytics 用に作成した独自のカスタムロール](kb-permissions.md#kb-permissions-neptune)の使用を選択することもできます。

1. ナレッジベースを接続するデータソースを選択します。

1. (オプション) ナレッジベースにタグを追加します。詳細については、「[Amazon Bedrock リソースにタグ付け](tagging.md)」を参照してください。

1. (オプション) ナレッジベースのアクティビティログを配信するサービスを設定します。

1. 次のセクションに進み、「[データソースをナレッジベースと接続する](data-source-connectors.md)」の手順に従ってデータソースを設定します。

1. **[埋め込みモデル]** セクションで、次の操作を行います。

   1. 埋め込みモデルを選択して、データをベクトル埋め込みに変換します。マルチモーダルデータ (イメージ、オーディオ、ビデオ) の場合は、Amazon Titan Multimodal Embeddings G1 や Cohere Embed v3 などのマルチモーダル埋め込みモデルを選択します。
**注記**  
Amazon Titan マルチモーダル埋め込み G1 を使用する場合は、S3 コンテンツバケットを指定する必要があり、デフォルトのパーサーのみを使用できます。このモデルは、イメージ検索のユースケース向けに最適化されています。マルチモーダルアプローチの選択に関する包括的なガイダンスについては、「」を参照してください[マルチモーダルコンテンツのナレッジベースを構築する](kb-multimodal.md)。

   1. (オプション) **[追加設定]** セクションを展開すると、次の設定オプションが表示されます (すべてのモデルがすべての設定をサポートしているわけではありません)。
      + **埋め込みタイプ** – データを浮動小数点 (float32) ベクトル埋め込み (より正確だがコストがかかる) またはバイナリベクトル埋め込み (精度は低下するがコストが低い) に変換するかどうか。バイナリベクトルをサポートする埋め込みモデルについては、「[サポートされている埋め込みモデル](knowledge-base-supported.md)」を参照してください。
      + **ベクトルディメンション** – 値を大きくすると精度は向上しますが、コストとレイテンシーが増加します。

1. **[ベクトルデータベース]** セクションで、次の操作を行います。

   1. ベクトルストアを選択して、クエリに使用するベクトル埋め込みを保存します。次のオプションがあります。
      + **新しいベクトルストアをクイック作成する** – Amazon Bedrock で使用できるベクトルストアのいずれかを選択します。オプションで、ベクトルストアのAWS KMSキー暗号化を設定することもできます。
**注記**  
このオプションを使用すると、Amazon Bedrock は各ベクトルストアのメタデータ配置を自動的に処理します。
        + **Amazon OpenSearch Serverless** – Amazon Bedrock ナレッジベースは、Amazon OpenSearch Serverless ベクトル検索コレクションとインデックスを作成し、必須フィールドを使用してそれを設定します。
        + **Amazon Aurora PostgreSQL Serverless** – Amazon Bedrock は Amazon Aurora PostgreSQL Serverless ベクトルストアを設定します。このプロセスでは、Amazon S3 バケットから非構造化テキストデータを取得し、テキストチャンクとベクトルに変換して、PostgreSQL データベースに保存します。詳細については、「[Amazon Bedrock 用の Aurora PostgreSQL ナレッジベースのクイック作成](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.quickcreatekb.html)」を参照してください。
        + **Amazon Neptune Analytics** – Amazon Bedrock は、検索拡張生成 (RAG) 手法をグラフと組み合わせて使用して生成 AI アプリケーションを強化し、エンドユーザーがより正確で包括的なレスポンスを得られるようにします。
        + **Amazon S3 Vectors** – Amazon Bedrock ナレッジベースは、データソースから生成された埋め込みを保存する S3 ベクトルバケットとベクトルインデックスを作成します。

          Amazon Bedrock と Amazon S3 Vectors の両方が利用可能なすべての AWS リージョンでAmazon S3のナレッジベースを作成できます。リージョンの可用性に関する情報については、「*Amazon S3 ユーザーガイド*」の「[Amazon S3 Vectors](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-vectors.html)」を参照してください。
**注記**  
Amazon Bedrock ナレッジベースで Amazon S3 Vectors を使用する場合、ベクトルごとに最大 1 KB のカスタムメタデータ (フィルタリング可能なメタデータとフィルタリング不可能なメタデータの両方を含む) と 35 のメタデータキーをアタッチできます。メタデータの制限の詳細については、[メタデータのサポート](knowledge-base-setup.md#metadata-support)「」の「」を参照してください[ナレッジベース用に作成したベクトルストアを使用するための前提条件](knowledge-base-setup.md)。
      + **作成したベクトルストアを選択する** – サポートされているベクトルストアを選択し、ベクトルインデックス内のベクトルフィールド名とメタデータフィールド名を識別します。詳細については、「[ナレッジベース用に作成したベクトルストアを使用するための前提条件](knowledge-base-setup.md)」を参照してください。
**注記**  
データソースが Confluence、Microsoft SharePoint、または Salesforce インスタンスの場合、サポートされているベクトルストアサービスは Amazon OpenSearch Serverless のみです。

   1. (オプション) **[追加設定]** セクションを展開し、関連する設定を変更します。

1. データソースに画像が含まれている場合は、パーサーが **[マルチモーダルストレージの保存先]** のデータから抽出するイメージを保存する Amazon S3 URI を指定します。画像はクエリ中に返すことができます。オプションで、デフォルトの代わりにカスタマーマネージドキーを選択してデータをAWS マネージドキー暗号化することもできます。
**注記**  
マルチモーダルデータは、Amazon S3 およびカスタムデータソースでのみサポートされています。
**注記**  
マルチモーダル埋め込みモデルを使用する場合:  
Amazon Titan マルチモーダル埋め込み G1 には S3 コンテンツバケットが必要で、デフォルトのパーサーを使用するイメージのみのデータセットで最適に動作します。
Cohere Embed v3 は、テキストデータセットと画像データセットの混在をサポートしており、任意のパーサー設定で使用できます。
イメージ検索のユースケースでは、トークンの制限により、Bedrock Data Automation (BDA) または基盤モデルパーサーを Titan G1 で使用しないようにします。
マルチモーダルストレージの送信先は、取得目的でファイルコピーを作成するため、追加のストレージ料金が発生する可能性があります。

1. **[次へ]** を選択して、ナレッジベースの詳細を確認します。次に進みナレッジベースを作成する前に、任意のセクションを編集できます。
**注記**  
ナレッジベースの作成にかかる時間は、特定の設定によって異なります。ナレッジベースの作成が完了すると、ナレッジベースのステータスは準備中または利用可能な状態に変更されます。  
ナレッジベースの準備ができて使用可能になったら、最初にデータソースの同期を行い、その後も必要に応じて同期を行いコンテンツを最新の状態に保ちます。コンソールでナレッジベースを選択し、データソースの概要セクションで **[同期]** を選択します。

## API を使用する
<a name="knowledge-base-create-api"></a>

ナレッジベースを作成するには、[Amazon Bedrock エージェントのビルドタイムエンドポイント](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt)を使用して、[CreateKnowledgeBase](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateKnowledgeBase.html) リクエストを送信します。

**注記**  
Amazon Bedrock にベクトルストアを作成および管理させたい場合は、コンソールを使用します。詳細については、このトピックの「**コンソールを使用する**」セクションを展開します。

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


****  

| フィールド | 基本的な説明 | 
| --- | --- | 
| 名前 | ナレッジベースの名前 | 
| roleArn | [Amazon Bedrock ナレッジベースサービスロール](kb-permissions.md)の ARN | 
| knowledgeBaseConfiguration | ナレッジベースの設定が含まれます。詳細については、以下を参照してください。 | 
| storageConfiguration | (非構造化データソースに接続する場合にのみ必要です)。選択したデータソースサービスの設定が含まれます。 | 

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


****  

| フィールド | ユースケース | 
| --- | --- | 
| 説明 | ナレッジベースの説明 | 
| clientToken | API リクエストが 1 回だけ完了するようにします。詳細については、「[べき等性の確保](https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html)」を参照してください。 | 
| タグ | タグをエイリアスに関連付ける場合に指定します。詳細については、「[Amazon Bedrock リソースにタグ付け](tagging.md)」を参照してください。 | 

[KnowledgeBaseConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_KnowledgeBaseConfiguration.html) オブジェクトにマッピングする `knowledgeBaseConfiguration` フィールドで、`type` フィールドに `VECTOR` を指定し、[VectorKnowledgeBaseConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_VectorKnowledgeBaseConfiguration.html) オブジェクトを含めます。オブジェクトには、以下のフィールドが含まれています。
+ `embeddingModelArn` – 使用する埋め込みモデルの ARN
+ `embeddingModelConfiguration` – 埋め込みモデルの設定 サポートされているモデルごとに指定できる値を確認するには、「[Amazon Bedrock ナレッジベースでサポートされているモデルとリージョン](knowledge-base-supported.md)」を参照してください。
+ (画像、図、グラフ、または表を含むマルチモーダルデータをナレッジベースに含める場合) `supplementalDataStorageConfiguration` – [SupplementalDataStorageLocation](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_SupplementalDataStorageLocation.html) オブジェクトにマッピングし、抽出されたデータを保存する S3 の場所を指定します。詳細については、「[データソースの解析オプション](kb-advanced-parsing.md)」を参照してください。

[StorageConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StorageConfiguration.html) オブジェクトにマッピングされる `storageConfiguration` フィールドで、`type` フィールドで接続するベクトルストアを指定し、そのベクトルストアに対応するフィールドを含めます。提供する必要がある情報の詳細については、[StorageConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StorageConfiguration.html) の各ベクトルストア設定タイプを参照してください。

以下は、Amazon OpenSearch Serverless コレクションに接続されたナレッジベースを作成するリクエストの例です。接続されたデータソースからのデータは Amazon Titan Text Embeddings V2 とのバイナリベクトル埋め込みに変換され、パーサーによって抽出されたマルチモーダルデータは {{MyBucket}} というバケットに保存されるように設定されています。

```
PUT /knowledgebases/ HTTP/1.1
Content-type: application/json

{
   "name": "MyKB",
   "description": "My knowledge base",
   "roleArn": "arn:aws:iam::111122223333:role/service-role/AmazonBedrockExecutionRoleForKnowledgeBase_123",
   "knowledgeBaseConfiguration": {
      "type": "VECTOR",
      "vectorKnowledgeBaseConfiguration": { 
         "embeddingModelArn": "arn:aws:bedrock:us-east-1::foundation-model/amazon.titan-embed-text-v2:0",
         "embeddingModelConfiguration": { 
            "bedrockEmbeddingModelConfiguration": { 
               "dimensions": 1024,
               "embeddingDataType": "BINARY"
            }
         },
         "supplementalDataStorageConfiguration": { 
            "storageLocations": [ 
               { 
                  "s3Location": { 
                     "uri": "arn:aws:s3:::MyBucket"
                  },
                  "type": "S3"
               }
            ]
         }
      }
   },
   "storageConfiguration": { 
      "opensearchServerlessConfiguration": { 
         "collectionArn": "arn:aws:aoss:us-east-1:111122223333:collection/abcdefghij1234567890",
         "fieldMapping": { 
            "metadataField": "metadata",
            "textField": "text",
            "vectorField": "vector"
         },
         "vectorIndexName": "MyVectorIndex"
      }
   }
}
```

**Topics**
+ [データソースをナレッジベースと接続する](data-source-connectors.md)
+ [データソースの取り込みをカスタマイズする](kb-data-source-customize-ingestion.md)
+ [ナレッジベースのセキュリティ設定を行います。](kb-create-security.md)