本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
教學課程:使用 Amazon Kendra 建置中繼資料豐富的智慧型搜尋解決方案
本教學課程說明如何使用 Amazon Kendra
Amazon Kendra 是一種智慧型搜尋服務,可為您的非結構化自然語言資料儲存庫建立搜尋索引。為了讓您的客戶更輕鬆地尋找和篩選相關答案,您可以使用 Amazon Comprehend 從您的資料擷取中繼資料,並將其擷取到您的 Amazon Kendra 搜尋索引。
Amazon Comprehend 是一種可以識別實體的自然語言處理 (NLP) 服務。實體是對資料中人員、位置、位置、組織和物件的參考。
本教學課程使用新聞文章的範例資料集來擷取實體、將其轉換為中繼資料,並將它們擷取至您的 Amazon Kendra 索引來執行搜尋。新增的中繼資料可讓您使用這些實體的任何子集篩選搜尋結果,並改善搜尋準確性。遵循本教學課程,您將了解如何為企業資料建立搜尋解決方案,而不需要任何特殊的機器學習知識。
本教學課程說明如何使用下列步驟建置您的搜尋解決方案:
-
在 Amazon S3 中存放新聞文章的範例資料集。
-
使用 Amazon Comprehend 從您的資料擷取實體。
-
執行 Python 3 指令碼,將實體轉換為 Amazon Kendra 索引中繼資料格式,並將此中繼資料儲存在 S3 中。
-
建立 Amazon Kendra 搜尋索引並擷取資料和中繼資料。
-
查詢搜尋索引。
下圖顯示工作流程:

完成本教學課程的預估時間:1 小時
預估成本:本教學課程中的一些動作會在您的帳戶產生費用 AWS 。如需各項服務成本的詳細資訊,請參閱 Amazon S3
主題
先決條件
若要完成本教學課程,您需要下列資源:
-
AWS 帳戶。如果您沒有 AWS 帳戶,請依照設定 Amazon Kendra 中的步驟來設定 AWS 您的帳戶。
-
執行 Windows、macOS 或 Linux 的 AWS 開發電腦,用於存取 管理主控台。如需詳細資訊,請參閱設定 AWS 管理主控台。
-
AWS Identity and Access Management
(IAM) 使用者。若要了解如何為您的帳戶設定 IAM 使用者和群組,請參閱 IAM 使用者指南中的入門一節。 如果您使用的是 AWS Command Line Interface,則還需要將下列政策連接至您的 IAM 使用者,以授予其完成本教學課程所需的基本許可。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:DeletePolicy", "iam:CreateRole", "iam:AttachRolePolicy", "iam:DetachRolePolicy", "iam:AttachUserPolicy", "iam:DeleteRole", "iam:CreatePolicy", "iam:GetRolePolicy", "s3:CreateBucket", "s3:ListBucket", "s3:DeleteObject", "s3:DeleteBucket", "s3:PutObject", "s3:GetObject", "s3:ListAllMyBuckets", "comprehend:StartEntitiesDetectionJob", "comprehend:BatchDetectEntities", "comprehend:ListEntitiesDetectionJobs", "comprehend:DescribeEntitiesDetectionJob", "comprehend:StopEntitiesDetectionJob", "comprehend:DetectEntities", "kendra:Query", "kendra:StopDataSourceSyncJob", "kendra:CreateDataSource", "kendra:BatchPutDocument", "kendra:DeleteIndex", "kendra:StartDataSourceSyncJob", "kendra:CreateIndex", "kendra:ListDataSources", "kendra:UpdateIndex", "kendra:DescribeIndex", "kendra:DeleteDataSource", "kendra:ListIndices", "kendra:ListDataSourceSyncJobs", "kendra:DescribeDataSource", "kendra:BatchDeleteDocument" ], "Resource": "*" }, { "Sid": "iamPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": [ "s3.amazonaws.com", "comprehend.amazonaws.com", "kendra.amazonaws.com" ] } } } ] }
如需詳細資訊,請參閱建立 IAM 政策以及新增和移除 IAM 身分許可。
-
AWS 區域服務清單
。若要降低延遲,您應該選擇 AWS 最接近 Amazon Comprehend 和 Amazon Kendra 所支援地理位置的區域。 -
(選用) AWS Key Management Service。雖然本教學課程不使用加密,但您可能想要針對特定使用案例使用加密最佳實務。
-
(選用) Amazon Virtual Private Cloud。雖然本教學課程不使用 VPC,但您可能想要使用 VPC 最佳實務來確保特定使用案例的資料安全性。