

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

# 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)

# データソースをナレッジベースと接続する
<a name="data-source-connectors"></a>

ナレッジベースの設定が完了したら、サポートされているデータソースをナレッジベースに接続します。

Amazon Bedrock ナレッジベースは、クエリエンジンを介した非構造化データソースまたは構造化データストアへの接続をサポートしています。各データソースへの接続方法については、各トピックを選択してください。

**マルチモーダルコンテンツのサポート**  
マルチモーダルコンテンツ (イメージ、オーディオ、ビデオファイル) は、Amazon S3 およびカスタムデータソースでのみサポートされています。他のデータソースタイプは、取り込み中にマルチモーダルファイルをスキップします。マルチモーダルコンテンツの使用に関する包括的なガイダンスについては、「」を参照してください[マルチモーダルコンテンツのナレッジベースを構築する](kb-multimodal.md)。

Amazon Bedrock コンソールを使用してデータソースに接続する方法については、このページの下部に掲載のデータソースタイプに対応するトピックを選択してください。

Amazon Bedrock API を使用してデータソースに接続するには、[Amazon Bedrock エージェントのランタイムエンドポイント](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-rt)を使用して、[CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) リクエストを送信します。

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


****  

| フィールド | 基本的な説明 | 
| --- | --- | 
| knowledgeBaseId | ナレッジベースの ID。 | 
| 名前 | ナレッジベースの名前。 | 
| dataSourceConfiguration | type フィールドにデータソースサービスまたはタイプを指定し、対応するフィールドを含めます。サービス固有の設定の詳細については、このページの下部に掲載のトピックから、該当サービスのトピックを選択してください。 | 

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


****  

| フィールド | ユースケース | 
| --- | --- | 
| 説明 | データソースの説明を入力します。 | 
| vectorIngestionConfiguration | 取り込みプロセスをカスタマイズするための設定が含まれています。詳細については、「[データソースの取り込みをカスタマイズする](kb-data-source-customize-ingestion.md)」を参照してください。 | 
| dataDeletionPolicy | ベクターストア内のベクター埋め込みを RETAIN するか DELETE するかを指定します。 | 
| serverSideEncryptionConfiguration | カスタマーマネージドキーでのデータ同期中に一時データを暗号化するには、kmsKeyArn フィールドにその ARN を指定します。 | 
| clientToken | API リクエストが 1 回だけ完了するようにします。詳細については、「[べき等性の確保](https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html)」を参照してください。 | 

サービスとその設定の詳細については、各トピックを選択してください。

**Topics**
+ [

# ナレッジベースに対応する Amazon S3 に接続する
](s3-data-source-connector.md)
+ [

# ナレッジベースの Confluence に接続する
](confluence-data-source-connector.md)
+ [

# ナレッジベースの Microsoft SharePoint に接続する
](sharepoint-data-source-connector.md)
+ [

# ナレッジベースの Salesforce に接続する
](salesforce-data-source-connector.md)
+ [

# ナレッジベースのウェブページをクロールする
](webcrawl-data-source-connector.md)
+ [

# ナレッジベースをカスタムデータソースに接続する
](custom-data-source-connector.md)

# ナレッジベースに対応する Amazon S3 に接続する
<a name="s3-data-source-connector"></a>

Amazon S3 は、データをオブジェクトとしてバケットに保存するオブジェクトストレージサービスです。Amazon Bedrock の [AWSマネジメントコンソールまたは CreateDataSource API を使用して、Amazon Bedrock](https://console.aws.amazon.com/bedrock/home) ナレッジベースの Amazon S3 バケットに接続できます (「Amazon Bedrock が[サポートする SDKsAWS CLI](https://docs.aws.amazon.com/bedrock/latest/APIReference/welcome.html)」を参照）。 [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) 

**マルチモーダルコンテンツのサポート**  
Amazon S3 データソースは、イメージ、オーディオ、ビデオファイルなどのマルチモーダルコンテンツをサポートしています。マルチモーダルコンテンツの使用に関する包括的なガイダンスについては、「」を参照してください[マルチモーダルコンテンツのナレッジベースを構築する](kb-multimodal.md)。

Amazon S3 コンソールまたは API を使用して、ファイルの小さなバッチを Amazon S3 バケットにアップロードできます。または、 [AWS DataSync](https://docs.aws.amazon.com/datasync/latest/userguide/create-s3-location.html)を使用して複数のファイルを S3 に継続的にアップロードし、オンプレミス、エッジ、その他のクラウド、またはAWSストレージからスケジュールに従ってファイルを転送することもできます。

現在、汎用 S3 バケットのみがサポートされています。

クロールできるファイル数とファイルあたりの MB に制限があります。「[Quotas for knowledge bases](https://docs.aws.amazon.com/bedrock/latest/userguide/quotas.html)」を参照してください。

**Topics**
+ [

## サポートされている機能
](#supported-features-s3-connector)
+ [

## 前提条件
](#prerequisites-s3-connector)
+ [

## 接続設定
](#configuration-s3-connector)

## サポートされている機能
<a name="supported-features-s3-connector"></a>
+ ドキュメントメタデータフィールド
+ 包含プレフィックス
+ 追加、更新、削除されたコンテンツの増分同期

## 前提条件
<a name="prerequisites-s3-connector"></a>

**Amazon S3 で、以下を確認してください。**
+ Amazon S3 バケット URI、Amazon リソースネーム (ARN)、およびバケットの所有者の AWS アカウント ID を書き留めます。URI と ARN は、Amazon S3 コンソールのプロパティセクションにあります。バケットは Amazon Bedrock ナレッジベースと同じリージョンにある必要があります。バケットにアクセスするにはアクセス許可が必要です。

**AWSアカウントで、以下を確認してください**。
+ ナレッジベースの AWS Identity and Access Management (IAM) ロール/アクセス許可ポリシーに、データソースに接続するために必要なアクセス許可を含めます。このデータソースがナレッジベースIAMロールに追加するために必要なアクセス許可については、[「データソースへのアクセス許可](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html#kb-permissions-access-ds)」を参照してください。

**注記**  
コンソールを使用する場合、ナレッジベースを作成するステップの一部として、必要なすべてのアクセス許可を持つIAMロールを作成できます。データソースやその他の設定を行うと、必要なすべてのアクセス許可を持つ IAM ロールが特定のナレッジベースに適用されます。

## 接続設定
<a name="configuration-s3-connector"></a>

Amazon S3 バケットに接続するには、Amazon Bedrock がデータにアクセスしてクロールできるように、必要な設定情報を提供する必要があります。また、[前提条件](#prerequisites-s3-connector) に従う必要があります。

このデータソースの設定例をこのセクションに示します。

包含フィルター、ドキュメントメタデータフィールド、増分同期、およびこれらの仕組みの詳細については、次を選択してください。

### ドキュメントメタデータフィールド
<a name="ds-s3-metadata-fields"></a>

Amazon S3 データソース内の各ファイルに対して、ドキュメントのメタデータフィールド/属性を指定し、データソースのインデックスを作成してベクトルストアに保存する際にそれらを埋め込みに含めるかどうかを指定する別ファイルを含めることができます。例えば、次の形式でファイルを作成し、*fileName.extension.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 の制限を超えることはできません。サポートされている属性/フィールドデータ型とメタデータフィールドに適用できるフィルタリング演算子の詳細については、「[メタデータとフィルタリング](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html)」を参照してください。

### 包含プレフィックス
<a name="ds-s3-inclusion-exclusion"></a>

Amazon S3 パスプレフィックスである包含プレフィックスを指定できます。このプレフィックスでは、バケット全体ではなく、S3 ファイルまたはフォルダを使用して S3 データソースコネクタを作成できます。

### 増分同期
<a name="ds-s3-incremental-sync"></a>

データソースコネクタは、データソースがナレッジベースと同期するたびに、新規、変更、削除されたコンテンツをクロールします。 Amazon Bedrockは、データソースのメカニズムを使用してコンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツをクロールできます。データソースをナレッジベースと初めて同期すると、デフォルトですべてのコンテンツがクロールされます。

データソースをナレッジベースと同期するには、[StartIngestionJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StartIngestionJob.html) API を使用するか、コンソールでナレッジベースを選択し、データソースの概要セクションで **[同期]** を選択します。

**重要**  
データソースから同期するすべてのデータは、データを取得する `bedrock:Retrieve` アクセス許可を持つすべてのユーザーが利用できるようになります。これには、データソースのアクセス許可が制御されているデータを含めることもできます。詳細については、「[Knowledge base permissions](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html)」を参照してください。

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

**Amazon S3 バケットをナレッジベースに接続する方法**

1. [Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する](knowledge-base-create.md) のステップを実行し、データソースとして **[Amazon S3]** を選択します。

1. データソースの名前を指定します。

1. Amazon S3 バケットが現在のAWSアカウントにあるか、別のAWSアカウントにあるかを指定します。バケットはナレッジベースと同じリージョンにある必要があります。

1. (オプション) Amazon S3 バケットが KMS キーで暗号化されている場合は、そのキーを含めます。詳細については、「[Amazon S3 のデータソースの AWS KMS キーを復号するアクセス許可](encryption-kb.md#encryption-kb-ds)」を参照してください。

1. (オプション) **[コンテンツの解析とチャンキング]** セクションで、データの解析とチャンキングの方法をカスタマイズできます。これらのカスタマイズの詳細については、次のリソースを参照してください。
   + 解析オプションの詳細については、「[データソースの解析オプション](kb-advanced-parsing.md)」を参照してください。
   + チャンキング戦略の詳細については、「[ナレッジベースのコンテンツのチャンキングの仕組み](kb-chunking.md)」を参照してください。
**警告**  
データソースに接続した後はチャンキング戦略を変更できません。
   + Lambda 関数を使用してデータのチャンキングとメタデータの処理をカスタマイズする方法の詳細については、「[カスタム変換 Lambda 関数を使用してデータの取り込み方法を定義する](kb-custom-transformation.md)」を参照してください。

1. **[詳細設定]** セクションでは、必要に応じて以下を設定できます。
   + **一時的なデータストレージ用の KMS キー。**– データをデフォルトAWS マネージドキーまたは独自の KMS キーを使用して埋め込みに変換しながら、一時的なデータを暗号化できます。詳細については、「[データインジェスト時の一時データストレージの暗号化](encryption-kb.md#encryption-kb-ingestion)」を参照してください。
   + **データ削除ポリシー** – デフォルトでベクトルストアに保存されているデータソースのベクトル埋め込みを削除したり、ベクトルストアデータを保持するように選択したりできます。

1. 埋め込みモデルとベクトルストアの選択を続行します。残りの手順を確認するには、「[Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する](knowledge-base-create.md)」に戻り、データソースを接続した後の手順から続行します。

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

以下は、Amazon Bedrock ナレッジベースの Amazon S3 に接続するための設定の例です。API と AWS CLIまたは Python などのサポートされている SDK を使用してデータソースを設定します。[CreateKnowledgeBase](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateKnowledgeBase.html) を呼び出した後、[CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) を呼び出して、`dataSourceConfiguration` の接続情報を使用してデータソースを作成します。

オプションの `vectorIngestionConfiguration` フィールドを含めることで取り込みに適用できるカスタマイズの詳細については、「[データソースの取り込みをカスタマイズする](kb-data-source-customize-ingestion.md)」を参照してください。

**AWS Command Line Interface**

```
aws bedrock-agent create-data-source \
 --name "S3-connector" \
 --description "S3 data source connector for Amazon Bedrock to use content in S3" \
 --knowledge-base-id "your-knowledge-base-id" \
 --data-source-configuration file://s3-bedrock-connector-configuration.json \
 --data-deletion-policy "DELETE" \
 --vector-ingestion-configuration '{"chunkingConfiguration":{"chunkingStrategy":"FIXED_SIZE","fixedSizeChunkingConfiguration":{"maxTokens":100,"overlapPercentage":10}}}'
                    
s3-bedrock-connector-configuration.json
{
    "s3Configuration": {
	    "bucketArn": "arn:aws:s3:::bucket-name",
	    "bucketOwnerAccountId": "000000000000",
	    "inclusionPrefixes": [
	        "documents/"
	    ]
    },
    "type": "S3"	
}
```

------

# ナレッジベースの Confluence に接続する
<a name="confluence-data-source-connector"></a>

Atlassian Confluence は、プロジェクト計画、ソフトウェア開発、製品管理の共有、保存、作業を目的とした共同作業管理ツールです。[Amazon Bedrock 用の AWS マネジメントコンソール](https://console.aws.amazon.com/bedrock/home)または [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) API を使用して、Amazon Bedrock ナレッジベースの Confluence インスタンスに接続できます (「Amazon Bedrock [supported SDKs and AWS CLI](https://docs.aws.amazon.com/bedrock/latest/APIReference/welcome.html)」を参照)。

**注記**  
Confluence データソースコネクタはプレビューリリースの段階であり、変更される可能性があります。  
Confluence データソースは、テーブル、グラフ、図、その他の画像などのマルチモーダルデータはサポートしていません。

Amazon Bedrock は、Confluence Cloud インスタンスへの接続をサポートしています。現在、このデータソースで使用できるのは Amazon OpenSearch Serverless ベクトルストアのみです。

クロールできるファイル数とファイルあたりの MB に制限があります。「[Quotas for knowledge bases](https://docs.aws.amazon.com/bedrock/latest/userguide/quotas.html)」を参照してください。

**Topics**
+ [

## サポートされている機能
](#supported-features-confluence-connector)
+ [

## 前提条件
](#prerequisites-confluence-connector)
+ [

## 接続設定
](#configuration-confluence-connector)

## サポートされている機能
<a name="supported-features-confluence-connector"></a>
+ メインドキュメントフィールドの自動検出
+ 包含/除外コンテンツフィルター
+ 追加、更新、削除されたコンテンツの増分同期
+ OAuth 2.0 認証、Confluence API トークンを使用した認証

## 前提条件
<a name="prerequisites-confluence-connector"></a>

**Confluence で以下を確認してください。**
+ Confluence インスタンスの URL をメモします。例えば、Confluence Cloud の場合は、*https://example.atlassian.net* です。Confluence Cloud の URL は、*.atlassian.net* で終わるベース URL である必要があります。
+ Amazon Bedrock が Confluence Cloud インスタンスに接続できるように、ユーザー名 (管理者アカウントの E メール) とパスワード (Confluence API トークン) を含む基本的な認証情報を設定します。Confluence API トークンの作成方法については、Atlassian ウェブサイトの「[Manage API tokens for your Atlassian account](https://support.atlassian.com/atlassian-account/docs/manage-api-tokens-for-your-atlassian-account/#Create-an-API-token)」を参照してください。
+ (オプション) アプリケーションキー、アプリケーションシークレット、アクセストークン、および更新トークンの認証情報を使用して OAuth 2.0 アプリケーションを設定します。詳細については、Atlassian ウェブサイトの「[OAuth 2.0 apps](https://developer.atlassian.com/cloud/confluence/oauth-2-3lo-apps/)」を参照してください。
+ OAuth 2.0 アプリが Confluence に接続するには、特定の読み取りアクセス許可またはスコープを有効にする必要があります。

  Confluence API:
  + offline\$1access
  + read:content:confluence – 詳細なコンテンツを表示する 
  + read:content-details:confluence – コンテンツの詳細を表示する 
  + read:space-details:confluence – スペースの詳細を表示する
  + read:audit-log:confluence – 監査レコードを表示する 
  + read:page:confluence – ページを表示する 
  + read:attachment:confluence – コンテンツ添付ファイルを表示およびダウンロードする 
  + read:blogpost:confluence – ブログ投稿を表示する 
  + read:custom-content:confluence – カスタムコンテンツを表示する 
  + read:comment:confluence – コメントを表示する 
  + read:template:confluence – コンテンツテンプレートを表示する 
  + read:label:confluence – ラベルを表示する 
  + read:watcher:confluence – コンテンツウォッチャーを表示する 
  + read:relation:confluence – エンティティ関係を表示する 
  + read:user:confluence – ユーザーの詳細を表示する 
  + read:configuration:confluence – Confluence 設定を表示する 
  + read:space:confluence – スペースの詳細を表示する 
  + read:space.property:confluence – スペースプロパティを表示する 
  + read:user.property:confluence – ユーザープロパティを表示する 
  + read:space.setting:confluence – スペース設定を表示する 
  + read:analytics.content:confluence – コンテンツの分析を表示する
  + read:content.property:confluence – コンテンツプロパティを表示する
  + read:content.metadata:confluence – コンテンツの概要を表示する 
  + read:inlinetask:confluence – タスクを表示する 
  + read:task:confluence – タスクを表示する 
  + read:whiteboard:confluence – ホワイトボードを表示する 
  + read:app-data:confluence – アプリデータを読み取る 
  + read:folder:confluence - フォルダを表示する
  + read:embed:confluence - スマートリンクデータを表示する

**AWS アカウントで、以下のことを確認してください。**
+ 認証の認証情報を[AWS Secrets Manager シークレット](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html)に保存し、シークレットの Amazon リソースネーム (ARN) を書き留めます。このページの**接続設定**の説明に従って、シークレットに入れる必要があるキーと値のペアを含めます。
+ ナレッジベースの AWS Identity and Access Management (IAM) ロール/アクセス許可ポリシーに、データソースに接続するために必要なアクセス許可を含めます。ナレッジベースの IAM ロールに追加する、このデータソースが必要なアクセス許可については、「[Permissions to access data sources](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html#kb-permissions-access-ds)」を参照してください。

**注記**  
コンソールを使用する場合は、AWS Secrets Manager に移動してシークレットを追加するか、データソース設定手順の一部として既存のシークレットを使用できます。必要なすべてのアクセス許可を持つ IAM ロールは、ナレッジベースを作成するためのコンソール手順の一部として作成できます。データソースやその他の設定を行うと、必要なすべてのアクセス許可を持つ IAM ロールが特定のナレッジベースに適用されます。  
認証情報とシークレットは、定期的に更新またはローテーションすることをお勧めします。セキュリティに必要なアクセスレベルのみを提供してください。データソース間で認証情報とシークレットを再利用することはお勧めしません。

## 接続設定
<a name="configuration-confluence-connector"></a>

Confluence インスタンスに接続するには、Amazon Bedrock がデータにアクセスしてクロールできるように、必要な設定情報を提供する必要があります。また、[前提条件](#prerequisites-confluence-connector) に従う必要があります。

このデータソースの設定例をこのセクションに示します。

ドキュメントフィールドの自動検出、包含/除外フィルター、増分同期、シークレット認証情報、およびこれらの仕組みの詳細については、以下を選択してください。

### メインドキュメントフィールドの自動検出
<a name="ds-confluence-document-fields"></a>

データソースコネクタは、ドキュメントまたはコンテンツのすべてのメインメタデータフィールドを自動的に検出してクロールします。例えば、データソースコネクタは、ドキュメントの本文に相当する部分、ドキュメントタイトル、ドキュメントの作成日または変更日、またはドキュメントに適用される可能性のあるその他のコアフィールドをクロールできます。

**重要**  
コンテンツに機密情報が含まれている場合、Amazon Bedrock は機密情報を使用して応答できます。

メタデータフィールドにフィルタリング演算子を適用して、レスポンスの関連性をさらに高めることができます。例えば、ドキュメントの「epoch\$1modification\$1time」は、ドキュメントの最終更新日を 1970 年 1 月 1 日からの経過秒数で表します。「epoch\$1modification\$1time」にフィルターを適用して、その値が特定の数*より大きい*最新のデータだけを取得できます。メタデータフィールドに適用できるフィルタリング演算子の詳細については、「[メタデータとフィルタリング](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html)」を参照してください。

### 包含/除外フィルター
<a name="ds-confluence-inclusion-exclusion"></a>

特定のコンテンツのクロールを含めることも除外することもできます。例えば、ファイル名に「private」が含まれているファイルのクロールをスキップするために、除外プレフィックス/正規表現パターンを指定することができます。特定のコンテンツエンティティまたはコンテンツタイプを含めるように、包含プレフィックス/正規表現パターンを指定することもできます。包含フィルターと除外フィルターを指定し、両方がドキュメントに一致する場合、除外フィルターが優先され、ドキュメントはクロールされません。

ファイル名に「private」を含む PDF ファイルを除外またはフィルタリングする正規表現パターンの例: 「*.\$1private.\$1\$1\$1.pdf*」

包含/除外フィルターは、次のコンテンツタイプに適用できます。
+ `Space`: 一意のスペースキー
+ `Page`: メインページのタイトル
+ `Blog`: メインブログのタイトル
+ `Comment`: 特定のページまたはブログに属するコメント。*Re: Page/Blog Title* を指定
+ `Attachment`: 拡張子付きの添付ファイル名

### 増分同期
<a name="ds-confluence-incremental-sync"></a>

データソースコネクタは、データソースがナレッジベースと同期するたびに、新規、変更、削除されたコンテンツをクロールします。Amazon Bedrock は、データソースの仕組みを使用して、コンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツをクロールできます。データソースをナレッジベースと初めて同期すると、デフォルトですべてのコンテンツがクロールされます。

データソースをナレッジベースと同期するには、[StartIngestionJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StartIngestionJob.html) API を使用するか、コンソールでナレッジベースを選択し、データソースの概要セクションで **[同期]** を選択します。

**重要**  
データソースから同期するすべてのデータは、データを取得する `bedrock:Retrieve` アクセス許可を持つすべてのユーザーが利用できるようになります。これには、データソースのアクセス許可が制御されているデータを含めることもできます。詳細については、「[Knowledge base permissions](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html)」を参照してください。

### シークレット認証情報
<a name="ds-confluence-secret-auth-credentials"></a>

(基本認証を使用する場合) AWS Secrets Manager の認証情報には、次のキーと値のペアを含める必要があります。
+ `username`: *Atlassian アカウントの管理者ユーザーの E メールアドレス*
+ `password`: *Confluence API トークン*

(OAuth 2.0 認証を使用する場合) AWS Secrets Manager の認証情報には、次のキーと値のペアを含める必要があります。
+ `confluenceAppKey`: *アプリキー*
+ `confluenceAppSecret`: *アプリシークレット*
+ `confluenceAccessToken`: *アプリアクセストークン*
+ `confluenceRefreshToken`: *アプリ更新トークン*

**注記**  
Confluence OAuth2.0 の**アクセス**トークンの有効期限は、デフォルトでは 60 分です。データソースの同期 (同期ジョブ) 中にアクセストークンの有効期限が切れた場合、Amazon Bedrock は、指定された**更新**トークンを使用してアクセストークンを再生成します。その際は、アクセストークンと更新トークンの両方が更新されます。現在の同期ジョブから次の同期ジョブまでトークンを最新の状態で維持するために、Amazon Bedrock にはナレッジベースの IAM ロールの一部であるシークレット認証情報の書き込み/保存のアクセス許可が必要です。

**注記**  
AWS Secrets Manager のシークレットは、ナレッジベースと同じリージョンを使用する必要があります。

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

**Confluence インスタンスをナレッジベースに接続する**

1. [Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する](knowledge-base-create.md) の手順に従って、データソースとして **Confluence** を選択します。

1. データソース名と説明 (オプション) を入力します。

1. Confluence インスタンスの URL を入力します。例えば、Confluence Cloud の場合は、*https://example.atlassian.net* です。Confluence Cloud の URL は、*.atlassian.net* で終わるベース URL である必要があります。

1. **[詳細設定]** セクションでは、必要に応じて以下を設定できます。
   + **一時的なデータストレージ用の KMS キー。**– データを埋め込みに変換するとともに、デフォルト AWS マネージドキー または独自の KMS キーを使用して一時的なデータを暗号化できます。詳細については、「[データインジェスト時の一時データストレージの暗号化](encryption-kb.md#encryption-kb-ingestion)」を参照してください。
   + **データ削除ポリシー** – デフォルトでベクトルストアに保存されているデータソースのベクトル埋め込みを削除したり、ベクトルストアデータを保持するように選択したりできます。

1. Confluence インスタンスに接続するための認証情報を入力します。
   + 基本的な認証の場合、AWS Secrets Manager に移動してシークレット認証情報を追加するか、作成したシークレットに既存の Amazon リソースネーム (ARN) を使用します。シークレットには、ユーザー名として Atlassian アカウントの管理者ユーザーの E メールアドレスと、パスワードの代わりに Confluence API トークンが含まれている必要があります。Confluence API トークンの作成方法については、Atlassian ウェブサイトの「[Manage API tokens for your Atlassian account](https://support.atlassian.com/atlassian-account/docs/manage-api-tokens-for-your-atlassian-account/#Create-an-API-token)」を参照してください。
   + OAuth 2.0 認証の場合、AWS Secrets Manager に移動してシークレット認証情報を追加するか、作成したシークレットに既存の Amazon リソースネーム (ARN) を使用します。シークレットには、Confluence アプリケーションキー、アプリケーションシークレット、アクセストークン、および更新トークンが含まれている必要があります。詳細については、Atlassian ウェブサイトの「[OAuth 2.0 apps](https://developer.atlassian.com/cloud/confluence/oauth-2-3lo-apps/)」を参照してください。

1. (オプション) **[コンテンツの解析とチャンキング]** セクションで、データの解析とチャンキングの方法をカスタマイズできます。これらのカスタマイズの詳細については、次のリソースを参照してください。
   + 解析オプションの詳細については、「[データソースの解析オプション](kb-advanced-parsing.md)」を参照してください。
   + チャンキング戦略の詳細については、「[ナレッジベースのコンテンツのチャンキングの仕組み](kb-chunking.md)」を参照してください。
**警告**  
データソースに接続した後はチャンキング戦略を変更できません。
   + Lambda 関数を使用してデータのチャンキングとメタデータの処理をカスタマイズする方法の詳細については、「[カスタム変換 Lambda 関数を使用してデータの取り込み方法を定義する](kb-custom-transformation.md)」を参照してください。

1. フィルター/正規表現パターンの使用を選択して、特定のコンテンツを含めるか除外します。指定しない場合、標準コンテンツはすべてクロールされます。

1. 埋め込みモデルとベクトルストアの選択を続行します。残りの手順を確認するには、「[Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する](knowledge-base-create.md)」に戻り、データソースを接続した後の手順から続行します。

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

以下は、Amazon Bedrock ナレッジベースの Confluence Cloud に接続するための設定の例です。データソースは、AWS CLI または Python などのサポートされている SDK で API を使用して設定します。[CreateKnowledgeBase](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateKnowledgeBase.html) を呼び出した後、[CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) を呼び出して、`dataSourceConfiguration` の接続情報を使用してデータソースを作成します。

オプションの `vectorIngestionConfiguration` フィールドを含めることで取り込みに適用できるカスタマイズの詳細については、「[データソースの取り込みをカスタマイズする](kb-data-source-customize-ingestion.md)」を参照してください。

**AWS Command Line Interface**

```
aws bedrock create-data-source \
 --name "Confluence Cloud/SaaS connector" \
 --description "Confluence Cloud/SaaS data source connector for Amazon Bedrock to use content in Confluence" \
 --knowledge-base-id "your-knowledge-base-id" \
 --data-source-configuration file://confluence-bedrock-connector-configuration.json \
 --data-deletion-policy "DELETE" \
 --vector-ingestion-configuration '{"chunkingConfiguration":[{"chunkingStrategy":"FIXED_SIZE","fixedSizeChunkingConfiguration":[{"maxTokens":"100","overlapPercentage":"10"}]}]}'

confluence-bedrock-connector-configuration.json
{
    "confluenceConfiguration": {
        "sourceConfiguration": {
            "hostUrl": "https://example.atlassian.net",
            "hostType": "SAAS",
            "authType": "OAUTH2_CLIENT_CREDENTIALS",
            "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-Confluence"
        },
        "crawlerConfiguration": {
            "filterConfiguration": {
                "type": "PATTERN",
                "patternObjectFilter": {
                    "filters": [
                        {
                            "objectType": "Attachment",
                            "inclusionFilters": [
                                ".*\\.pdf"
                            ],
                            "exclusionFilters": [
                                ".*private.*\\.pdf"
                            ]
                        }
                    ]
                }
            }
        }
    },
    "type": "CONFLUENCE"
}
```

------

# ナレッジベースの Microsoft SharePoint に接続する
<a name="sharepoint-data-source-connector"></a>

Microsoft SharePoint は、ドキュメント、ウェブページ、ウェブサイト、リストなどの作業をするための共同のウェブベースサービスです。Amazon Bedrock の [AWS マネジメントコンソールまたは CreateDataSource API を使用して、Amazon Bedrock ](https://console.aws.amazon.com/bedrock/home)ナレッジベースの SharePoint インスタンスに接続できます (Amazon Bedrock が[サポートする SDKsと AWS CLI](https://docs.aws.amazon.com/bedrock/latest/APIReference/welcome.html) を参照）。 [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) 

**注記**  
SharePoint データソースコネクタはプレビューリリースの段階であり、変更される可能性があります。  
Microsoft SharePoint データソースは、テーブル、グラフ、図、その他の画像などのマルチモーダルデータはサポートしていません。

Amazon Bedrock は、SharePoint オンラインインスタンスへの接続をサポートしています。OneNote ドキュメントのクロールは現在サポートされていません。現在、このデータソースで使用できるのは Amazon OpenSearch Serverless ベクトルストアのみです。

クロールできるファイル数とファイルあたりの MB に制限があります。「[Quotas for knowledge bases](https://docs.aws.amazon.com/bedrock/latest/userguide/quotas.html)」を参照してください。

**Topics**
+ [

## サポートされている機能
](#supported-features-sharepoint-connector)
+ [

## 前提条件
](#prerequisites-sharepoint-connector)
+ [

## 接続設定
](#configuration-sharepoint-connector)

## サポートされている機能
<a name="supported-features-sharepoint-connector"></a>
+ メインドキュメントフィールドの自動検出
+ 包含/除外コンテンツフィルター
+ 追加、更新、削除されたコンテンツの増分同期
+ SharePoint アプリ専用認証

## 前提条件
<a name="prerequisites-sharepoint-connector"></a>

### SharePoint (オンライン)
<a name="prerequisites-sharepoint-connector-online"></a>

**SharePoint (オンライン) で、SharePoint アプリ専用の認証を使用するための次の手順を実行します。**
+ SharePoint オンラインサイトの URL (複数可) を控える。例: *https://yourdomain.sharepoint.com/sites/mysite*。URL は *https* で始まり、*sharepoint.com* を含む必要があります。サイト URL は、*sharepoint.com/* や *sites/mysite/home.aspx* ではなく、実際の SharePoint サイトである必要があります。
+ SharePoint オンラインインスタンス の URL (複数可) のドメイン名を控える。
+ Microsoft 365 のテナント ID をコピーします。テナント ID は、Microsoft Entra ポータルのプロパティにあります。詳細については、「[Microsoft 365 テナント ID を見つける](https://learn.microsoft.com/en-us/sharepoint/find-your-office-365-tenant-id)」を参照してください。
**注記**  
アプリケーションの例については、Microsoft Learn ウェブサイトの 「[Microsoft Entra ID でクライアント アプリケーションを登録する](https://learn.microsoft.com/en-us/azure/healthcare-apis/register-application)」(旧称 Azure Active Directory) を参照してください。
+ SharePoint アプリ専用の認証情報を設定します。
+ SharePoint アプリ専用にアクセス許可を付与するときに、クライアント ID とクライアントシークレット値をコピーします。詳細については、「[SharePoint アプリ専用のアクセスを許可する](https://learn.microsoft.com/en-us/sharepoint/dev/solution-guidance/security-apponly-azureacs)」を参照してください。
**注記**  
SharePoint アプリ専用の API アクセス許可を設定する必要はありません。ただし、SharePoint 側でアプリアクセス許可を設定する必要があります。必要なアプリアクセス許可の詳細については、「[SharePoint アプリ専用のアクセスを許可する](https://learn.microsoft.com/en-us/sharepoint/dev/solution-guidance/security-apponly-azureacs)」に関する Microsoft ドキュメントを参照してください。

### AWS アカウント
<a name="prerequisites-sharepoint-connector-account"></a>

** AWS アカウントで、以下を確認してください**。
+ 認証の認証情報を[AWS Secrets Manager シークレット](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html)に保存し、シークレットの Amazon リソースネーム (ARN) を書き留めます。このページの**接続設定**の説明に従って、シークレットに入れる必要があるキーと値のペアを含めます。
+ ナレッジベースの AWS Identity and Access Management (IAM) ロール/アクセス許可ポリシーに、データソースに接続するために必要なアクセス許可を含めます。このデータソースがナレッジベース IAM ロールに追加するために必要なアクセス許可については、[「データソースへのアクセス許可](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html#kb-permissions-access-ds)」を参照してください。

**注記**  
コンソールを使用する場合は、 に移動 AWS Secrets Manager してシークレットを追加するか、データソース設定ステップの一部として既存のシークレットを使用できます。必要なすべてのアクセス許可を持つ IAM ロールは、ナレッジベースを作成するためのコンソールステップの一部として作成できます。データソースやその他の設定を行うと、必要なすべてのアクセス許可を持つ IAM ロールが特定のナレッジベースに適用されます。  
認証情報とシークレットは、定期的に更新またはローテーションすることをお勧めします。セキュリティに必要なアクセスレベルのみを提供してください。データソース間で認証情報とシークレットを再利用することはお勧めしません。

## 接続設定
<a name="configuration-sharepoint-connector"></a>

SharePoint インスタンスに接続するには、Amazon Bedrock がデータにアクセスしてクロールできるように、必要な設定情報を提供する必要があります。また、[前提条件](#prerequisites-sharepoint-connector) に従う必要があります。

このデータソースの設定例をこのセクションに示します。

ドキュメントフィールドの自動検出、包含/除外フィルター、増分同期、シークレット認証情報、およびこれらの仕組みの詳細については、以下を選択してください。

### メインドキュメントフィールドの自動検出
<a name="ds-sharepoint-document-fields"></a>

データソースコネクタは、ドキュメントまたはコンテンツのすべてのメインメタデータフィールドを自動的に検出してクロールします。例えば、データソースコネクタは、ドキュメントの本文に相当する部分、ドキュメントタイトル、ドキュメントの作成日または変更日、またはドキュメントに適用される可能性のあるその他のコアフィールドをクロールできます。

**重要**  
コンテンツに機密情報が含まれている場合、 Amazon Bedrock は機密情報を使用して応答できます。

メタデータフィールドにフィルタリング演算子を適用して、レスポンスの関連性をさらに高めることができます。例えば、ドキュメントの「epoch\$1modification\$1time」は、ドキュメントの最終更新日を 1970 年 1 月 1 日からの経過秒数で表します。「epoch\$1modification\$1time」にフィルターを適用して、その値が特定の数*より大きい*最新のデータだけを取得できます。メタデータフィールドに適用できるフィルタリング演算子の詳細については、「[メタデータとフィルタリング](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html)」を参照してください。

### 包含/除外フィルター
<a name="ds-sharepoint-inclusion-exclusion"></a>

特定のコンテンツのクロールを含めることも除外することもできます。例えば、ファイル名に「private」が含まれているファイルのクロールをスキップするために、除外プレフィックス/正規表現パターンを指定することができます。特定のコンテンツエンティティまたはコンテンツタイプを含めるように、包含プレフィックス/正規表現パターンを指定することもできます。包含フィルターと除外フィルターを指定し、両方がドキュメントに一致する場合、除外フィルターが優先され、ドキュメントはクロールされません。

ファイル名に「private」を含む PDF ファイルを除外またはフィルタリングする正規表現パターンの例: 「*.\$1private.\$1\$1\$1.pdf*」

包含/除外フィルターは、次のコンテンツタイプに適用できます。
+ `Page`: メインページのタイトル
+ `Event`: イベント名
+ `File`: 添付ファイルとすべてのドキュメントファイルの拡張子を含むファイル名

OneNote ドキュメントのクロールは現在サポートされていません。

### 増分同期
<a name="ds-sharepoint-incremental-sync"></a>

データソースコネクタは、データソースがナレッジベースと同期するたびに、新規、変更、削除されたコンテンツをクロールします。 Amazon Bedrock は、データソースのメカニズムを使用してコンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツをクロールできます。データソースをナレッジベースと初めて同期すると、デフォルトですべてのコンテンツがクロールされます。

データソースをナレッジベースと同期するには、[StartIngestionJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StartIngestionJob.html) API を使用するか、コンソールでナレッジベースを選択し、データソースの概要セクションで **[同期]** を選択します。

**重要**  
データソースから同期するすべてのデータは、データを取得する `bedrock:Retrieve` アクセス許可を持つすべてのユーザーが利用できるようになります。これには、データソースのアクセス許可が制御されているデータを含めることもできます。詳細については、「[Knowledge base permissions](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html)」を参照してください。

### シークレット認証情報
<a name="ds-sharepoint-secret-auth-credentials"></a>

SharePoint App-Only 認証を使用する場合、 のシークレット認証情報には、次のキーと値のペアが含まれている AWS Secrets Manager 必要があります。
+ `clientId`: *Microsoft Entra SharePoint アプリケーションに関連付けられたクライアント ID*
+ `clientSecret`: *Microsoft Entra SharePoint アプリケーションに関連付けられたクライアントシークレット*
+ `sharePointClientId`: *SharePoint アプリをアプリ専用認証に登録するときに生成されるクライアント ID*
+ `sharePointClientSecret`: *SharePoint アプリをアプリ専用認証に登録するときに生成されるクライアントシークレット*

**注記**  
のシークレット AWS Secrets Manager は、ナレッジベースの同じリージョンを使用する必要があります。

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

**SharePoint インスタンスをナレッジベースに接続する**<a name="connect-sharepoint-console"></a>

1. [Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する](knowledge-base-create.md) の手順に従って、**SharePoint** をデータソースとして選択します。

1. データソース名と説明 (オプション) を入力します。

1. SharePoint サイトの URL (複数可) を入力します。例えば、SharePoint オンラインの場合は、*https://yourdomain.sharepoint.com/sites/mysite* です。URL は *https* で始まり、*sharepoint.com* を含む必要があります。サイト URL は、*sharepoint.com/* や *sites/mysite/home.aspx* ではなく、実際の SharePoint サイトである必要があります。

1. SharePoint インスタンスのドメイン名を入力します。

1. **[詳細設定]** セクションでは、必要に応じて以下を設定できます。
   + **一時的なデータストレージ用の KMS キー。**– デフォルト AWS マネージドキー または独自の KMS キーを使用して、データを埋め込みに変換しながら、一時的なデータを暗号化できます。詳細については、「[データインジェスト時の一時データストレージの暗号化](encryption-kb.md#encryption-kb-ingestion)」を参照してください。
   + **データ削除ポリシー** – デフォルトでベクトルストアに保存されているデータソースのベクトル埋め込みを削除したり、ベクトルストアデータを保持するように選択したりできます。

1. SharePoint インスタンスに接続するための認証情報を入力します。SharePoint アプリ専用認証

   1. テナント ID を指定します。テナント ID は Azure Active Directory ポータルの [プロパティ] で確認できます。

   1.  AWS Secrets Manager シークレット認証情報を追加するか、作成したシークレットに既存の Amazon リソースネーム (ARN) を使用します。シークレットには、テナントレベルまたはサイトレベルでアプリ専用を登録したときに生成された SharePoint クライアント ID と SharePoint クライアントシークレット、および Entra にアプリを登録したときに生成された Entra クライアント ID と Entra クライアントシークレットが含まれている必要があります。

1. (オプション) **[コンテンツの解析とチャンキング]** セクションで、データの解析とチャンキングの方法をカスタマイズできます。これらのカスタマイズの詳細については、次のリソースを参照してください。
   + 解析オプションの詳細については、「[データソースの解析オプション](kb-advanced-parsing.md)」を参照してください。
   + チャンキング戦略の詳細については、「[ナレッジベースのコンテンツのチャンキングの仕組み](kb-chunking.md)」を参照してください。
**警告**  
データソースに接続した後はチャンキング戦略を変更できません。
   + Lambda 関数を使用してデータのチャンキングとメタデータの処理をカスタマイズする方法の詳細については、「[カスタム変換 Lambda 関数を使用してデータの取り込み方法を定義する](kb-custom-transformation.md)」を参照してください。

1. フィルター/正規表現パターンの使用を選択して、特定のコンテンツを含めるか除外します。指定しない場合、標準コンテンツはすべてクロールされます。

1. 埋め込みモデルとベクトルストアの選択を続行します。残りの手順を確認するには、「[Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する](knowledge-base-create.md)」に戻り、データソースを接続した後の手順から続行します。

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

以下は、Amazon Bedrock ナレッジベースの SharePoint オンラインに接続するための設定の例です。または Python などの AWS CLI サポートされている SDK で API を使用してデータソースを設定します。[CreateKnowledgeBase](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateKnowledgeBase.html) を呼び出した後、[CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) を呼び出して、`dataSourceConfiguration` の接続情報を使用してデータソースを作成します。

オプションの `vectorIngestionConfiguration` フィールドを含めることで取り込みに適用できるカスタマイズの詳細については、「[データソースの取り込みをカスタマイズする](kb-data-source-customize-ingestion.md)」を参照してください。

**AWS Command Line Interface**

```
aws bedrock-agent create-data-source \
 --name "SharePoint Online connector" \
 --description "SharePoint Online data source connector for Amazon Bedrock to use content in SharePoint" \
 --knowledge-base-id "your-knowledge-base-id" \
 --data-source-configuration file://sharepoint-bedrock-connector-configuration.json \
 --data-deletion-policy "DELETE"
```

**`sharepoint-bedrock-connector-configuration.json` の内容**

```
{
    "sharePointConfiguration": {
        "sourceConfiguration": {
            "tenantId": "888d0b57-69f1-4fb8-957f-e1f0bedf64de",
            "hostType": "ONLINE",
            "domain": "yourdomain",
            "siteUrls": [
                "https://yourdomain.sharepoint.com/sites/mysite"
            ],
            "authType": "OAUTH2_SHAREPOINT_APP_ONLY_CLIENT_CREDENTIALS",
            "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-SharePoint"
        },
        "crawlerConfiguration": {
            "filterConfiguration": {
                "type": "PATTERN",
                "patternObjectFilter": {
                    "filters": [
                        {
                            "objectType": "File",
                            "inclusionFilters": [
                                ".*\\.pdf"
                            ],
                            "exclusionFilters": [
                                ".*private.*\\.pdf"
                            ]
                        }
                    ]
                }
            }
        }
    },
    "type": "SHAREPOINT"
}
```

------

**重要**  
OAuth2.0 認証はお勧めしません。SharePoint アプリ専用認証を使用することをお勧めします。

## OAuth2.0 の使用
<a name="sharepoint-connector-oauth"></a>

OAuth 2.0 を使用すると、ナレッジベースと統合された SharePoint コネクタの SharePoint リソースへのアクセスを認証および認可できます。

### 前提条件
<a name="sharepoint-connector-oauth-prereq"></a>

**SharePoint では、OAuth 2.0 認証の場合、以下を確認してください**。
+ SharePoint オンラインサイトの URL (複数可) を控える。例: *https://yourdomain.sharepoint.com/sites/mysite*。URL は *https* で始まり、*sharepoint.com* を含む必要があります。サイト URL は、*sharepoint.com/* や *sites/mysite/home.aspx* ではなく、実際の SharePoint サイトである必要があります。
+ SharePoint オンラインインスタンス の URL (複数可) のドメイン名を控える。
+ Microsoft 365 のテナント ID をコピーします。テナント ID は Microsoft Entra ポータルのプロパティまたは OAuth アプリケーションで確認できます。

  管理者の SharePoint アカウントのユーザー名とパスワードを控え、アプリケーションを登録する際にクライアント ID とクライアントシークレットの値をコピーします。
**注記**  
アプリケーションの例については、Microsoft Learn ウェブサイトの 「[Microsoft Entra ID でクライアント アプリケーションを登録する](https://learn.microsoft.com/en-us/azure/healthcare-apis/register-application)」(旧称 Azure Active Directory) を参照してください。
+ アプリケーションを登録する際に SharePoint に接続するには、特定の読み取りアクセス許可が必要です。
  + SharePoint: AllSites.Read (委任) - すべてのサイトコレクションの項目を読み取る
+ 管理者ユーザーを使用して、Azure ポータルで**セキュリティのデフォルト**を無効にする必要がある場合があります。Azure Portal でのセキュリティのデフォルト設定の管理の詳細については、[セキュリティのデフォルトを有効または無効にする方法に関する Microsoft のドキュメント](https://learn.microsoft.com/en-us/microsoft-365/business-premium/m365bp-conditional-access?view=o365-worldwide&tabs=secdefaults#security-defaults-1)を参照してください。
+ Amazon Bedrock が SharePoint コンテンツのクロールをブロックされないように、SharePoint アカウントの多要素認証 (MFA) をオフにする必要があるかもしれません。

前提条件を満たすには、「[AWS アカウント](#prerequisites-sharepoint-connector-account)」の手順が完了していることを確認してください。

### シークレット認証情報
<a name="sharepoint-secret-auth-credentials-oauth"></a>

OAuth2.0 の接続設定は、「[接続設定](#configuration-sharepoint-connector)」で説明されているように、メインドキュメントフィールド、インクルージョン/除外フィルター、増分同期の自動検出と同じ手順を実行できます。

**OAuth 2.0 認証では、 のシークレット認証情報にこれらのキーと値のペアが含まれている AWS Secrets Manager 必要があります**。
+ `username`: *SharePoint 管理者ユーザー名*
+ `password`: *SharePoint 管理者パスワード*
+ `clientId`: *OAuth アプリクライアント ID*
+ `clientSecret`: *OAuth アプリクライアントシークレット*

### SharePoint インスタンスをナレッジベースに接続する
<a name="sharepoint-connector-oauth-using"></a>

OAuth2.0 を使用するときに SharePoint インスタンスをナレッジベースに接続する場合
+ (コンソール) コンソールで、「[SharePoint インスタンスをナレッジベースに接続する](https://docs.aws.amazon.com/bedrock/latest/userguide/sharepoint-data-source-connector.html#connect-sharepoint-console)」で説明しているのと同じ手順に従います。SharePoint インスタンスに接続するための認証情報を入力する場合
  + テナント ID を指定します。テナント ID は Azure Active Directory ポータルの [プロパティ] で確認できます。
  +  AWS Secrets Manager シークレット認証情報を追加するか、作成したシークレットに既存の Amazon リソースネーム (ARN) を使用します。シークレットには、SharePoint 管理者のユーザー名とパスワード、登録済みのアプリクライアント ID とクライアントシークレットを含める必要があります。アプリケーションの例については、Microsoft Learn ウェブサイトの 「[Microsoft Entra ID でクライアント アプリケーションを登録する](https://learn.microsoft.com/en-us/azure/healthcare-apis/register-application)」(旧称 Azure Active Directory) を参照してください。
+ (API) 以下は、`CreateDataSource` API を使用して OAuth2.0 の接続情報を含むデータソースを作成する例です。

  ```
  aws bedrock-agent create-data-source \
   --name "SharePoint Online connector" \
   --description "SharePoint Online data source connector for Amazon Bedrock to use content in SharePoint" \
   --knowledge-base-id "your-knowledge-base-id" \
   --data-source-configuration file://sharepoint-bedrock-connector-configuration.json \
   --data-deletion-policy "DELETE"
  ```

  **`sharepoint-bedrock-connector-configuration.json` の内容**

  ```
  {
      "sharePointConfiguration": {
          "sourceConfiguration": {
              "tenantId": "888d0b57-69f1-4fb8-957f-e1f0bedf64de",
              "hostType": "ONLINE",
              "domain": "yourdomain",
              "siteUrls": [
                  "https://yourdomain.sharepoint.com/sites/mysite"
              ],
              "authType": "OAUTH2_CLIENT_CREDENTIALS",
              "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-SharePoint"
          },
          "crawlerConfiguration": {
              "filterConfiguration": {
                  "type": "PATTERN",
                  "patternObjectFilter": {
                      "filters": [
                          {
                              "objectType": "File",
                              "inclusionFilters": [
                                  ".*\\.pdf"
                              ],
                              "exclusionFilters": [
                                  ".*private.*\\.pdf"
                              ]
                          }
                      ]
                  }
              }
          }
      },
      "type": "SHAREPOINT"
  }
  ```

# ナレッジベースの Salesforce に接続する
<a name="salesforce-data-source-connector"></a>

Salesforce は、サポート、営業、マーケティングの各チームを管理するための顧客関係管理 (CRM) ツールです。[Amazon Bedrock の AWS マネジメントコンソール](https://console.aws.amazon.com/bedrock/home)または [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) API を使用して、Amazon Bedrock ナレッジベースの Salesforce インスタンスに接続できます (Amazon Bedrock で[サポートされている SDK と AWS CLI](https://docs.aws.amazon.com/bedrock/latest/APIReference/welcome.html) を参照)。

**注記**  
Salesforce データソースコネクタはプレビューリリースの段階であり、変更される可能性があります。  
Salesforce データソースは、テーブル、グラフ、図、その他の画像などのマルチモーダルデータはサポートしていません。

現在、このデータソースで使用できるのは Amazon OpenSearch Serverless ベクトルストアのみです。

クロールできるファイル数とファイルあたりの MB に制限があります。「[Quotas for knowledge bases](https://docs.aws.amazon.com/bedrock/latest/userguide/quotas.html)」を参照してください。

**Topics**
+ [

## サポートされている機能
](#supported-features-salesforce-connector)
+ [

## 前提条件
](#prerequisites-salesforce-connector)
+ [

## 接続設定
](#configuration-salesforce-connector)

## サポートされている機能
<a name="supported-features-salesforce-connector"></a>
+ メインドキュメントフィールドの自動検出
+ 包含/除外コンテンツフィルター
+ 追加、更新、削除されたコンテンツの増分同期
+ OAuth 2.0 認証

## 前提条件
<a name="prerequisites-salesforce-connector"></a>

**Salesforce で、次の作業を行ったことを確認してください。**
+ Salesforce インスタンス URL を書き留めます。例えば、*https://company.salesforce.com/* です。インスタンスは Salesforce 接続アプリケーションを実行している必要があります。
+ Salesforce 接続アプリケーションを作成し、クライアント認証情報を設定します。次に、選択したアプリで、OAuth 設定からコンシューマーキー (クライアント ID) とコンシューマーシークレット (クライアントシークレット) をコピーします。詳細については、「[接続されたアプリケーションの作成](https://help.salesforce.com/s/articleView?id=sf.connected_app_create.htm&type=5)」および「[OAuth 2.0 クライアント認証情報用の接続されたアプリケーションの設定](https://help.salesforce.com/s/articleView?id=sf.connected_app_client_credentials_setup.htm&type=5)」の Salesforce ドキュメントを参照してください。
**注記**  
Salesforce Connected Apps の場合、クライアント認証情報フローの [として実行] フィールドで、クライアント認証情報のユーザー名またはエイリアスを検索して選択します。

**AWS アカウントで、以下のことを確認してください。**
+ 認証の認証情報を[AWS Secrets Manager シークレット](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html)に保存し、シークレットの Amazon リソースネーム (ARN) を書き留めます。このページの**接続設定**の説明に従って、シークレットに入れる必要があるキーと値のペアを含めます。
+ ナレッジベースの AWS Identity and Access Management (IAM) ロール/アクセス許可ポリシーに、データソースに接続するために必要なアクセス許可を含めます。ナレッジベースの IAM ロールに追加する、このデータソースが必要なアクセス許可については、「[Permissions to access data sources](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html#kb-permissions-access-ds)」を参照してください。

**注記**  
コンソールを使用する場合は、AWS Secrets Manager に移動してシークレットを追加するか、データソース設定手順の一部として既存のシークレットを使用できます。必要なすべてのアクセス許可を持つ IAM ロールは、ナレッジベースを作成するためのコンソール手順の一部として作成できます。データソースやその他の設定を行うと、必要なすべてのアクセス許可を持つ IAM ロールが特定のナレッジベースに適用されます。  
認証情報とシークレットは、定期的に更新またはローテーションすることをお勧めします。セキュリティに必要なアクセスレベルのみを提供してください。データソース間で認証情報とシークレットを再利用することはお勧めしません。

## 接続設定
<a name="configuration-salesforce-connector"></a>

Salesforce インスタンスに接続するには、Amazon Bedrock がデータにアクセスしてクロールできるように、必要な設定情報を提供する必要があります。また、[前提条件](#prerequisites-salesforce-connector) に従う必要があります。

このデータソースの設定例をこのセクションに示します。

ドキュメントフィールドの自動検出、包含/除外フィルター、増分同期、シークレット認証情報、およびこれらの仕組みの詳細については、以下を選択してください。

### メインドキュメントフィールドの自動検出
<a name="ds-salesforce-document-fields"></a>

データソースコネクタは、ドキュメントまたはコンテンツのすべてのメインメタデータフィールドを自動的に検出してクロールします。例えば、データソースコネクタは、ドキュメントの本文に相当する部分、ドキュメントタイトル、ドキュメントの作成日または変更日、またはドキュメントに適用される可能性のあるその他のコアフィールドをクロールできます。

**重要**  
コンテンツに機密情報が含まれている場合、Amazon Bedrock は機密情報を使用して応答できます。

メタデータフィールドにフィルタリング演算子を適用して、レスポンスの関連性をさらに高めることができます。例えば、ドキュメントの「epoch\$1modification\$1time」は、ドキュメントの最終更新日を 1970 年 1 月 1 日からの経過秒数で表します。「epoch\$1modification\$1time」にフィルターを適用して、その値が特定の数*より大きい*最新のデータだけを取得できます。メタデータフィールドに適用できるフィルタリング演算子の詳細については、「[メタデータとフィルタリング](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html)」を参照してください。

### 包含/除外フィルター
<a name="ds-salesforce-inclusion-exclusion"></a>

特定のコンテンツのクロールを含めることも除外することもできます。例えば、ファイル名に「private」が含まれているファイルのクロールをスキップするために、除外プレフィックス/正規表現パターンを指定することができます。特定のコンテンツエンティティまたはコンテンツタイプを含めるように、包含プレフィックス/正規表現パターンを指定することもできます。包含フィルターと除外フィルターを指定し、両方がドキュメントに一致する場合、除外フィルターが優先され、ドキュメントはクロールされません。

キャンペーン名に「private」を含むキャンペーンを除外する正規表現パターンの例: *「.\$1private.\$1」*

包含/除外フィルターは、次のコンテンツタイプに適用できます。
+ `Account`: アカウント番号/識別子
+ `Attachment`: 拡張子付きの添付ファイル名
+ `Campaign`: キャンペーン名と関連する識別子
+ `ContentVersion`: ドキュメントバージョンと関連する識別子
+ `Partner`: 関連付けられた識別子を含むパートナー情報フィールド
+ `Pricebook2`: 製品/料金リスト名
+ `Case`: 顧客の問い合わせ/発行番号、および関連する識別子を含むその他の情報フィールド (注意: 個人情報を含めることができ、除外に使用できます)
+ `Contact`: 顧客情報フィールド (注意: 個人情報を含めることができ、除外に使用できます)
+ `Contract`: 契約名と関連する識別子
+ `Document`: 拡張子を持つファイル名
+ `Idea`: アイデア情報フィールドと関連する識別子
+ `Lead`: 潜在的な新しい顧客情報フィールド (注意: 個人情報を含めることができ、除外に使用できます)
+ `Opportunity`: 保留中の販売/取引情報フィールドおよび関連する識別子
+ `Product2`: 製品情報フィールドと関連する識別子
+ `Solution`: 顧客の問い合わせ/問題のソリューション名と関連する識別子
+ `Task`: タスク情報フィールドと関連する識別子
+ `FeedItem`: Chatter フィード投稿の識別子
+ `FeedComment`: コメントが属する Chatter フィード投稿の識別子
+ `Knowledge__kav`: ナレッジ記事のタイトル
+ `User`: 組織内のユーザーエイリアス
+ `CollaborationGroup`: Chatter グループ名 (一意)

### 増分同期
<a name="ds-salesforce-incremental-sync"></a>

データソースコネクタは、データソースがナレッジベースと同期するたびに、新規、変更、削除されたコンテンツをクロールします。Amazon Bedrock は、データソースの仕組みを使用して、コンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツをクロールできます。データソースをナレッジベースと初めて同期すると、デフォルトですべてのコンテンツがクロールされます。

データソースをナレッジベースと同期するには、[StartIngestionJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StartIngestionJob.html) API を使用するか、コンソールでナレッジベースを選択し、データソースの概要セクションで **[同期]** を選択します。

**重要**  
データソースから同期するすべてのデータは、データを取得する `bedrock:Retrieve` アクセス許可を持つすべてのユーザーが利用できるようになります。これには、データソースのアクセス許可が制御されているデータを含めることもできます。詳細については、「[Knowledge base permissions](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html)」を参照してください。

### シークレット認証情報
<a name="ds-salesforce-secret-auth-credentials"></a>

(OAuth 2.0 認証の場合) AWS Secrets Manager のシークレット認証情報には、次のキーと値のペアを含める必要があります。
+ `consumerKey`: *アプリクライアント ID*
+ `consumerSecret`: *アプリケーションクライアントシークレット*
+ `authenticationUrl`: *Salesforce インスタンス URL または認証トークンをリクエストする URL*

**注記**  
AWS Secrets Manager のシークレットは、ナレッジベースと同じリージョンを使用する必要があります。

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

**Salesforce インスタンスをナレッジベースに接続する**

1. [Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する](knowledge-base-create.md) の手順に従って、データソースとして **Salesforce** を選択します。

1. データソース名と説明 (オプション) を入力します。

1. Salesforce インスタンス URL を指定します。例えば、*https://company.salesforce.com/* です。インスタンスは Salesforce 接続アプリケーションを実行している必要があります。

1. **[詳細設定]** セクションでは、必要に応じて以下を設定できます。
   + **一時的なデータストレージ用の KMS キー。**– データを埋め込みに変換するとともに、デフォルト AWS マネージドキー または独自の KMS キーを使用して一時的なデータを暗号化できます。詳細については、「[データインジェスト時の一時データストレージの暗号化](encryption-kb.md#encryption-kb-ingestion)」を参照してください。
   + **データ削除ポリシー** – デフォルトでベクトルストアに保存されているデータソースのベクトル埋め込みを削除したり、ベクトルストアデータを保持するように選択したりできます。

1. Salesforce インスタンスに接続するための認証情報を指定します。

   1. OAuth 2.0 認証の場合、AWS Secrets Manager に移動してシークレット認証情報を追加するか、作成したシークレットに既存の Amazon リソースネーム (ARN) を使用します。シークレットには、Salesforce Connected App コンシューマーキー (クライアント ID)、コンシューマーシークレット (クライアントシークレット)、および Salesforce インスタンス URL または認証トークンをリクエストする URL が含まれている必要があります。詳細については、「[接続されたアプリケーションの作成](https://help.salesforce.com/s/articleView?id=sf.connected_app_create.htm&type=5)」および「[OAuth 2.0 クライアント認証情報用の接続されたアプリケーションの設定](https://help.salesforce.com/s/articleView?id=sf.connected_app_client_credentials_setup.htm&type=5)」の Salesforce ドキュメントを参照してください。

1. (オプション) **[コンテンツの解析とチャンキング]** セクションで、データの解析とチャンキングの方法をカスタマイズできます。これらのカスタマイズの詳細については、次のリソースを参照してください。
   + 解析オプションの詳細については、「[データソースの解析オプション](kb-advanced-parsing.md)」を参照してください。
   + チャンキング戦略の詳細については、「[ナレッジベースのコンテンツのチャンキングの仕組み](kb-chunking.md)」を参照してください。
**警告**  
データソースに接続した後はチャンキング戦略を変更できません。
   + Lambda 関数を使用してデータのチャンキングとメタデータの処理をカスタマイズする方法の詳細については、「[カスタム変換 Lambda 関数を使用してデータの取り込み方法を定義する](kb-custom-transformation.md)」を参照してください。

1. フィルター/正規表現パターンの使用を選択して、特定のコンテンツを含めるか除外します。指定しない場合、標準コンテンツはすべてクロールされます。

1. 埋め込みモデルとベクトルストアの選択を続行します。残りの手順を確認するには、「[Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する](knowledge-base-create.md)」に戻り、データソースを接続した後の手順から続行します。

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

以下は、Amazon Bedrock ナレッジベースの Salesforce に接続するための設定の例です。データソースは、AWS CLI または Python などのサポートされている SDK で API を使用して設定します。[CreateKnowledgeBase](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateKnowledgeBase.html) を呼び出した後、[CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) を呼び出して、`dataSourceConfiguration` の接続情報を使用してデータソースを作成します。

オプションの `vectorIngestionConfiguration` フィールドを含めることで取り込みに適用できるカスタマイズの詳細については、「[データソースの取り込みをカスタマイズする](kb-data-source-customize-ingestion.md)」を参照してください。

**AWS Command Line Interface**

```
aws bedrock create-data-source \
 --name "Salesforce connector" \
 --description "Salesforce data source connector for Amazon Bedrock to use content in Salesforce" \
 --knowledge-base-id "your-knowledge-base-id" \
 --data-source-configuration file://salesforce-bedrock-connector-configuration.json \
 --data-deletion-policy "DELETE" \
 --vector-ingestion-configuration '{"chunkingConfiguration":[{"chunkingStrategy":"FIXED_SIZE","fixedSizeChunkingConfiguration":[{"maxTokens":"100","overlapPercentage":"10"}]}]}'

salesforce-bedrock-connector-configuration.json
{
    "salesforceConfiguration": {
        "sourceConfiguration": {
            "hostUrl": "https://company.salesforce.com/",
            "authType": "OAUTH2_CLIENT_CREDENTIALS",
            "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-Salesforce"
        },
        "crawlerConfiguration": {
            "filterConfiguration": {
                "type": "PATTERN",
                "patternObjectFilter": {
                    "filters": [
                        {
                            "objectType": "Campaign",
                            "inclusionFilters": [
                                ".*public.*"
                            ],
                            "exclusionFilters": [
                                ".*private.*"
                            ]
                        }
                    ]
                }
            }
        }
    },
    "type": "SALESFORCE"
}
```

------

# ナレッジベースのウェブページをクロールする
<a name="webcrawl-data-source-connector"></a>

Amazon Bedrock が提供するウェブクローラーは、Amazon Bedrock ナレッジベースで使用するために選択した URL に接続してクロールします。選択した URL に設定した範囲または制限に従って、ウェブサイトのページをクロールすることができます。[Amazon Bedrock の AWS マネジメントコンソール](https://console.aws.amazon.com/bedrock/home)、または [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) API を使用してウェブサイトのページをクロールできます (Amazon Bedrock [supported SDKs and AWS CLI](https://docs.aws.amazon.com/bedrock/latest/APIReference/welcome.html) を参照)。現在、このデータソースで使用できるのは Amazon OpenSearch Serverless ベクトルストアのみです。

**注記**  
ウェブクローラーデータソースコネクタはプレビューリリース段階であり、変更される可能性があります。

クロールするウェブサイトを選択するときは、[Amazon 適正利用規約](https://aws.amazon.com/aup/)およびその他の Amazon 利用規約のすべてに準拠する必要があります。自分のウェブページ、またはクロールを許可され、robots.txt 設定を優先する必要があるウェブページのインデックスを作成するためにのみ、ウェブクローラーを使用する必要があることに留意してください。

ウェブクローラーは、[RFC 9309](https://www.rfc-editor.org/rfc/rfc9309.html) に従って robots.txt を尊重します

クロールできるウェブページコンテンツアイテムの数とコンテンツアイテムあたりの MB には制限があります。「[Quotas for knowledge bases](https://docs.aws.amazon.com/bedrock/latest/userguide/quotas.html)」を参照してください。

**Topics**
+ [

## サポートされている機能
](#supported-features-webcrawl-connector)
+ [

## 前提条件
](#prerequisites-webcrawl-connector)
+ [

## 接続設定
](#configuration-webcrawl-connector)

## サポートされている機能
<a name="supported-features-webcrawl-connector"></a>

ウェブクローラーは、シード URL から始まる HTML ページに接続してクロールし、同じ上位のプライマリドメインとパスの下にあるすべての子リンクを巡回します。HTML ページのいずれかがサポートされているドキュメントを参照している場合、それらのドキュメントが同じ上位のプライマリドメイン内にあるかどうかにかかわらず、ウェブクローラーはそれらのドキュメントを取得します。クロール設定を変更することで、クロール動作を変更できます - 「[接続設定](#configuration-webcrawl-connector)」を参照する。

以下がサポートされています。
+ 複数のソース URL を選択してクロールし、ホストのみをクロールするかサブドメインも含めるように URL の範囲を設定します。
+ ソース URL の一部である静的ウェブページをクロールします。
+ カスタムユーザーエージェントのサフィックスを指定して、独自のクローラーのルールを設定します。
+ フィルターパターンに一致する特定の URL を含めるか除外します。
+ 「許可」や「拒否」などの標準の robots.txt ディレクティブを尊重します。
+ クロールする URL の範囲を制限し、オプションでフィルターパターンに一致する URL を除外します。
+ URL のクローリング速度とクローリングするページの最大数を制限します。
+ Amazon CloudWatch でクロールされた URL のステータスの表示

## 前提条件
<a name="prerequisites-webcrawl-connector"></a>

**ウェブクローラーを使用するには、以下を確認してください**。
+ ソース URL をクロールする権限があることを確認します。
+ ソース URL に対応する robots.txt へのパスが URL のクロールをブロックしていないことを確認します。ウェブクローラーは、robots.txt の基準に準拠しています。ウェブサイトに robots.txt が見つからない場合は、デフォルトで `disallow`。ウェブクローラーは、[RFC 9309](https://www.rfc-editor.org/rfc/rfc9309.html) に従って robots.txt を尊重します。カスタムユーザーエージェントのサフィックスを指定して、独自のクローラーのルールを設定することもできます。詳細については、このページの [接続設定](#configuration-webcrawl-connector) 手順の「ウェブクローラー URL アクセス」を参照してください。
+ [CloudWatch Logs 配信を有効](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-bases-logging.html)にし、ウェブクローラーログの例に従って、ウェブコンテンツを取り込むためのデータインジェストジョブのステータスと、特定の URL を取得できないかどうかを表示します。

**注記**  
クロールするウェブサイトを選択するときは、[Amazon 適正利用規約](https://aws.amazon.com/aup/)およびその他の Amazon 利用規約のすべてに準拠する必要があります。自分のウェブページ、またはクロールすることを許可されているウェブページをインデックスするためにのみ、ウェブクローラーを使用することに留意してください。

## 接続設定
<a name="configuration-webcrawl-connector"></a>

URL のクロール、包含/除外フィルター、URL アクセス、増分同期、およびこれらの動作の同期スコープの詳細については、以下を選択してください。

### URL をクロールするための同期範囲
<a name="ds-sync-scope"></a>

各ページ URL とシード URL の特定の関係に基づいて、クロールする URL の範囲を制限することができます。クローリングを高速化するために、シード URL のホストと初期 URL パスと同じものを持つ URL に制限できます。より広い範囲をクロールする場合は、同じホストを持つ URL をクロールするか、シード URL の任意のサブドメイン内をクロールするかを選択できます。

以下のオプションから選択できます。
+ デフォルト: 同じホストに属し、同じ初期 URL パスを持つウェブページのクロールに制限します。例えば、シード URL が「https://aws.amazon.com/bedrock/」の場合、「https://aws.amazon.com/bedrock/agents/」のように、このパスと、このパスから拡張されたウェブページのみがクロールされます。例えば、「https://aws.amazon.com/ec2/」のような 兄弟 URL はクロールされません。
+ ホストのみ: 同じホストに属するウェブページにクローリングを制限します。例えば、シード URL が「https://aws.amazon.com/bedrock/」の場合、「https://aws.amazon.com/ec2」のように「https://aws.amazon.com」を含むウェブページもクロールされます。
+ サブドメイン: シード URL と同じプライマリドメインを持つウェブページのクロールを含めます。例えば、シード URL が「https://aws.amazon.com/bedrock/」の場合、「https://www.amazon.com」のように「amazon.com」(サブドメイン) を含むウェブページもクロールされます。

**注記**  
過剰になりうるウェブページをクローリングしていないことを確認してください。フィルターや範囲の制限なしで wikipedia.org などの大規模なウェブサイトをクロールすることはお勧めしません。大規模なウェブサイトのクローリングには非常に時間がかかります。  
[サポートされているファイルタイプ](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-ds.html)は、範囲に関係なく、またファイルタイプに除外パターンがない場合にクロールされます。

ウェブクローラーは静的ウェブサイトをサポートしています。

URL のクローリング速度を制限して、クローリング速度のスロットリングを制御することもできます。1 分あたりにウェブサイトホストごとにクロールされる URL の最大数を設定します。さらに、クロールするウェブページの総数の最大数 (最大 25,000) を設定することもできます。ソース URL のウェブページの合計数が設定した最大値を超えると、データソースの同期/取り込みジョブは失敗することに注意してください。

### 包含/除外フィルター
<a name="ds-inclusion-exclusion"></a>

適用範囲に従って、特定の URL を含めることも除外することもできます。[サポートされているファイルタイプ](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-ds.html)は、範囲に関係なく、またファイルタイプに除外パターンがない場合にクロールされます。包含フィルターと除外フィルターを指定し、両方が URL に一致する場合、除外フィルターが優先され、ウェブコンテンツはクロールされません。

**重要**  
[破壊的なバックトラック](https://docs.aws.amazon.com/codeguru/detector-library/python/catastrophic-backtracking-regex/)と先読みにつながる問題のある正規表現パターンフィルターは拒否されます。

「.pdf」または PDF ウェブページのアタッチメントで終わる URL を除外する正規表現フィルターパターンの例: *".\$1\$1.pdf\$1"*

### ウェブクローラー URL アクセス
<a name="ds-webcrawl-identity-crawling"></a>

ウェブクローラー を使用して、クロールが許可されているウェブサイトのページをクロールすることができます。

クロールするウェブサイトを選択するときは、[Amazon 適正利用規約](https://aws.amazon.com/aup/)およびその他の Amazon 利用規約のすべてに準拠する必要があります。自分のウェブページ、またはクロールすることを許可されているウェブページをインデックスするためにのみ、ウェブクローラーを使用することに留意してください。

ウェブクローラーは、[RFC 9309](https://www.rfc-editor.org/rfc/rfc9309.html) に従って robots.txt を尊重します

特定のユーザーエージェントボットを指定して、ユーザーエージェントがソース URL をクロールすることを「許可」または「拒否」できます。ウェブサイトの robots.txt ファイルを変更して、ウェブクローラーがウェブサイトをクロールする方法を制御できます。クローラーはまず `bedrockbot-UUID ` ルールを探し、次に robots.txt ファイル内の一般的な `bedrockbot` ルールを探します。

ボット保護システムでクローラーを許可リストに登録するために使用できる User-Agent サフィックスを追加することもできます。ユーザーエージェントの文字列を偽装できないようにするために、このサフィックスを `robots.txt` ファイルに追加する必要はありません。例えば、すべてのウェブサイトコンテンツをウェブクローラーがクロールできるようにして、他のロボットのクローリングを禁止するには、次のディレクティブを使用します。

```
User-agent: bedrockbot-UUID # Amazon Bedrock Web Crawler
Allow: / # allow access to all pages
User-agent: * # any (other) robot
Disallow: / # disallow access to any pages
```

### 増分同期
<a name="ds-incremental-sync"></a>

ウェブクローラーを実行するたびに、ソース URL から到達可能で、範囲とフィルターに一致するすべての URL のコンテンツを取得します。すべてのコンテンツの初回同期後に増分同期を行う場合、Amazon Bedrock はナレッジベースを新規および変更されたコンテンツで更新し、存在しない古いコンテンツを削除します。時折、クローラーはコンテンツがウェブサイトから削除されたかどうかを判断できないことがあります。この場合、ナレッジベースの古いコンテンツを保存する側に回ることになります。

データソースをナレッジベースと同期するには、[StartIngestionJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StartIngestionJob.html) API を使用するか、コンソールでナレッジベースを選択し、データソースの概要セクションで **[同期]** を選択します。

**重要**  
データソースから同期するすべてのデータは、データを取得する `bedrock:Retrieve` アクセス許可を持つすべてのユーザーが利用できるようになります。これには、データソースのアクセス許可が制御されているデータを含めることもできます。詳細については、「[Knowledge base permissions](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html)」を参照してください。

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

**ウェブクローラーデータソースをナレッジベースに接続する**

1. [Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する](knowledge-base-create.md) の手順に従って、データソースとして **[ウェブクローラー]** を選択します。

1. データソース名と説明 (オプション) を入力します。

1. クロールする URL の**ソース URL** を指定します。**ソース URL の追加**を選択すると、最大 9 つの URL を追加できます。ソース URL を提供することで、そのドメインをクロールする権限があることを確認することになります。

1. **[詳細設定]** セクションでは、必要に応じて以下を設定できます。
   + **一時的なデータストレージ用の KMS キー。**– データを埋め込みに変換するとともに、デフォルト AWS マネージドキー または独自の KMS キーを使用して一時的なデータを暗号化できます。詳細については、「[データインジェスト時の一時データストレージの暗号化](encryption-kb.md#encryption-kb-ingestion)」を参照してください。
   + **データ削除ポリシー** – デフォルトでベクトルストアに保存されているデータソースのベクトル埋め込みを削除したり、ベクトルストアデータを保持するように選択したりできます。

1. (オプション) ウェブサーバーにアクセスするときにクローラーまたはボットを識別する **bedrock-UUID-** のユーザーエージェントサフィックスを指定します。

1. **[同期の範囲]** セクションで以下を設定します。

   1. ソース URL をクローリングする **[ウェブサイトのドメイン範囲]** を選択します。
      + デフォルト: 同じホストに属し、同じ初期 URL パスを持つウェブページのクロールに制限します。例えば、シード URL が「https://aws.amazon.com/bedrock/」の場合、「https://aws.amazon.com/bedrock/agents/」のように、このパスと、このパスから拡張されたウェブページのみがクロールされます。例えば、「https://aws.amazon.com/ec2/」のような 兄弟 URL はクロールされません。
      + ホストのみ: 同じホストに属するウェブページにクローリングを制限します。例えば、シード URL が「https://aws.amazon.com/bedrock/」の場合、「https://aws.amazon.com/ec2」のように「https://aws.amazon.com」を含むウェブページもクロールされます。
      + サブドメイン: シード URL と同じプライマリドメインを持つウェブページのクロールを含めます。例えば、シード URL が「https://aws.amazon.com/bedrock/」の場合、「https://www.amazon.com」のように「amazon.com」(サブドメイン) を含むウェブページもクロールされます。
**注記**  
過剰になりうるウェブページをクローリングしていないことを確認してください。フィルターや範囲の制限なしで wikipedia.org などの大規模なウェブサイトをクロールすることはお勧めしません。大規模なウェブサイトのクローリングには非常に時間がかかります。  
[サポートされているファイルタイプ](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-ds.html)は、範囲に関係なく、またファイルタイプに除外パターンがない場合にクロールされます。

   1. **クローリング速度の最大スロットリング** を入力します。ホストごとに 1 分あたり 1～300 URL を取り込みます。クローリング速度が高いほど負荷は増加しますが、所要時間は短くなります。

   1. **データソース同期の最大ページ数**を 1～25000 の間で入力します。ソース URL からクロールされるウェブページの最大数を制限します。ウェブページがこの数を超えると、データソースの同期に失敗し、ウェブページは取り込まれません。

   1. **URL 正規表現**パターン (オプション) では、ボックスに正規表現パターンを入力して、**包含パターン**または**除外パターン**を追加できます。**[新しいパターンを追加する]** を選択すると、包含および除外フィルターパターンをそれぞれ最大 25 個追加できます。包含パターンと除外パターンは、適用範囲に従ってクロールされます。競合がある場合、除外パターンが優先されます。

1. (オプション) **[コンテンツの解析とチャンキング]** セクションで、データの解析とチャンキングの方法をカスタマイズできます。これらのカスタマイズの詳細については、次のリソースを参照してください。
   + 解析オプションの詳細については、「[データソースの解析オプション](kb-advanced-parsing.md)」を参照してください。
   + チャンキング戦略の詳細については、「[ナレッジベースのコンテンツのチャンキングの仕組み](kb-chunking.md)」を参照してください。
**警告**  
データソースに接続した後はチャンキング戦略を変更できません。
   + Lambda 関数を使用してデータのチャンキングとメタデータの処理をカスタマイズする方法の詳細については、「[カスタム変換 Lambda 関数を使用してデータの取り込み方法を定義する](kb-custom-transformation.md)」を参照してください。

1. 埋め込みモデルとベクトルストアの選択を続行します。残りの手順を確認するには、「[Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する](knowledge-base-create.md)」に戻り、データソースを接続した後の手順から続行します。

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

ウェブクローラーを使用してナレッジベースをデータソースに接続するには、[Amazon Bedrock エージェントのビルドタイムエンドポイント](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt)で [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) リクエストを送信し、[DataSourceConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DataSourceConfiguration.html) の `type` フィールドに `WEB` を指定して、`webConfiguration` フィールドを含めます。以下は、Amazon Bedrock ナレッジベースのウェブクローラーの設定例です。

```
{
    "webConfiguration": {
        "sourceConfiguration": {
            "urlConfiguration": {
                "seedUrls": [{
                    "url": "https://www.examplesite.com"
                }]
            }
        },
        "crawlerConfiguration": {
            "crawlerLimits": {
                "rateLimit": 50,
                "maxPages": 100
            },
            "scope": "HOST_ONLY",
            "inclusionFilters": [
                "https://www\.examplesite\.com/.*\.html"
            ],
            "exclusionFilters": [
                "https://www\.examplesite\.com/contact-us\.html"
            ],
            "userAgent": "CustomUserAgent"
        }
    },
    "type": "WEB"
}
```

オプションの `vectorIngestionConfiguration` フィールドを含めることで取り込みに適用できるカスタマイズの詳細については、「[データソースの取り込みをカスタマイズする](kb-data-source-customize-ingestion.md)」を参照してください。

------

# ナレッジベースをカスタムデータソースに接続する
<a name="custom-data-source-connector"></a>

サポートされているデータソースサービスを選択する代わりに、カスタムデータソースに接続すると、次の利点が得られます。
+ ナレッジベースからアクセス可能にするデータ型を柔軟に選択して制御できる。
+ `KnowledgeBaseDocuments` API オペレーションを使用して、変更を同期せずにドキュメントの取り込みまたは削除を直接実行できる。
+ Amazon Bedrock コンソールまたは API を使用して、データソース内のドキュメントを直接表示できる。
+ ドキュメントを のデータソースに直接アップロードAWS マネジメントコンソールしたり、インラインで追加したりできます。
+ データソース内のドキュメントを追加または更新するときに、メタデータを各ドキュメントに直接追加できる。データソースから情報を取得するときにメタデータを使用してフィルタリングする方法の詳細については、「[クエリとレスポンスの生成を設定してカスタマイズする](kb-test-config.md)」の「**メタデータとフィルタリング**」タブを参照してください。

**マルチモーダルコンテンツのサポート**  
カスタムデータソースは、最大 10MB の base64 エンコードされたイメージ、オーディオ、ビデオファイルを含むマルチモーダルコンテンツをサポートします。マルチモーダルコンテンツの使用に関する包括的なガイダンスについては、「」を参照してください[マルチモーダルコンテンツのナレッジベースを構築する](kb-multimodal.md)。

ナレッジベースをカスタムデータソースに接続するには、[Amazon Bedrock エージェントのビルドタイムエンドポイント](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt)を使用して [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) リクエストを送信します。接続先ナレッジベースの `knowledgeBaseId` を指定し、データソースに `name` を指定して、`dataSourceConfiguration` の `type` フィールドを `CUSTOM` として指定します。このデータソースを作成する最小限の例を次に示します。

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

{
    "name": "MyCustomDataSource",
    "dataSourceConfiguration": {
        "type": "CUSTOM"
    }
}
```

次のいずれかのオプションフィールドを含めて、データソースを設定することができます。


****  

| フィールド | ユースケース | 
| --- | --- | 
| 説明 | データソースの説明を入力します。 | 
| clientToken | API リクエストが 1 回だけ完了するようにします。詳細については、「[べき等性の確保](https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html)」を参照してください。 | 
| serverSideEncryptionConfiguration | データを埋め込みに変換する際の一時データストレージのカスタム KMS キーを指定します。詳細については、[データインジェスト時の一時データストレージの暗号化](encryption-kb.md#encryption-kb-ingestion)を参照してください。 | 
| dataDeletionPolicy | データソースを削除する場合に、ベクトルストア内のデータソースのベクトル埋め込みをどのように処理するかを設定します。ベクトルストア内のデータを保持するには RETAIN を指定し、削除するにはデフォルトオプションの DELETE を指定します。 | 
| vectorIngestionConfiguration | データソースの取り込みのオプションを設定します。詳細については、以下を参照してください。 | 

`vectorIngestionConfiguration` フィールドは、次のフィールドを含む [VectorIngestionConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_VectorIngestionConfiguration.html) オブジェクトにマッピングされます。
+ chunkingConfiguration – データソース内のドキュメントのチャンキングに使用する戦略を設定します。チャンキング戦略の詳細については、「[ナレッジベースのコンテンツのチャンキングの仕組み](kb-chunking.md)」を参照してください。
+ parsingConfiguration – データソースの解析に使用する戦略を設定します。解析オプションの詳細については、「[データソースの解析オプション](kb-advanced-parsing.md)」を参照してください。
+ customTransformationConfiguration – データの変換方法をカスタマイズし、Lambda 関数を適用してさらに詳細なカスタマイズを行います。Lambda 関数を使用してデータのチャンキングとメタデータの処理をカスタマイズする方法の詳細については、「[カスタム変換 Lambda 関数を使用してデータの取り込み方法を定義する](kb-custom-transformation.md)」を参照してください。

カスタムデータソースを設定したら、カスタムデータソースにドキュメントを追加してナレッジベースに直接取り込むことができます。他のデータソースとは異なり、カスタムデータソースを同期する必要はありません。ドキュメントを直接取り込む方法については、「[変更をナレッジベースに直接取り込む](kb-direct-ingestion.md)」を参照してください。

# データソースの取り込みをカスタマイズする
<a name="kb-data-source-customize-ingestion"></a>

でデータソースを接続するとき、 AWS マネジメントコンソール または [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) リクエストを送信するときに `vectorIngestionConfiguration`フィールドの値を変更することで、ベクトル取り込みをカスタマイズできます。

次のトピックを選択して、データソースへの接続時に取り込みをカスタマイズするための構成を含める方法を確認してください。

**Topics**
+ [

## 解析に使用するツールを選択する
](#kb-data-source-customize-parsing)
+ [

## チャンキング戦略を選択する
](#kb-data-source-customize-chunking)
+ [

## 取り込み時に Lambda 関数を使用する
](#kb-data-source-customize-lambda)

## 解析に使用するツールを選択する
<a name="kb-data-source-customize-parsing"></a>

データ内のドキュメントを解析する方法をカスタマイズできます。Amazon Bedrock ナレッジベースでデータを解析するためのオプションについては、「[データソースの解析オプション](kb-advanced-parsing.md)」を参照してください。

**警告**  
データソースに接続後は解析戦略を変更できません。別の解析戦略を使用するには、新しいデータソースを追加します。  
ナレッジベースの作成後に、マルチモーダルデータ (画像、図、グラフ、テーブルなど) を保存するための S3 の場所を追加することはできません。マルチモーダルデータを含め、それをサポートするパーサーを使用する場合は、新しいナレッジベースを作成する必要があります。

解析戦略の選択に関連するステップは、 AWS マネジメントコンソール と Amazon Bedrock API のどちらを使用するか、および選択した解析方法によって異なります。マルチモーダルデータをサポートする解析方法を選択する場合は、ドキュメントから抽出されたマルチモーダルデータを保存する S3 URI を指定する必要があります。このデータはナレッジベースクエリで返すことができます。
+ で AWS マネジメントコンソール、次の操作を行います。

  1. ナレッジベースの設定中にデータソースへ接続する際、または既存のナレッジベースに新しいデータソースを追加する際に、解析戦略を選択します。

  1. (解析戦略として Amazon Bedrock Data Automation または基盤モデルを選択した場合) 埋め込みモデルを選択してベクトルストアを設定するときに、**[マルチモーダルストレージの保存先]** セクションでドキュメントから抽出されたマルチモーダルデータを保存する S3 URI を指定します。必要に応じて、このステップでカスタマーマネージドキーを使用して S3 データを暗号化することもできます。
+ Amazon Bedrock API で、次を行います。

  1. (解析戦略として Amazon Bedrock Data Automation または基盤モデルを使用する予定の場合) [CreateKnowledgeBase](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateKnowledgeBase.html) リクエストの [VectorKnowledgeBaseConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_VectorKnowledgeBaseConfiguration.html) に [SupplementalDataStorageLocation](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_SupplementalDataStorageLocation.html) を含めます。

  1. [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) リクエストの [VectorIngestionConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_VectorIngestionConfiguration.html) の `parsingConfiguration` フィールドに [ParsingConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_ParsingConfiguration.html) を含めます。
**注記**  
この設定を省略すると、Amazon Bedrock ナレッジベースでは Amazon Bedrock のデフォルトパーサーが使用されます。

API で解析戦略を指定する方法の詳細については、使用する解析戦略に対応するセクションを展開してください。

### Amazon Bedrock のデフォルトパーサー
<a name="w2aac28c10c23c15c17c11c13b1"></a>

デフォルトパーサーを使用するには、`VectorIngestionConfiguration` 内に `parsingConfiguration` フィールドを含めないでください。

### Amazon Bedrock Data Automation パーサー (プレビュー)
<a name="w2aac28c10c23c15c17c11c13b3"></a>

Amazon Bedrock Data Automation パーサーを使用するには、次の形式のように、`ParsingConfiguration` の `parsingStrategy` フィールドに `BEDROCK_DATA_AUTOMATION` を指定し、`bedrockDataAutomationConfiguration` フィールドに [BedrockDataAutomationConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_BedrockDataAutomationConfiguration.html) を含めます。

```
{
    "parsingStrategy": "BEDROCK_DATA_AUTOMATION",
    "bedrockDataAutomationConfiguration": {
        "parsingModality": "string"
    }
}
```

### 基盤モデル
<a name="w2aac28c10c23c15c17c11c13b5"></a>

基盤モデルをパーサーとして使用するには、次の形式のように、`ParsingConfiguration` の `parsingStrategy` フィールドに `BEDROCK_FOUNDATION_MODEL` を指定し、`bedrockFoundationModelConfiguration` フィールドに [BedrockFoundationModelConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_BedrockFoundationModelConfiguration.html) を含めます。

```
{
    "parsingStrategy": "BEDROCK_FOUNDATION_MODEL",
    "bedrockFoundationModelConfiguration": {
        "modelArn": "string",
        "parsingModality": "string",
        "parsingPrompt": {
            "parsingPromptText": "string"
        }
    }
}
```

## チャンキング戦略を選択する
<a name="kb-data-source-customize-chunking"></a>

データ内のドキュメントをチャンク分割して保存および取得する方法をカスタマイズできます。Amazon Bedrock ナレッジベースでデータをチャンク分割するオプションについては、「[ナレッジベースのコンテンツのチャンキングの仕組み](kb-chunking.md)」を参照してください。

**警告**  
データソースに接続した後はチャンキング戦略を変更できません。

 AWS マネジメントコンソール で、データソースに接続するときにチャンキング戦略を選択します。Amazon Bedrock API を使用する場合は、[VectorIngestionConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_VectorIngestionConfiguration.html) の `chunkingConfiguration` フィールドに [ChunkingConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_ChunkingConfiguration.html) を含めます。

**注記**  
この構成を省略すると、Amazon Bedrock は文の境界を維持したまま、約 300 個のトークンからなる複数のチャンクにコンテンツを分割します。

使用する解析戦略に対応するセクションを展開してください。

### チャンキングなし
<a name="w2aac28c10c23c15c17c13c13b1"></a>

データソース内の各ドキュメントを 1 つのソースチャンクとして扱うには、次の形式のように、`ChunkingConfiguration` の `chunkingStrategy` フィールドに `NONE` を指定します。

```
{
    "chunkingStrategy": "NONE"
}
```

### 固定サイズのチャンキング
<a name="w2aac28c10c23c15c17c13c13b3"></a>

データソース内の各ドキュメントをほぼ同じサイズのチャンクに分割するには、次の形式のように、`ChunkingConfiguration` の `chunkingStrategy` フィールドに `FIXED_SIZE` を指定し、`fixedSizeChunkingConfiguration` フィールドに [FixedSizeChunkingConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_FixedSizeChunkingConfiguration.html) を含めます。

```
{
    "chunkingStrategy": "FIXED_SIZE",
    "fixedSizeChunkingConfiguration": {
        "maxTokens": number,
        "overlapPercentage": number
    }
}
```

### 階層的チャンキング
<a name="w2aac28c10c23c15c17c13c13b5"></a>

データソース内の各ドキュメントを 2 つのレベル (最初のレイヤーから派生した小さなチャンクが 2 番目のレイヤーに含まれる) に分割するには、次の形式のように、`ChunkingConfiguration` の `chunkingStrategy` フィールドに `HIERARCHICAL` を指定し、`hierarchicalChunkingConfiguration` フィールドを含めます。

```
{
    "chunkingStrategy": "HIERARCHICAL",
    "hierarchicalChunkingConfiguration": {
        "levelConfigurations": [{
            "maxTokens": number
        }],
        "overlapTokens": number
    }
}
```

### セマンティックチャンキング
<a name="w2aac28c10c23c15c17c13c13b7"></a>

データソース内の各ドキュメントを、構文構造よりもセマンティックな意味を優先するチャンクに分割するには、次の形式のように、`ChunkingConfiguration` の `chunkingStrategy` フィールドに `SEMANTIC` を指定し、`semanticChunkingConfiguration` フィールドを含めます。

```
{
    "chunkingStrategy": "SEMANTIC",
    "semanticChunkingConfiguration": {
        "breakpointPercentileThreshold": number,
        "bufferSize": number,
        "maxTokens": number
    }
}
```

## 取り込み時に Lambda 関数を使用する
<a name="kb-data-source-customize-lambda"></a>

Lambda 関数を使用すると、データからのソースチャンクがベクトルストアに書き込まれる方法を、次の方法で後処理できます。
+ カスタムチャンキング戦略を提供するチャンキングロジックを含めます。
+ チャンクレベルのメタデータを指定するロジックを含めます。

取り込み用のカスタム Lambda 関数の記述については、「[カスタム変換 Lambda 関数を使用してデータの取り込み方法を定義する](kb-custom-transformation.md)」を参照してください。 AWS マネジメントコンソール で、データソースに接続するときに Lambda 関数を選択します。Amazon Bedrock API では、次の形式のように、[VectorIngestionConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_VectorIngestionConfiguration.html) の `CustomTransformationConfiguration` フィールドに [CustomTransformationConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CustomTransformationConfiguration.html) を含め、Lambda の ARN を指定します。

```
{
    "transformations": [{
        "transformationFunction": {
            "transformationLambdaConfiguration": {
                "lambdaArn": "string"
            }
        },
        "stepToApply": "POST_CHUNKING"
    }],
    "intermediateStorage": {
        "s3Location": {
            "uri": "string"
        }
    }
}
```

また、Lambda 関数を適用した後に出力を保存する S3 の場所も指定します。

Amazon Bedrock が提供するチャンキングオプションのいずれかを適用した後、`chunkingConfiguration` フィールドを追加して Lambda 関数を適用できます。

# ナレッジベースのセキュリティ設定を行います。
<a name="kb-create-security"></a>

ナレッジベースを作成したら、次のセキュリティ設定をセットアップする必要がある場合があります。

**Topics**
+ [

## ナレッジベースのデータアクセスポリシーを設定する
](#kb-create-security-data)
+ [

## Amazon OpenSearch Serverless ナレッジベースのネットワークアクセスポリシーを設定する
](#kb-create-security-network)

## ナレッジベースのデータアクセスポリシーを設定する
<a name="kb-create-security-data"></a>

[カスタムロール](kb-permissions.md)を使用している場合は、新しく作成したナレッジベースのセキュリティを設定します。Amazon Bedrock にサービスロールを作成させる場合は、このステップをスキップできます。設定するデータベースに対応するタブの手順に従います。

------
#### [ Amazon OpenSearch Serverless ]

Amazon OpenSearch Serverless コレクションへのアクセスをナレッジベースサービスロールに制限するには、データアクセスポリシーを作成します。これは以下の方法で実行できます。
+ Amazon OpenSearch Service デベロッパーガイドの「[Creating data access policies (console)](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-data-access.html#serverless-data-access-console)」の手順に従って、Amazon OpenSearch Service コンソールを使用します。
+ [OpenSearch Serverless エンドポイント](https://docs.aws.amazon.com/general/latest/gr/opensearch-service.html#opensearch-service-regions)で [CreateAccessPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_CreateAccessPolicy.html) リクエストを送信して AWSAPI を使用します。AWS CLI例については、[「データアクセスポリシーの作成 (AWS CLI)](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-data-access.html#serverless-data-access-cli)」を参照してください。

次のデータアクセスポリシーを使用して、Amazon OpenSearch Serverless コレクションとサービスロールを指定します。

```
[
    {
        "Description": "${data access policy description}",
        "Rules": [
          {
            "Resource": [
              "index/${collection_name}/*"
            ],
            "Permission": [
                "aoss:DescribeIndex",
                "aoss:ReadDocument",
                "aoss:WriteDocument"
            ],
            "ResourceType": "index"
          }
        ],
        "Principal": [
            "arn:aws:iam::${account-id}:role/${kb-service-role}"
        ]
    }
]
```

------
#### [ Pinecone, Redis エンタープライズクラウド or MongoDB Atlas ]

Pinecone、Redis Enterprise Cloud、MongoDB Atlas ベクトルインデックスを統合するには、ナレッジベースサービスロールに次のアイデンティティベースのポリシーをアタッチして、ベクトルインデックスのAWS Secrets Managerシークレットにアクセスできるようにします。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "bedrock:AssociateThirdPartyKnowledgeBase"
        ],
        "Resource": "*",
        "Condition": {
            "StringEquals": {
                "bedrock:ThirdPartyKnowledgeBaseCredentialsSecretArn": "arn:aws:secretsmanager:us-east-1:123456789012:secret:${secret-id}"
            }
        }
    }]
}
```

------

------

## Amazon OpenSearch Serverless ナレッジベースのネットワークアクセスポリシーを設定する
<a name="kb-create-security-network"></a>

ナレッジベースにプライベート Amazon OpenSearch Serverless コレクションを使用する場合は、AWS PrivateLinkVPC エンドポイントを介してのみアクセスできます。[Amazon OpenSearch Serverless ベクトルコレクションを設定する](knowledge-base-setup.md)ときにプライベート Amazon OpenSearch Serverless コレクションを作成することも、ネットワークアクセスポリシーを設定するときに既存の Amazon OpenSearch Serverless コレクション (Amazon Bedrock コンソールが作成したコレクションを含む) をプライベートにすることもできます。

Amazon OpenSearch Service デベロッパーガイドの以下のリソースは、プライベート Amazon OpenSearch Serverless コレクションに必要な設定を理解するのに役立ちます。
+ プライベート Amazon OpenSearch Serverless コレクションの VPC エンドポイントの設定の詳細については、「[Access Amazon OpenSearch Serverless using an interface endpoint (AWS PrivateLink)](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-vpc.html)」を参照してください。
+ Amazon OpenSearch Serverless のネットワークアクセスポリシーの詳細については、「[Network access for Amazon OpenSearch Serverless](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-network.html)」を参照してください。

Amazon Bedrock ナレッジベースがプライベート Amazon OpenSearch Serverless コレクションにアクセスできるようにするには、Amazon OpenSearch Serverless コレクションのネットワークアクセスポリシーを編集して、Amazon Bedrock をソースサービスとして許可する必要があります。任意の方法のタブを選択し、その手順に従います。

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

1. [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/) で Amazon OpenSearch Service コンソールを開きます。

1. 左側のナビゲーションペインで **[コレクション]** を選択します。次に、コレクションを選択します。

1. **[ネットワーク]** セクションで、**[関連ポリシー]** を選択します。

1. **[編集]** を選択します。

1. **[ポリシーの定義方法を選択]** で、次のいずれかを実行します。
   + **[ポリシーの定義方法を選択]** を **[ビジュアルエディタ]** のままにして、**[ルール 1]** セクションで以下の設定を行います。

     1. (オプション) **[ルール名]** フィールドに、ネットワークアクセスルールの名前を入力します。

     1. **[次からコレクションにアクセス:]** で、**[プライベート (推奨)]** を選択します。

     1. **[AWS サービスプライベートアクセス]** を選択します。テキストボックスに「**bedrock.amazonaws.com**」と入力します。

     1. **[OpenSearch Dashboards へのアクセスを有効にする]** の選択を解除します。
   + **[JSON]** を選択して、以下のポリシーを **[JSON エディタ]**に貼り付けます。

     ```
     [
         {                                        
             "AllowFromPublic": false,
             "Description":"${network access policy description}",
             "Rules":[
                 {
                     "ResourceType": "collection",
                     "Resource":[
                         "collection/${collection-id}"
                     ]
                 }
             ],
             "SourceServices":[
                 "bedrock.amazonaws.com"
             ]
         }
     ]
     ```

1. **[更新]** を選択します。

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

Amazon OpenSearch Serverless コレクションのネットワークアクセスポリシーを編集するには、次の手順を実行します。

1. [OpenSearch Serverless エンドポイント](https://docs.aws.amazon.com/general/latest/gr/opensearch-service.html#opensearch-service-regions) を使用して [GetSecurityPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_GetSecurityPolicy.html) リクエストを送信します。ポリシーの `name` を指定し、`type` を `network` として指定します。レスポンス内の `policyVersion` を書き留めます。

1. [OpenSearch Serverless エンドポイント](https://docs.aws.amazon.com/general/latest/gr/opensearch-service.html#opensearch-service-regions) を使用して [UpdateSecurityPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_UpdateSecurityPolicy.html) リクエストを送信します。少なくとも、以下のフィールドを指定します。  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/kb-create-security.html)

   ```
   [
       {                                        
           "AllowFromPublic": false,
           "Description":"${network access policy description}",
           "Rules":[
               {
                   "ResourceType": "collection",
                   "Resource":[
                       "collection/${collection-id}"
                   ]
               }
           ],
           "SourceServices":[
               "bedrock.amazonaws.com"
           ]
       }
   ]
   ```

AWS CLI例については、[「データアクセスポリシーの作成 (AWS CLI)](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-data-access.html#serverless-data-access-cli)」を参照してください。

------
+ 「[Creating network policies (console)](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-network.html#serverless-network-console)」の手順に従って、Amazon OpenSearch Service コンソールを使用します。ネットワークポリシーを作成する代わりに、コレクションの詳細の **[ネットワーク]** サブセクションの **[関連付けポリシー]** に注意してください。