

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

# チュートリアル: Amazon Kendra を使用したメタデータに富んだインテリジェントな検索ソリューションの構築
<a name="tutorial-search-metadata"></a>

このチュートリアルでは、[Amazon Kendra](https://aws.amazon.com/kendra/)、[Amazon Comprehend](https://aws.amazon.com/comprehend/)、[Amazon Simple Storage Service](https://aws.amazon.com/s3/)(S3)、[AWS CloudShell](https://aws.amazon.com/cloudshell/) を使用して、エンタープライズデータ向けのメタデータに富んだ自然言語ベースのインテリジェント検索ソリューションを構築する方法を説明します。

Amazon Kendra は、非構造化自然言語データリポジトリの検索インデックスを構築できるインテリジェントな検索サービスです。お客様が関連する回答を簡単に検索してフィルタリングできるようにするには、Amazon Comprehend を使用してデータからメタデータを抽出し、Amazon Kendra 検索インデックスに取り込みます。

Amazon Comprehend は、エンティティを識別できる自然言語処理 (NLP) サービスです。エンティティは、データ内の人、場所、位置、組織、およびオブジェクトのリファレンスです。

このチュートリアルでは、ニュース記事のサンプルデータセットを使用して、エンティティを抽出し、メタデータに変換し、Amazon Kendra インデックスに取り込んで検索を実行します。追加されたメタデータを使用すると、これらのエンティティのサブセットを使用して検索結果をフィルタリングでき、検索の精度が向上します。このチュートリアルに従うことで、専門的な機械学習知識がなくても、エンタープライズデータの検索ソリューションを作成する方法を学習します。

**このチュートリアルでは、以下のステップで検索ソリューションを構築する方法を示します。**

1. Amazon S3 にニュース記事のサンプルデータセットを保存する。

1. Amazon Comprehend を使用してデータからエンティティを抽出します。

1. Python 3 スクリプトを実行してエンティティを Amazon Kendra インデックスメタデータ形式に変換し、このメタデータを S3 に保存します。

1. Amazon Kendra 検索インデックスを作成し、データとメタデータを取り込みます。

1. 検索インデックスのクエリ｡

**以下の図に、このワークフローを示しています。**

![\[チュートリアルの手順のワークフロー図。\]](http://docs.aws.amazon.com/ja_jp/kendra/latest/dg/images/tutorial-workflow.png)


**このチュートリアルを完了する予定時間:** 1 時間

**推定コスト:** このチュートリアルの一部のアクションでは、 AWS アカウントに料金が発生します。各サービスのコストの詳細については、[Amazon S3](https://aws.amazon.com/s3/pricing/)、[Amazon Comprehend](https://aws.amazon.com/comprehend/pricing/)、[AWS CloudShell](https://aws.amazon.com/cloudshell/pricing/)、および [Amazon Kendra](https://aws.amazon.com/kendra/pricing/) の料金ページを参照してください。

**Topics**
+ [前提条件](#tutorial-search-metadata-prereqs)
+ [ステップ 1: Amazon S3 にドキュメントを追加する](tutorial-search-metadata-add-documents.md)
+ [ステップ 2: Amazon Comprehend でエンティティ分析ジョブを実行する](tutorial-search-metadata-entities-analysis.md)
+ [ステップ 3: エンティティ分析出力を Amazon Kendra メタデータとして書式設定する](tutorial-search-metadata-format-output.md)
+ [ステップ 4: Amazon Kendra インデックスを作成し、メタデータを取り込む](tutorial-search-metadata-create-index-ingest.md)
+ [ステップ 5: Amazon Kendra インデックスをクエリする](tutorial-search-metadata-query-kendra.md)
+ [ステップ 6: クリーンアップする](tutorial-search-metadata-cleanup.md)

## 前提条件
<a name="tutorial-search-metadata-prereqs"></a>

このチュートリアルを完了するには、以下のリソースが必要です。
+  AWS アカウント。 AWS アカウントがない場合は、[「Amazon Kendra のセットアップ](https://docs.aws.amazon.com/kendra/latest/dg/setup.html#aws-kendra-set-up-aws-account)」の手順に従って AWS アカウントを設定します。
+  AWS コマネジメントコンソールにアクセスするための、Windows、macOS、および Linux を実行している開発用コンピュータ。詳細については、「 [AWS マネジメントコンソールの設定](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/working-with-console.html)」を参照してください。
+ [AWS Identity and Access Management](https://aws.amazon.com/iam/) (IAM) ユーザー。アカウントの IAM ユーザーとグループをセットアップする方法については、*IAM ユーザーガイド*の[開始方法](https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-started.html)セクションを参照してください。

  を使用している場合は AWS Command Line Interface、次のポリシーを IAM ユーザーにアタッチして、このチュートリアルを完了するために必要な基本的なアクセス許可を付与する必要があります。

  

  

### (AWS CLI のみ) IAM アクセス許可ポリシー
<a name="permissions-policy"></a>

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

****  

  ```
  {
    "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 ポリシーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)および[IAM アイデンティティアクセス許可の追加と削除](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html)を参照してください。
+ [AWS リージョンサービスリスト](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/)。レイテンシーを減らすには、Amazon Comprehend と Amazon Kendra の両方でサポートされている地理的な場所に最も近い AWS リージョンを選択する必要があります。
+ (オプション) [AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)。このチュートリアルでは暗号化を使用しませんが、特定のユースケースで暗号化のベストプラクティスを使用することをお勧めします。
+ (オプション) [Amazon Virtual Private Cloud](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html)。このチュートリアルでは VPC を使用しませんが、VPC のベストプラクティスを使用して特定のユースケースでデータセキュリティを確保することをお勧めします。