Amazon KendraでPowerPoint, Excel, Wordファイルの全文検索を試してみた

2023.04.07

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Amazon Kendra で Microsoft PowerPoint, Excel, Word ファイル内の文字を検索する全文検索を試してみました。

Amazon Kendra は次ファイル形式に対応してり、Excel ファイルの検索は既にブログになっています。

  • HTML files
  • Microsoft PowerPoint (PPT) presentations
  • MS WORD documents
  • Plain text documents
  • PDFs
  • Comma Separated Values (CSV) files
  • Microsoft Excel (MS EXCEL) files
  • XML files
  • JSON files
  • Markdown Documentation (MD) files
  • Rich Text Format (RTF) files
  • Extensible Stylesheet Language Transformation (XSLT) files

(引用元)Types of documents - Amazon Kendra

試してみた

ChatGPT で検索テスト用のデータを作成してから Amazon Kendra を試してみます。


テストデータの作成

テストデータは ChatGPT に作成をお願いしました。

PowerPoint 向けのテストデータ

下記の出力をスライドのタイトルと本文に転記しました。すべてのデータに共通する文字列を含めたかったので表紙のタイトルを「Amazon Kendra テストデータ」としました。

Excel 向けのテストデータ

下記の出力を基に Excel ファイルを作成しました。すべてのデータに共通する文字列を含めたかったので 1 行目には「Amazon Kendra テストデータ」と記載して、3 行目から ChatGPT の出力データを貼り付けました。ChatGPT の出力を範囲選択でコピーして Excel に貼り付けても問題なくペーストできました。

Word 向けのテストデータ

下記の出力を Word に貼り付けました。これまで同様に、すべてのデータに共通する文字列を含めたかったので 1 行目には「Amazon Kendra テストデータ」と記載して、3 行目から ChatGPT の出力データを貼り付けました。

テストデータを S3 に格納

作成したテストデータは Kendra から参照するために S3 に格納して準備完了です。

Amazon Kendra の設定

Amazon Kendra の全文検索を試すための設定をしていきます。

はじめにインデックスを作成します。

インデックス名や利用する IAM ロールを指定します。IAM ロールは新規作成しています。

テスト目的なので、アクセスコントロールや AWS IAM Identity Center との連携はせずに進めます。

テスト目的のためDeveloper editionを指定してCreateします。

あとはインデックスのデプロイ完了まで待ちます。


インデックス作成後は、次にデータコネクタを作成します。データコネクタはテストファイルを格納している S3 に接続できるAmazon S3 connecterを選択します。画面上部にも S3 の画像のコネクタがありますが、こちらはサンプルデータとの接続となるため間違えないように注意が必要です。

コネクタ名と言語を指定します。

利用する IAM ロールを指定します。今回は新規作成します。

データを同期する S3 バケットとして、先ほどテストデータを格納してバケットを指定します。同期するタイミングも設定できます。定期的な同期ができますが、今回はテスト目的であり、データ更新もないのでRun on demandを選択して、後ほど手動で 1 度だけ同期します。

今回はオプション設定は飛ばします。

最後に確認画面で問題なければ作成して完了です。


データソース作成後は、S3 のデータと同期します。オンデマンドで同期する設定としていたのでSync Nowで明示的に同期します。

同期が完了するまで待ちます。

同期後の画面です。Status はComplatedになっており、 3 つのファイルが Add されていることが分かります。なお、同期に失敗したファイルがある場合は Details から CloudWatch に移動して詳細を確認することもできます。

全文検索

準備ができたため「Search indexed content」メニューから検索を試してみます。

検索前に Settings から言語を日本語Japanese (ja)に変更します。

検索してみます。

始めに全てのテストファイルの冒頭に記載した「Amazon Kendra テストデータ」を確認するためにKendraで検索してみます。3 つのテストファイルすべてが結果に表示されています。

PowerPoint ファイルに記載されたOpenAIを検索してみます。想定通り、PowerPoint ファイルのみの検索結果です。

Excel ファイルに記載されたおにぎりを検索してみます。想定通り、Excel ファイルのみの検索結果です。

最後に、Word ファイルに記載されたサーバーを検索してみます。想定通り、Word ファイルのみの検索結果です。

以上で検索のお試しは終わりです。

さいごに

Amazon Kendra で Microsoft PowerPoint, Excel, Word ファイル内の文字を検索できると知ったため試してみました。簡単な設定で検索できたので便利でした。

以上、このブログがどなたかのご参考になれば幸いです。