Amazon Bedrock ナレッジベースの Confluence に接続する - Amazon Bedrock

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

Amazon Bedrock ナレッジベースの Confluence に接続する

Atlassian Confluence は、プロジェクト計画、ソフトウェア開発、製品管理の共有、保存、作業を目的とした共同作業管理ツールです。Amazon Bedrock ナレッジベースの Confluence インスタンスに接続するには、AWS Amazon Bedrock の マネジメントコンソールまたは を使用します (「Amazon Bedrock がサポートする SDKsおよび AWS CLI」を参照)。 CreateDataSource API

注記

Confluence データソースコネクタはプレビューリリースの段階であり、変更される可能性があります。

Confluence データソースは、テーブル、グラフ、図、その他のイメージなどのマルチモーダルデータをサポートしていません。

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

クロールできるファイル数とファイルあたりの MB に制限があります。「Quotas for knowledge bases」を参照してください。

サポートされている機能

  • メインドキュメントフィールドの自動検出

  • 包含/除外コンテンツフィルター

  • 追加、更新、削除されたコンテンツの増分同期

  • OAuth 2.0 認証、Confluence APIトークンによる認証

前提条件

Confluence で以下を確認してください。

  • Confluence インスタンス を書き留めますURL。例えば、Confluence Cloud の場合は、https://example.atlassian.net。Confluence Cloud URLの はURL、 で終わる基本 である必要があります.atlassian.net

  • Amazon Bedrock が Confluence Cloud インスタンスに接続できるように、ユーザー名 (管理者アカウントの E メール) とパスワード (Confluence APIトークン) を含む基本的な認証情報を設定します。Confluence APIトークンを作成する方法については、Atlassian ウェブサイトの「Atlassian アカウントのAPIトークンを管理する」を参照してください。

  • (オプション) アプリケーションキーOAuth、アプリケーションシークレット、アクセストークン、更新トークンの認証情報を使用して 2.0 アプリケーションを設定します。詳細については、Atlassian ウェブサイトのOAuth「2.0 アプリ」を参照してください。

  • 2.0 OAuth アプリが Confluence に接続するには、特定の読み取りアクセス許可またはスコープを有効にする必要があります。

    ConfluenceAPI:

    • offline_access

    • 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 シークレットに保存し、シークレットの Amazon リソースネーム (ARN) を書き留めます。このページの接続設定手順に従って、必要なキーと値のペアをシークレットに含めます。

  • ナレッジベースの AWS Identity and Access Management (IAM) ロール/アクセス許可ポリシーに、データソースに接続するために必要なアクセス許可を含めます。このデータソースがナレッジベース IAM ロールに追加するために必要なアクセス許可については、「データソースへのアクセス許可」を参照してください。

注記

コンソールを使用する場合は、 に移動 AWS Secrets Manager してシークレットを追加するか、データソース設定ステップの一部として既存のシークレットを使用できます。ナレッジベースを作成するためのコンソールステップの一部として、必要なすべてのアクセス許可を持つ IAM ロールを作成できます。データソースおよびその他の設定を行うと、必要なすべてのアクセス許可を持つ IAM ロールが特定のナレッジベースに適用されます。

認証情報とシークレットは、定期的に更新またはローテーションすることをお勧めします。セキュリティに必要なアクセスレベルのみを提供してください。データソース間で認証情報とシークレットを再利用することはお勧めしません。

接続設定

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

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

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

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

重要

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

メタデータフィールドにフィルタリング演算子を適用して、レスポンスの関連性をさらに高めることができます。例えば、ドキュメントの「epoch_modification_time」は、ドキュメントの最終更新日を 1970 年 1 月 1 日からの経過秒数で表します。「epoch_modification_time」にフィルターを適用して、その値が特定の数より大きい最新のデータだけを取得できます。メタデータフィールドに適用できるフィルタリング演算子の詳細については、「メタデータとフィルタリング」を参照してください。

特定のコンテンツのクロールを含めることも除外することもできます。例えば、特定のコンテンツエンティティまたはコンテンツタイプを含める除外prefix/regular expression pattern to skip crawling any file that contains “private” in the file name. You could also specify an inclusion prefix/regular式パターンを指定できます。包含フィルターと除外フィルターを指定し、両方がドキュメントに一致する場合、除外フィルターが優先され、ドキュメントはクロールされません。

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

包含/除外フィルターは、次のコンテンツタイプに適用できます。

  • Space: 一意のスペースキー

  • Page: メインページのタイトル

  • Blog: メインブログのタイトル

  • Comment: 特定のページまたはブログに属するコメント。Re: Page/Blog Title を指定する

  • Attachment: 拡張子付きの添付ファイル名

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

データソースをナレッジベースと同期するには、 を使用するStartIngestionJobAPIか、コンソールでナレッジベースを選択し、データソースの概要セクションで Sync を選択します。

重要

データソースから同期するすべてのデータは、データを取得する bedrock:Retrieve アクセス許可を持つすべてのユーザーが利用できるようになります。これには、データソースのアクセス許可が制御されているデータを含めることもできます。詳細については、「Knowledge base permissions」を参照してください。

(基本認証を使用する場合) AWS Secrets Manager の認証情報には、次のキーと値のペアを含める必要があります。

  • username: admin user email address of Atlassian account

  • password: Confluence API token

(2.0 OAuth 認証を使用する場合) のシークレット認証情報には、次のキーと値のペアが含まれている AWS Secrets Manager 必要があります。

  • confluenceAppKey: app key

  • confluenceAppSecret: app secret

  • confluenceAccessToken: app access token

  • confluenceRefreshToken: app refresh token

注記

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

注記

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

Console
Confluence インスタンスをナレッジベースに接続する
  1. のステップに従いAmazon Bedrock ナレッジベースでナレッジベースを作成する、データソースとして Confluence を選択します。

  2. データソースの名前とオプションの説明を入力します。

  3. Confluence インスタンス を指定しますURL。例えば、Confluence Cloud の場合は、https://example.atlassian.net。Confluence Cloud URLの はURL、 で終わる基本 である必要があります.atlassian.net

  4. 詳細設定セクションでは、オプションで以下を設定できます。

    • KMS 一時データストレージの キー。– データをデフォルト AWS マネージドキー キーまたは独自のKMSキーで埋め込みに変換しながら、一時的なデータを暗号化できます。詳細については、「データインジェスト時の一時データストレージの暗号化」を参照してください。

    • データ削除ポリシー – デフォルトでベクトルストアに保存されているデータソースのベクトル埋め込みを削除するか、ベクトルストアデータを保持することを選択できます。

  5. Confluence インスタンスに接続するための認証情報を入力します。

    • 基本的な認証については、 に移動 AWS Secrets Manager してシークレット認証情報を追加するか、作成したシークレットに既存の Amazon リソースネーム (ARN) を使用します。シークレットには、ユーザー名として Atlassian アカウントの管理者ユーザーの E メールアドレスと、パスワードの代わりに Confluence APIトークンが含まれている必要があります。Confluence APIトークンを作成する方法については、Atlassian ウェブサイトの「Atlassian アカウントのAPIトークンを管理する」を参照してください。

    • OAuth 2.0 認証の場合は、 に移動 AWS Secrets Manager してシークレット認証情報を追加するか、作成したシークレットに既存の Amazon リソースネーム (ARN) を使用します。シークレットには、Confluence アプリケーションキー、アプリケーションシークレット、アクセストークン、および更新トークンが含まれている必要があります。詳細については、Atlassian ウェブサイトのOAuth「2.0 アプリ」を参照してください。

  6. (オプション) コンテンツの解析とチャンクセクションで、データの解析とチャンクの方法をカスタマイズできます。これらのカスタマイズの詳細については、以下のリソースを参照してください。

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

  8. 埋め込みモデルとベクトルストアの選択を続行します。残りのステップを確認するには、 に戻りAmazon Bedrock ナレッジベースでナレッジベースを作成する、データソースを接続した後、ステップから続行します。

API

以下は、Amazon Bedrock ナレッジベースの Confluence Cloud に接続するための設定の例です。または Python などの AWS CLI サポートされている APIでSDK、 を使用してデータソースを設定します。を呼び出した後CreateKnowledgeBaseCreateDataSourceを呼び出して、 の接続情報を使用してデータソースを作成しますdataSourceConfiguration

オプションの vectorIngestionConfigurationフィールドを含めることで取り込みに適用できるカスタマイズについては、「」を参照してくださいデータソースの取り込みをカスタマイズする

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" }