步驟 2:在亞馬遜上執行實體分析任務 - Amazon Kendra

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

步驟 2:在亞馬遜上執行實體分析任務

將範例資料集儲存在 S3 儲存貯體之後,您可以執行 Amazon Comprehend 實體分析任務,以從文件中擷取實體。這些實體將形成 Amazon Kendra 自訂屬性,並協助您篩選索引上的搜尋結果。如需詳細資訊,請參閱偵測實體

執行亞馬遜理解實體分析任務

若要從資料集擷取實體,請執行 Amazon Comprehend 實體分析任務。

如果您在此步驟中使用 AWS CLI,請先為 Amazon Comprehend 建立並附加 AWS IAM 角色和政策,然後執行實體分析任務。若要對範例資料執行實體分析任務,Amazon Comprehend 需要:

  • 將其識別為受信任實體的 AWS Identity and Access Management (IAM) 角色

  • 附加到 AWS IAM 角色的 IAM 政策,授予其存取 S3 儲存貯體的許可

如需詳細資訊,請參閱亞馬遜理解如何與 IAM 和以身分識別為基礎的政策搭配使用。

  1. 在 https://console.aws.amazon.com/comprehend/ 打開亞馬遜領域控制台。

    重要

    確保您位於建立 Amazon S3 儲存貯體的相同區域。如果您位於其他區域,請從頂端導覽列的AWS區域選擇器中選擇您建立 S3 儲存貯體的區域

  2. 選擇啟動亞馬遜理解.

  3. 在左側導覽窗格中,選擇 [分析工作]。

  4. 選擇 Create job (建立任務)。

  5. [工作設定] 區段中,執行下列動作:

    1. 對於 Name (名稱),輸入 data-entities-analysis

    2. 對於分析類型,選擇實體

    3. 選擇「英文」做為「」。

    4. 保持工作加密關閉狀態。

  6. 在「輸入資料」區段中,執行下列操作:

    1. 對於資料來源,選擇我的文件

    2. 對於 S3 位置,請選擇瀏覽 S3

    3. 對於「選擇資源」,請從值區清單中按一下值區的名稱。

    4. 對於「物件」,請選取選項按鈕,data然後選擇「選」。

    5. 在「輸入格式」中,選擇「每個檔案一個文件」

  7. 在「輸出資料」區段中,執行下列操作:

    1. 對於 S3 位置,請選擇瀏覽 S3,然後從儲存貯體清單中選取儲存貯體的選項方塊,然後選擇 [選]。

    2. 保持加密關閉狀態。

  8. 在「存取權限」區段中,執行下列動作:

    1. 對於 IAM 角色,請選擇建立 IAM 角色

    2. 對於存取權限,請選擇輸入和輸出 S3 儲存貯體。

    3. 對於「名稱尾碼」,輸入comprehend-role。此角色可讓您存取 Amazon S3 儲存貯體。

  9. 保留預設的 VPC 設定

  10. 選擇 Create job (建立任務)。

  1. 若要為 Amazon Comprehend 建立並附加將其識別為受信任實體的 IAM 角色,請執行以下操作:

    1. 將下列信任原則儲存為本機裝置上文字編輯器comprehend-trust-policy.json中呼叫的 JSON 檔案。

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "comprehend.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
    2. 若要建立名為的 IAM 角色,comprehend-role並將儲存的comprehend-trust-policy.json檔案附加至該角色,請使用 create- role 命令:

      Linux
      aws iam create-role \ --role-name comprehend-role \ --assume-role-policy-document file://path/comprehend-trust-policy.json

      其中:

      • path/ 是本地設備comprehend-trust-policy.json上的文件路徑。

      macOS
      aws iam create-role \ --role-name comprehend-role \ --assume-role-policy-document file://path/comprehend-trust-policy.json

      其中:

      • path/ 是本地設備comprehend-trust-policy.json上的文件路徑。

      Windows
      aws iam create-role ^ --role-name comprehend-role ^ --assume-role-policy-document file://path/comprehend-trust-policy.json

      其中:

      • path/ 是本地設備comprehend-trust-policy.json上的文件路徑。

    3. 將 Amazon 資源名稱 (ARN) 複製到您的文字編輯器,並將其儲存為comprehend-role-arn本機。

      注意

      ARN 的格式類似於 arn: aw: IAM:: 123456789012: 角色/理解角色。您需要儲存的 ARN,才comprehend-role-arn能執行亞馬遜分析任務。

  2. 若要建立 IAM 政策並將其附加到 IAM 角色,以授予其存取 S3 儲存貯體的權限,請執行以下操作:

    1. 將下列信任原則儲存為本機裝置上文字編輯器comprehend-S3-access-policy.json中呼叫的 JSON 檔案。

      { "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" ], "Effect": "Allow" }, { "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET" ], "Effect": "Allow" }, { "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" ], "Effect": "Allow" } ] }
    2. 若要建立呼叫comprehend-S3-access-policy以存取 S3 儲存貯體的 IAM 政策,請使用建政策命令:

      Linux
      aws iam create-policy \ --policy-name comprehend-S3-access-policy \ --policy-document file://path/comprehend-S3-access-policy.json

      其中:

      • path/ 是本地設備comprehend-S3-access-policy.json上的文件路徑。

      macOS
      aws iam create-policy \ --policy-name comprehend-S3-access-policy \ --policy-document file://path/comprehend-S3-access-policy.json

      其中:

      • path/ 是本地設備comprehend-S3-access-policy.json上的文件路徑。

      Windows
      aws iam create-policy ^ --policy-name comprehend-S3-access-policy ^ --policy-document file://path/comprehend-S3-access-policy.json

      其中:

      • path/ 是本地設備comprehend-S3-access-policy.json上的文件路徑。

    3. 將 Amazon 資源名稱 (ARN) 複製到您的文字編輯器,並將其儲存為comprehend-S3-access-arn本機。

      注意

      ARN 的格式類似於 ARN: aw: IAM:: 123456789012:角色/理解-S3-訪問策略。您需要另存的 ARN 才comprehend-S3-access-arn能將其附加comprehend-S3-access-policy到 IAM 角色。

    4. 若要附加comprehend-S3-access-policy到您的 IAM 角色,請使用以下attach-role-policy命令:

      Linux
      aws iam attach-role-policy \ --policy-arn policy-arn \ --role-name comprehend-role

      其中:

      • 策略 arn 是您另存為的 ARN。comprehend-S3-access-arn

      macOS
      aws iam attach-role-policy \ --policy-arn policy-arn \ --role-name comprehend-role

      其中:

      • 策略 arn 是您另存為的 ARN。comprehend-S3-access-arn

      Windows
      aws iam attach-role-policy ^ --policy-arn policy-arn ^ --role-name comprehend-role

      其中:

      • 策略 arn 是您另存為的 ARN。comprehend-S3-access-arn

  3. 若要執行 Amazon 理解實體分析任務,請使用以下start-entities-detection-job命令:

    Linux
    aws comprehend start-entities-detection-job \ --input-data-config S3Uri=s3://DOC-EXAMPLE-BUCKET/data/,InputFormat=ONE_DOC_PER_FILE \ --output-data-config S3Uri=s3://DOC-EXAMPLE-BUCKET/ \ --data-access-role-arn role-arn \ --job-name data-entities-analysis \ --language-code en \ --region aws-region

    其中:

    • 文檔示例桶是您的 S3 存儲桶的名稱,

    • 角色 arn 是您另存為的 ARN,comprehend-role-arn

    • AWS 區域是您的AWS地區

    macOS
    aws comprehend start-entities-detection-job \ --input-data-config S3Uri=s3://DOC-EXAMPLE-BUCKET/data/,InputFormat=ONE_DOC_PER_FILE \ --output-data-config S3Uri=s3://DOC-EXAMPLE-BUCKET/ \ --data-access-role-arn role-arn \ --job-name data-entities-analysis \ --language-code en \ --region aws-region

    其中:

    • 文檔示例桶是您的 S3 存儲桶的名稱,

    • 角色 arn 是您另存為的 ARN,comprehend-role-arn

    • AWS 區域是您的AWS地區

    Windows
    aws comprehend start-entities-detection-job ^ --input-data-config S3Uri=s3://DOC-EXAMPLE-BUCKET/data/,InputFormat=ONE_DOC_PER_FILE ^ --output-data-config S3Uri=s3://DOC-EXAMPLE-BUCKET/ ^ --data-access-role-arn role-arn ^ --job-name data-entities-analysis ^ --language-code en ^ --region aws-region

    其中:

    • 文檔示例桶是您的 S3 存儲桶的名稱,

    • 角色 arn 是您另存為的 ARN,comprehend-role-arn

    • AWS 區域是您的AWS地區

  4. 複製實體分析JobId並將其保存在文本編輯器中comprehend-job-id。可JobId協助您追蹤實體分析工作的狀態。

  5. 若要追蹤實體分析工作的進度,請使用以下describe-entities-detection-job指令:

    Linux
    aws comprehend describe-entities-detection-job \ --job-id entities-job-id \ --region aws-region

    其中:

    • entities-job-id是你的保存comprehend-job-id

    • AWS 區域是您的AWS地區

    macOS
    aws comprehend describe-entities-detection-job \ --job-id entities-job-id \ --region aws-region

    其中:

    • entities-job-id是你的保存comprehend-job-id

    • AWS 區域是您的AWS地區

    Windows
    aws comprehend describe-entities-detection-job ^ --job-id entities-job-id ^ --region aws-region

    其中:

    • entities-job-id是你的保存comprehend-job-id

    • AWS 區域是您的AWS地區

變更為可能需JobStatus要幾分鐘的時間COMPLETED

在此步驟結束時,Amazon Comprehend 會將實體分析結果作為壓縮output.tar.gz檔案存放在 S3 儲存貯體的自動產生output資料夾中的資料夾內。在進行下一個步驟之前,請確保分析工作狀態已完成。