「AWSでAIベースの企業検索を設計する方法」
AWSでAIベースの企業検索を設計する方法
今日の現代組織において、適切な情報を適切なタイミングで見つけることは重要な要素です。これにより、膨大な時間と労力を節約するだけでなく、顧客満足度を向上させ、従業員の生産性を高めることができます。しかし、ほとんどの大規模組織では、コンテンツや情報が散在し、適切にインデックス化や整理がされていません。従業員や顧客は、企業のポータルやイントラネットで緊急の情報(製品情報やプロセスフロー、ポリシーなど)を探す際に、関連のないリンクを何時間もブラウズすることがよくあります。人気のあるコンテンツ管理(CMS)ソフトウェアやConfluenceのようなウィキ、SharePointのようなドキュメント管理リポジトリは、完璧なインテリジェントな検索機能を欠いており、キーワードの一致に基づく部分的または全文検索しか使用していません。ユーザーが求めている情報の意味を無視しています。
また、従来の検索では自然言語で質問がされているかどうかを理解することができません。検索エンジンはすべての単語を検索クエリとして扱い、それに基づいてすべてのドキュメントやコンテンツを一致させようとします。例えば、オフィスビル内のITヘルプデスクがどの階にあるかを見つける必要があり、単純に「ITヘルプデスクはどこにありますか?」と検索した場合、一般的なCMSやウィキソフトウェアは、「IT」「ヘルプデスク」「場所」という私の質問のすべての単語に一致するリンクやテキストを表示するかもしれません。これは従業員の生産性、時間、士気を無駄にすることになります。
例えば、衣料品分野の電子商取引小売業者があるとしましょう。フランス語で「chemise noire」という言葉を使って黒いシャツを検索した場合、通常の全文検索ではシステム内で言語の翻訳がされていない場合、何も見つからないでしょう。ユーザーに「結果なし」と表示され、実際にビジネスの損失が発生します。
ソリューションの設計
キーワードマッチングサービスを使用する際に組織が直面している問題を解決するために、AmazonはAmazon Kendraサーバーレスサービスを開発しました。このサービスは機械学習を使用してユーザーが自然言語で質問した文脈と意図を理解し、それに基づいて適切なコンテンツや回答を見つけ、同じ自然言語でユーザーに応答します。
- 「データサイエンスの面接準備にどれくらいの時間を費やすべきか」
- 実験から展開へ:MLflow 101 | パート02
- OpenAIは、GPTBotを導入しましたこれは、インターネット全体からデータを自動的にスクレイピングするために設計されたウェブクローラです
Amazon Kendraには、Salesforce CRM、Sharepoint、Jira/Confluence、S3バケット、ファイルサーバーなど、さまざまなエンタープライズデータソースに迅速に統合するためのデータコネクタが多数用意されています。そのため、任意のコンテンツリポジトリに簡単に接続することができます。
ソースの統合が完了したら、Amazon Kendraコンソールで「インデックス」を作成することができます。このインデックスは、その内容が時間とともに変更されても同期されるようになっています。この同期プロセスにより、Kendraは機械学習を使用してコンテンツを学習し、ランク付けすることができます。
Kendraのインデックス作成が完了し、使用準備ができたら、UIをカスタマイズするか、API統合を介してアクセスすることができます。以下の設計はフローを示しています:
エンタープライズのユースケース
インテリジェントな検索機能を活用できる多くのユースケースがあります。
- ヘルプデスク/コンタクトセンター:ヘルプデスクやコンタクトセンターエージェントは、ナレッジベースが増えるにつれて、内部または外部の顧客を支援する際に正しい手順を特定するためにかなりの時間を費やします。このインテリジェントな検索機能を使用することで、CCエージェントは顧客のクエリに迅速に回答できるようになります。これにより、コール量の時間が削減されるだけでなく、顧客満足度およびエージェントのパフォーマンスも向上します。
- レコメンデーションシステム:AWS Kendraは、FAQシステムと統合することで、顧客がより関与するレコメンデーションプラットフォームの構築にも使用することができます。
- SAASアプリケーションや製品は、MLを活用したインアプ検索を利用することで、ユーザーが迅速に求めている関連する回答を見つけることができます。
- KendraのAPIはQnAボットと統合することができるため、セルフサービスボットやエージェントレスの情報検索を使用してユーザーが迅速に回答を見つけることができるため、コンタクトセンターのコストや待ち時間が減少します。
AWS Kendraの利点
- AWS Kendraを使用することで、複数の構造化および非構造化コンテンツを含むさまざまなデータソースを使用した統一された検索エクスペリエンスを組織全体で迅速に導入および実装することができます。SalesforceやSharePoint、S3バケット、DBからデータを取り込むためのデータコネクタがほぼすべて備わっているため、開発の労力は非常に少なくて済みます。
- Kendraは、自然言語処理(NLP)を使用して機械学習(ML)技術を利用して高度な正確な回答を得ることができますが、それは組織内で機械学習の専門知識を持っている必要があることを意味するものではありません。それにもかかわらず、ユーザーに同様の機能を提供することができます。
- Kendraでは、メタデータ属性、ユーザーの行動、新鮮さを使用して検索結果を微調整することができます。
- AWS Kendraは、文書のランキングと機械学習に基づいてコンテンツを取り込んだ後、外部のFAQを統合することをサポートしており、ユーザーを引き込むことができます。
デモ
Kendraを使用してソリューションを設計するための非常に基本的な手順は次のとおりです:
- インデックスの作成
- Kendraの利用可能なマルチチャネルデータコネクタを使用して必要なデータソースを統合する
- 組み込みのUIを使用するか、独自のUIと統合するためにREST APIを使用してデプロイおよびテストを行う
Amazon Kendraには、Amazon RDSデータベース、S3、Jira/Confluence、SalesForce CRM、ServiceNow、Slack、Google Drive、Microsoft OneDrive、およびMicrosoft SharePoint用の複数のデータコネクタがあり、PDF、HTML、CSVなどほとんどの一般的な形式のデータを抽出および利用することができます。以下のセクションでは、各ステップの詳細について詳しく説明します。
1. インデックスの作成
AWSコンソールにログインし、AWS Kendraが利用可能なサポートされているリージョンにリージョンを変更します。検索バーからAWS Kendraを起動します。以下のスクリーンショットに示すように、インデックスを作成をクリックして詳細を入力します。ここでは任意の名前を使用することができます。
実験に複数のドキュメントを使用するため、”開発者エディション”を選択しました。
作成ボタンをクリックすると、AWSはインデックスが作成されたAWS Kendraインスタンスをプロビジョニングします。
2. データの取り込みを統合する
S3バケットをデータソースとして統合する前に、まずS3バケットを作成する必要があります。バケットが作成されたら、任意のPDFファイルをアップロードすることができます。私はProject Gutenburgから2冊のアメリカの歴史の電子書籍(第2巻と第3巻)をダウンロードし、バケットにアップロードしました。
すべてのファイルをアップロードしたら、S3サービスのプロパティタブに移動してARNをコピーします。
AWS Kendraサービスに移動し、以前に作成したインデックスを選択します。データソースに接続するための「データソースの追加」オプションが表示されます。S3バケットに接続するためにAmazon S3コネクタを使用する必要があります。
データソースに任意の名前を指定することができますが、簡単のためにs3-pdf-docsを使用しています。
データソースのために新しいIAMロールを作成します。
同期セクションでは、同期元のS3バケットを参照し、頻度はオンデマンドに設定します。
次に表示されるデフォルトのオプションを選択し、「データソースの追加」ボタンをクリックして同期プロセスを開始します。
3. 同期プロセスをソースから同期する
データソースがアクティブになったら、同期プロセスを開始してS3バケットからKendraのインデックスにPDFテキストデータをロードする必要があります。
同期プロセスが開始されると、履歴セクションで「進行中」の状態で表示されます。
4. データの取り込みを検証する
同期プロセスが完了すると、ドキュメント数が表示され、新しいドキュメントが追加およびインデックス化されたことが確認されます。
ドキュメントが取り込まれたら、「インデックス化されたコンテンツを検索」をクリックして検索を検証します。
5. コンソールでAWS Kendraのデフォルト検索をテストする
以下に示すキーワードを使用して検索し、結果がすぐに取得されました。結果は正しく取得されませんでしたが、ドキュメントから抜粋を取得することができました。
Kendraには多くの組み込み機能が付属しており、結果を微調整できるようになっており、他のUIで接続および使用するためのAPIおよびSDKを公開しています。
実験が終了したら、インデックスを削除することを忘れないでください。そうしないと、将来的にいくらかのコストがかかる可能性があります。
結論
上記のガイドに示されているように、プロプライエタリなエンタープライズデータとドキュメントに基づいた完全な機械学習ベースのカスタムエンタープライズ検索を構築することは非常に簡単であり、スケーラブルであり、要件に合わせて結果をカスタマイズするための使いやすい機能を提供します。 Amazon KendraはAPIを提供しており、任意のシングルページアプリケーションやQnAボットと組み合わせて使用することができ、より高い柔軟性を提供します。最も優れた機能は、Kendraが多くのデータコネクタを備えているため、あらゆる種類のエンタープライズデータソースとシームレスに統合できることであり、そのために追加の努力をする必要がありません。
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles