翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon S3 は、データをオブジェクトとしてバケットに保存するオブジェクトストレージサービスです。Amazon Bedrock の AWS マネジメントコンソールまたは CreateDataSource API を使用して、Amazon Bedrock
Amazon S3 コンソールまたは API を使用して、ファイルの小さなバッチを Amazon S3 バケットにアップロードできます。または、 AWS DataSyncを使用して複数のファイルを S3 に継続的にアップロードし、オンプレミス、エッジ、その他のクラウド、または AWS ストレージからスケジュールに従ってファイルを転送することもできます。
現在、汎用 S3 バケットのみがサポートされています。
クロールできるファイル数とファイルあたりの MB に制限があります。「Quotas for knowledge bases」を参照してください。
サポートされている機能
-
ドキュメントメタデータフィールド
-
包含コンテンツフィルター
-
追加、更新、削除されたコンテンツの増分同期
前提条件
Amazon S3 で、以下を確認してください。
-
Amazon S3 バケット URI、Amazon リソースネーム (ARN)、およびバケットの所有者の AWS アカウント ID を書き留めます。URI と ARN は、Amazon S3 コンソールのプロパティセクションにあります。バケットは、Amazon Bedrock ナレッジベースと同じリージョンにある必要があります。バケットにアクセスするにはアクセス許可が必要です。
AWS アカウントで、以下を確認してください。
-
ナレッジベースの AWS Identity and Access Management (IAM) ロール/アクセス許可ポリシーに、データソースに接続するために必要なアクセス許可を含めます。このデータソースがナレッジベース IAM ロールに追加するために必要なアクセス許可については、「データソースへのアクセス許可」を参照してください。
注記
コンソールを使用する場合、ナレッジベースを作成するステップの一部として、必要なすべてのアクセス許可を持つ IAM ロールを作成できます。データソースやその他の設定を行うと、必要なすべてのアクセス許可を持つ IAM ロールが特定のナレッジベースに適用されます。
接続設定
Amazon S3 バケットに接続するには、Amazon Bedrock がデータにアクセスしてクロールできるように、必要な設定情報を提供する必要があります。また、前提条件 に従う必要があります。
このデータソースの設定例をこのセクションに示します。
包含フィルター、ドキュメントメタデータフィールド、増分同期、およびこれらの仕組みの詳細については、以下を選択してください。
Amazon S3 データソース内の各ファイルのドキュメントメタデータフィールド/属性と、データソースをベクトルストアにインデックス作成するときに埋め込みに含めるかどうかを指定する個別のファイルを含めることができます。たとえば、次の形式でファイルを作成し、example.metadata.json
という名前を付け、S3 バケットにアップロードできます。
{
"metadataAttributes": {
"company": {
"value": {
"type": "STRING",
"stringValue": "BioPharm Innovations"
},
"includeForEmbedding": true
},
"created_date": {
"value": {
"type": "NUMBER",
"numberValue": 20221205
},
"includeForEmbedding": true
},
"author": {
"value": {
"type": "STRING",
"stringValue": "Lisa Thompson"
},
"includeForEmbedding": true
},
"origin": {
"value": {
"type": "STRING",
"stringValue": "Overview"
},
"includeForEmbedding": true
}
}
}
メタデータファイルは、関連するソースドキュメントファイルと同じ名前を使用し、ファイル名の末尾に .metadata.json
を追加する必要があります。メタデータファイルは、Amazon S3 バケットのソースファイルと同じフォルダまたは場所に保存する必要があります。ファイルは 10 KB の制限を超えることはできません。サポートされている属性/フィールドデータ型とメタデータフィールドに適用できるフィルタリング演算子の詳細については、「メタデータとフィルタリング」を参照してください。
Amazon S3 パスプレフィックスである包含プレフィックスを指定できます。このプレフィックスでは、バケット全体の代わりに S3 ファイルまたはフォルダを使用して S3 データソースコネクタを作成できます。たとえば、プレフィックスは「.*\\.pdf」にすることができます。
データソースコネクタは、データソースがナレッジベースと同期するたびに、新規、変更、削除されたコンテンツをクロールします。 Amazon Bedrock は、データソースのメカニズムを使用して、コンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツをクロールできます。データソースをナレッジベースと初めて同期すると、デフォルトですべてのコンテンツがクロールされます。
データソースをナレッジベースと同期するには、StartIngestionJob API を使用するか、コンソールでナレッジベースを選択し、データソースの概要セクションで [同期] を選択します。
重要
データソースから同期するすべてのデータは、データを取得する bedrock:Retrieve
アクセス許可を持つすべてのユーザーが利用できるようになります。これには、データソースのアクセス許可が制御されているデータを含めることもできます。詳細については、「Knowledge base permissions」を参照してください。
Amazon S3 バケットをナレッジベースに接続するには
-
の手順に従ってAmazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する、データソースとして Amazon S3 を選択します。
-
データソースの名前を指定します。
-
Amazon S3 バケットが現在の AWS アカウントにあるか、別の AWS アカウントにあるかを指定します。バケットはナレッジベースと同じリージョンにある必要があります。
-
(オプション) Amazon S3 バケットが KMS キーで暗号化されている場合は、 キーを含めます。詳細については、「Amazon S3 のデータソースの AWS KMS キーを復号するアクセス許可」を参照してください。
-
(オプション) コンテンツの解析とチャンキングセクションで、データの解析とチャンキングの方法をカスタマイズできます。これらのカスタマイズの詳細については、次のリソースを参照してください。
-
解析オプションの詳細については、「」を参照してくださいデータソースの解析オプション。
-
チャンキング戦略の詳細については、「」を参照してくださいナレッジベースでのコンテンツチャンキングの仕組み。
警告
データソースへの接続後にチャンキング戦略を変更することはできません。
-
Lambda 関数を使用してデータのチャンキングとメタデータの処理をカスタマイズする方法の詳細については、「」を参照してくださいカスタム変換 Lambda 関数を使用して、データの取り込み方法を定義する。
-
-
詳細設定セクションでは、オプションで以下を設定できます。
-
一時データストレージ用の KMS キー。– データをデフォルト AWS マネージドキー または独自の KMS キーを使用して埋め込みに変換しながら、一時的なデータを暗号化できます。詳細については、「データインジェスト時の一時データストレージの暗号化」を参照してください。
-
データ削除ポリシー – デフォルトでベクトルストアに保存されているデータソースのベクトル埋め込みを削除するか、ベクトルストアデータを保持するように選択できます。
-
-
埋め込みモデルとベクトルストアの選択を続けます。残りのステップを確認するには、「」に戻りAmazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する、データソースを接続した後にステップから続行します。