オープン ソースまたは市販の検索エンジンを使用して、構造化されていないデータ (つまり、wiki、情報 Web サイト、セルフサービス ヘルプ ページ、内部ドキュメントなど) の検索アプリケーションを構築する機会があった場合は、おそらく、関連する検索結果を取得する際に固有の精度の課題に精通しているでしょう。 検索が一致するコンポーネントのキーワードと用語に限定されるため、クエリとドキュメントの両方の意図した意味が失われる可能性があります。 その結果、適切な単語を含む結果が得られても、それらが常にユーザーに関連しているわけではありません。 コンテンツの意味またはセマンティクスとユーザーのクエリの意図との一致に基づいてドキュメントをランク付けできるように、検索エンジンをよりスマートにする必要があります。
アマゾンケンドラ ドキュメントの取り込みを自動化し、多くのデータ ソースのコンテンツに基づいて非常に正確な検索と FAQ の結果を提供する、完全に管理されたインテリジェントな検索サービスを提供します。 Amazon Kendra に移行しておらず、検索結果の品質を向上させたい場合は、既存の検索ソリューションでセルフマネージド OpenSearch に Amazon Kendra Intelligent Ranking を使用できます。
新しいものを紹介できることをうれしく思います 自己管理型 OpenSearch の Amazon Kendra インテリジェントランキング、およびそのコンパニオン プラグインの Opensearch 検索エンジン! OpenSearch インデックスを移行、複製、またはアプリケーションを書き直す必要なく、OpenSearch ドキュメント クエリにインテリジェントなランキングを簡単に追加できるようになりました。 自己管理型 OpenSearch の Amazon Kendra Intelligent Ranking と完全管理型の Amazon Kendra サービスの違いは、前者が検索結果に対して強力なセマンティックの再ランキングを提供するのに対し、後者は追加の検索精度の向上と増分学習、質問などの機能を提供することです。回答、FAQ マッチング、および組み込みのコネクタ。 フルマネージド サービスの詳細については、次の Web サイトをご覧ください。 Amazon Kendra サービスページ.
自己管理型 OpenSearch の Amazon Kendra Intelligent Ranking を使用すると、以前の結果は次のようになります。
クエリ: ホワイトハウスの住所は?
Hit1 (ベスト): 大統領は今日、ホワイトハウスから国民に演説を行った。
ヒット 2: ホワイトハウスの所在地: 1600 Pennsylvania Avenue NW, Washington, DC 20500
このようになります:
クエリ: ホワイトハウスの住所は?
Hit1 (ベスト): ホワイトハウスの所在地: 1600 Pennsylvania Avenue NW, Washington, DC 20500
ヒット 2: 大統領は今日、ホワイトハウスから国民に演説を行った。
この投稿では、自己管理型 OpenSearch で Amazon Kendra Intelligent Ranking を開始する方法を紹介し、この機能のパワーと価値を示す例をいくつか紹介します。
自己管理型 OpenSearch のための Amazon Kendra Intelligent Ranking のコンポーネント
前提条件
このチュートリアルでは、bash ターミナルが必要です Linux, Macまたは Linux用Windowsサブシステム、および AWSアカウント. ヒント: Amazon Cloud9 インスタンスまたは アマゾン エラスティック コンピューティング クラウド (Amazon EC2)インスタンス。
あなたはするであろう:
- システムに Docker がインストールされていない場合は、Docker をインストールします。
- 最新のものをインストールする AWSコマンドラインインターフェイス (AWS CLI) まだインストールされていない場合。
- Amazon Kendra Intelligent Ranking プラグインを有効にして、OpenSearch コンテナを作成して開始します。
- テスト インデックスを作成し、いくつかのサンプル ドキュメントを読み込みます。
- インテリジェントなランキングを使用して、または使用せずにいくつかのクエリを実行し、その違いに適切に感銘を受けてください!
ドッカーをインストールする
Docker の場合 (つまり、 docker
& docker-compose
) が環境にまだインストールされていない場合は、インストールします。 見る Docker を入手する 指示のため。
AWS CLI をインストールする
AWS CLI の最新バージョンをまだインストールしていない場合は、今すぐインストールして設定します (AWS CLI を参照)。 CLI 入門)。 デフォルトの AWS ユーザー資格情報には管理者アクセス権が必要です。または、AWS 管理者に次のポリシーをユーザー権限に追加するよう依頼してください。
Quickstart スクリプトを使用して OpenSearch を作成して開始する
ダウンロード search_processing_kendra_quickstart.sh
スクリプト:
クイックスタート スクリプト:
- AWS アカウントで Amazon Kendra Intelligent Ranking Rescore Execution Plan を作成します。
- OpenSearch とそのダッシュボード用の Docker コンテナーを作成します。
- Kendra Intelligent Ranking Service を使用するように OpenSearch を構成します。
- OpenSearch サービスを開始します。
- サービスを使用するための役立つガイダンスを提供します。
--help
コマンド ライン オプションを表示するオプション:
次に、スクリプトを実行して、Amazon Kendra と OpenSearch のセットアップを自動化します。
それでおしまい! OpenSearch および OpenSearch Dashboard コンテナが稼働中です。
クイックスタート スクリプトからの出力メッセージを読み、便利なスクリプトを実行できるディレクトリをメモします。 docker-compose
コマンド、および cleanup_resources.sh
スクリプト。
テスト クエリを試して、OpenSearch コンテナーに接続できることを確認します。
エラーが発生した場合は注意してください curl(35):OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to localhost:9200
、それは OpenSearch がまだ来ていることを意味します。 OpenSearch の準備が整うまで数分待ってから、もう一度お試しください。
テスト インデックスの作成とサンプル ドキュメントの読み込み
以下のスクリプトは、インデックスの作成とサンプル ドキュメントの読み込みに使用されます。 としてコンピュータに保存します。 バルク_ポスト.sh:
以下のデータ ファイルを名前を付けて保存します。 tinydocs.jsonl:
そして、以下のデータファイルを次のように保存します dstinfo.jsonl:
(このデータは、 サマータイムの記事).
スクリプトを実行可能にします。
今すぐ バルクポスト.sh 以下の XNUMX つのコマンドを実行して、インデックスを作成し、データをロードするスクリプト:
サンプル クエリを実行する
クエリ スクリプトを準備する
OpenSearch クエリは、OpenSearch を使用して JSON で定義されます。 クエリ ドメイン固有言語 (DSL)。 この投稿では、 Linuxカール コマンドを使用して、HTTPS を使用してローカルの OpenSearch サーバーにクエリを送信します。
これを簡単にするために、クエリ DSL を作成して OpenSearch に送信する XNUMX つの小さなスクリプトを定義しました。
最初のスクリプトは、XNUMX つのドキュメント フィールドに対して通常の OpenSearch テキスト マッチ クエリを作成します。 タイトル & ボディ. 詳細については、OpenSearch のドキュメントを参照してください。 複数一致クエリ構文. クエリは非常に単純にしていますが、後で別の種類のクエリを定義して試すことができます。
以下のスクリプトを名前を付けて保存します query_nokendra.sh:
XNUMX 番目のスクリプトは最初のスクリプトと似ていますが、今回はクエリ拡張機能を追加して、Amazon Kendra Intelligent Ranking サービスを使用して元の結果を再ランク付けするための後処理ステップとして Amazon Kendra Intelligent Ranking プラグインを呼び出すように OpenSearch に指示します。
size
プロパティは、再ランキングのために Kendra に送信される OpenSearch 結果ドキュメントの数を決定します。 ここでは、再ランキングのために最大 20 件の結果を指定します。 XNUMXつのプロパティ、 title_field
(オプション) および body_field
(必須)、インテリジェントなランキングに使用されるドキュメント フィールドを指定します。
以下のスクリプトを名前を付けて保存します クエリ_ケンドラ.sh:
両方のスクリプトを実行可能にします。
初期クエリを実行する
上の簡単なクエリから始めます タイニードックス インデックス、投稿の紹介で使用された例を再現します。
query_nokendra.sh
ホワイトハウスの住所を検索するスクリプト:
以下に示す結果が表示されます。 OpenSearch テキスト一致クエリによって割り当てられたスコアによってランク付けされた XNUMX つの結果の順序を確認します。 上位のスコア結果にはキーワードが含まれていますが、 住所 & ホワイトハウス、意味が質問の意図と一致しないことは明らかです。 キーワードは一致しますが、セマンティクスは一致しません。
それでは、Amazon Kendra Intelligent Ranking でクエリを実行しましょう。 query_kendra.sh
スクリプト:
今回は、以下に示すように、結果が異なる順序で表示されます。 Amazon Kendra Intelligent Ranking サービスはスコア値を再割り当てし、クエリの意図により近いドキュメントにより高いスコアを割り当てました。 キーワードの観点からは、単語が含まれていないため、一致度が低くなります。 住所; ただし、セマンティックの観点からは、より適切な応答です。 これで、Amazon Kendra Intelligent Ranking プラグインを使用する利点がわかります!
追加のクエリを実行して検索結果を比較する
今すぐ dstinfo インデックスを試して、同じ概念がさまざまなデータやクエリでどのように機能するかを確認してください。 スクリプトを使用できますが、 query_nokendra.sh & クエリ_ケンドラ.sh コマンドラインからクエリを作成するには、代わりに OpenSearch Dashboards 検索結果比較プラグイン クエリを実行し、検索結果を比較します。
ダッシュボードのローカル URL をブラウザーに貼り付けます。 http://localhost:5601/app/searchRelevance – / ダッシュボード比較ツールにアクセスします。 デフォルトの認証情報を使用します: ユーザー名: 管理人、パスワード: 管理人.
検索バーに次のように入力します。 what is daylight saving time?
クエリ 1 とクエリ 2 の場合 index選択 dstinfo.
以下の DSL クエリをコピーして、 クエリー クエリ 1 の下のパネル。これはキーワード検索クエリです。
以下の DSL クエリをコピーして、 クエリー クエリ 2 の下のパネル。このクエリは、セルフマネージド OpenSearch 用の Amazon Kendra Intelligent Ranking プラグインを呼び出して、検索結果のセマンティックな再ランキングを実行します。
選択する を検索 ボタンをクリックしてクエリを実行し、検索結果を観察します。 結果 1 では、最後にランク付けされたヒットが、おそらくこのクエリに対する最も関連性の高い応答です。 結果 2 では、Amazon Kendra Intelligent Ranking からの出力で、最も関連性の高い回答が正しく XNUMX 位にランク付けされています。
自己管理型 OpenSearch の Amazon Kendra Intelligent Ranking を体験したので、独自のクエリをいくつか試してみてください。 すでにロードしたデータを使用するか、 バルクポスト.sh 独自のデータをロードするスクリプト。
Amazon Kendra ランキング rescore API を調べる
この投稿からわかるように、OpenSearch 用の Amazon Kendra Intelligent Ranking プラグインは、検索結果のセマンティックな再ランキングに便利に使用できます。 ただし、セルフマネージド OpenSearch 用の Amazon Kendra Intelligent Ranking プラグインをサポートしていない検索サービスを使用する場合は、 リスコア Amazon Kendra Intelligent Ranking API から直接機能します。
上記で使用したサンプル クエリの検索結果を使用して、この API を試してください。 ホワイトハウスの住所は?
まず、次を実行して実行計画 ID を見つけます。
以下の JSON には、検索クエリと、元の OpenSearch 一致クエリによって返された XNUMX つの結果と、元の OpenSearch スコアが含まれています。 交換 {kendra-execution-plan_id}
実行計画 ID (上記から) を使用して、次のように保存します。 rescore_input.json:
以下の CLI コマンドを実行して、Amazon Kendra Intelligent Ranking サービスを使用してこのドキュメントのリストを再スコア付けします。
これが正常に実行された場合の出力は、次のようになります。
予想通り、ドキュメント tdoc2 (含みます テキスト本文 「ホワイトハウスの所在地: 1600 Pennsylvania Avenue NW, Washington, DC 20500」) は、クエリに対する意味的に関連性の高い応答であるため、ランキングが高くなりました。 の ResultItems
出力のリストには各入力が含まれます DocumentId
その新しい Score
、降順でランク付け Score
.
クリーンアップ
実験が完了したら、Docker コンテナーと Rescore Execution Plan をシャットダウンして削除します。 cleanup_resources.sh
クイックスタート スクリプトによって作成されたスクリプト。
まとめ
この投稿では、Amazon Kendra Intelligent Ranking プラグインを自己管理型 OpenSearch に使用して、インテリジェントなランキングを OpenSearch ドキュメントクエリに簡単に追加し、既存の OpenSearch 検索エンジンのデプロイを使用しながら、結果の関連性ランキングを劇的に改善する方法を紹介しました。
Amazon Kendra Intelligent Ranking も使用できます。 再スコア API に直接 結果をインテリジェントに再採点してランク付けする 独自のアプリケーションから。
自己管理型 OpenSearch の Amazon Kendra Intelligent Ranking を読む ドキュメント を参照して、この機能の詳細を確認し、運用アプリケーションに適用する計画を開始してください。
著者について
アビナブ・ジャワデカール は、AWSのAI/ML言語サービスチームでAmazonKendraに焦点を当てたプリンシパルソリューションアーキテクトです。 Abhinavは、AWSのお客様やパートナーと協力して、AWSでインテリジェントな検索ソリューションを構築できるよう支援します。
ボブ・ストラハン AWS Language AIServicesチームのプリンシパルソリューションアーキテクトです。
- SEO を活用したコンテンツと PR 配信。 今日増幅されます。
- Platoblockchain。 Web3メタバースインテリジェンス。 知識の増幅。 こちらからアクセスしてください。
- 情報源: https://aws.amazon.com/blogs/machine-learning/get-smarter-search-results-with-the-amazon-kendra-intelligent-ranking-and-opensearch-plugin/
- 1
- 10
- 100
- 11
- 7
- 70
- 9
- a
- 午前
- 私たちについて
- 上記の.
- アクセス
- 事故
- 従った
- 精度
- 正確な
- 越えて
- Action
- 実際に
- NEW
- 住所
- 管理人
- 後
- 先んじて
- AI
- AIサービス
- AI / ML
- 既に
- しかし
- 常に
- Amazon
- Amazon EC2
- アマゾンケンドラ
- &
- 回答
- API
- 申し込み
- 申し込む
- 4月
- アリゾナ州
- 割り当てられた
- 自動化する
- 自動化する
- 大通り
- AWS
- バック
- バー
- ベース
- bash
- なぜなら
- 背後に
- 以下
- 恩恵
- 利点
- ベンジャミン
- BEST
- より良いです
- の間に
- ボディ
- 脳
- 英国の
- ブリティッシュコロンビア
- ブラウザ
- ビルド
- 内蔵
- オフィス
- カナダ
- 課題
- 変化する
- クリア
- 時計
- 密接に
- Cloud9
- COLUMBIA
- 到来
- 比較します
- 比較
- コンポーネント
- 計算
- コンピュータ
- コンセプト
- 議会
- 議会の
- お問合せ
- 接続
- その結果
- 検討
- 構築する
- コンテナ
- コンテナ
- 含まれています
- コンテンツ
- 国
- カップル
- 作ります
- 作成した
- 作成します。
- Credentials
- Customers
- サイクル
- ダッシュボード
- データ
- 中
- 日
- dc
- デフォルト
- 定義
- 喜んで
- 配信
- 実証します
- 配備
- 決定する
- 違い
- 異なります
- 直接に
- デッカー
- ドキュメント
- ドキュメント
- ドキュメント
- そうではありません
- ドメイン
- ドント
- ダウン
- 劇的に
- 各
- 簡単に
- 効果
- 使用可能
- 終了
- エンジン
- エンジン
- 入力します
- 環境
- エラー
- 等
- 例
- 例
- 実行します
- 実行
- 既存の
- 予想される
- 経験豊かな
- 実験
- Failed:
- おなじみの
- よくある質問
- 賛成
- 特徴
- 少数の
- フィールズ
- File
- もう完成させ、ワークスペースに掲示しましたか?
- 名
- 焦点を当て
- フォロー中
- フォーム
- 前者
- 創業
- から
- 完全に
- function
- 機能性
- 地理的
- 取得する
- 受け
- ハンディ
- 助けます
- 役立つ
- こちら
- より高い
- 非常に
- history
- ヒット
- ヒット
- お家の掃除
- 認定条件
- How To
- しかしながら
- HTML
- HTTPS
- 感銘を受けて
- 改善します
- 改善
- in
- 増加
- index
- インデックス
- 個別に
- 情報
- 情報
- 固有の
- 初期
- install
- を取得する必要がある者
- インテリジェント-
- 意図
- 意図
- 内部
- 紹介する
- 概要
- 呼び出す
- 関係する
- アイランズ
- 問題
- IT
- JSON
- キープ
- 言語
- 姓
- 最新の
- LEARN
- 学習
- 手紙
- LINE
- リスト
- 負荷
- ローカル
- 位置して
- 長い
- より長いです
- 見て
- make
- マネージド
- 多くの
- 3月
- 一致
- マッチング
- 意味
- 手段
- メッセージ
- 移動します
- 分
- ヶ月
- 他には?
- 最も
- 国
- 国民
- 必要
- 新作
- 11月
- 観察する
- 10月
- ONE
- 開いた
- オープンソース
- opensslの
- 機会
- オプション
- オプション
- 注文
- オリジナル
- その他
- 屋外で
- 自分の
- 参加者
- パートナー
- 部品
- パスワード
- ペンシルベニア州
- のワークプ
- 実行する
- おそらく
- 恒久的な
- パーミッション
- 視点
- 場所
- 計画
- 計画
- プラトン
- プラトンデータインテリジェンス
- プラトデータ
- お願いします
- プラグイン
- 方針
- ポスト
- 電力
- 強力な
- 社長
- かなり
- 前
- 校長
- 多分
- 生産
- プロパティ
- 財産
- 提供します
- は、大阪で
- 公共
- プエルト
- プエルトリコ
- 品質
- 質問
- ランク
- ランキング
- 準備
- 電話代などの費用を削減
- レギュラー
- 関係
- 関連性
- 関連した
- 削除します
- replace
- の提出が必要です
- 研究
- リソースを追加する。
- 応答
- 結果
- 結果
- RICO
- ラン
- ランニング
- 同じ
- Save
- 節約
- SC
- 得点
- スクリプト
- を検索
- 検索エンジン
- 検索エンジン
- 二番
- セルフサービス
- 意味論
- サービス
- サービス
- セッションに
- 表示する
- 示す
- シャットダウン
- 同様の
- 簡単な拡張で
- 単に
- サイト
- サイズ
- 小さい
- 賢い
- So
- ソフト
- 溶液
- ソリューション
- 解決する
- 一部
- ソース
- ソース
- 特定の
- start
- 開始
- ステートメント
- 米国
- 手順
- まだ
- 成功した
- そのような
- サポート
- チーム
- ターミナル
- 条件
- test
- アプリ環境に合わせて
- 時間
- 時間枠
- 役職
- 〜へ
- 今日
- ツール
- top
- トータル
- 観光
- 輸送サービス
- チュートリアル
- 私達
- 下
- ユナイテッド
- 米国
- URL
- つかいます
- ユーザー
- 検証
- 値
- 価値観
- バージョン
- 処女
- wait
- ワシントン
- ウェブ
- この試験は
- 何ですか
- かどうか
- which
- while
- 白
- ホワイトハウス
- 意志
- 無し
- Word
- 言葉
- 作品
- 世界
- でしょう
- You
- あなたの
- ゼファーネット