教學課程:使用 Amazon Kendra 建立豐富中繼資料的智慧型搜尋解決方案 - Amazon Kendra

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

教學課程:使用 Amazon Kendra 建立豐富中繼資料的智慧型搜尋解決方案

本教學說明如何使用 Amazon Kendra、Amazon Comprehend、亞馬遜簡單儲存服務 (S3) 和,為企業資料建立豐富中繼資料的自然語言智慧搜尋解決方案。AWS CloudShell

Amazon Kendra 是一種智慧型搜尋服務,可為您的非結構化自然語言資料儲存庫建立搜尋索引。為了讓您的客戶更容易找到並篩選相關答案,您可以使用 Amazon Comprehend 從資料擷取中繼資料,並將其導入 Amazon Kendra 搜尋索引中。

亞馬遜理解是一種自然語言處理 (NLP) 服務,可以識別實體。實體是資料中人員、場所、位置、組織和物件的參照。

本教學課程使用新聞文章的範例資料集擷取實體、將其轉換為中繼資料,並將其導入 Amazon Kendra 索引中,以便在其上執行搜尋。新增的中繼資料可讓您使用這些實體的任何子集篩選搜尋結果,並提高搜尋準確性。按照本教程,您將學習如何在沒有任何專門的機器學習知識的情況下為您的企業數據創建搜索解決方案。

本教學課程說明如何使用下列步驟建置搜尋解決方案:

  1. 在 Amazon S3 中存放新聞文章的範例資料集。

  2. 使用亞馬遜從您的資料中擷取實體。

  3. 執行 Python 3 指令碼,將實體轉換為 Amazon Kendra 索引中繼資料格式,並將此中繼資料存放在 S3 中。

  4. 建立 Amazon Kendra 搜尋索引,並擷取資料和中繼資料。

  5. 查詢搜尋索引。

下圖顯示工作流程:


      自學課程中程序的工作流程圖。

完成此自學課程的預估時間:1 小時

預估費用:本教學課程中的某些動作會對您的AWS帳戶產生費用。如需每項服務成本的詳細資訊,請參閱亞馬遜 S3、亞馬遜理解和亞馬遜肯德拉的價格頁面。AWS CloudShell

先決條件

若要完成本教學課程,您需要下列資源:

  • 一個 AWS 帳戶。如果您沒有AWS帳戶,請按照設定 Amazon Kendra 中的步驟設定您的AWS帳戶。

  • 執行視窗、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 和亞馬遜肯德拉支援。

  • (選擇性) 一個 AWS Key Management Service. 雖然本教學課程不使用加密,但您可能希望針對特定使用案例使用加密最佳作法。

  • (可選)亞馬遜虛擬私有雲。雖然本教學課程不使用 VPC,但您可能需要使用 VPC 最佳做法來確保特定使用案例的資料安全性。