すべてのプロダクト
Search
ドキュメントセンター

OpenSearch:ストップワード介入辞書

最終更新日:Apr 02, 2026

OpenSearch には、クエリ処理中に一般的な単語を除外する組み込みのストップワード辞書が含まれています。組み込み辞書が単語を誤って分類した場合 (一致すべき単語をフィルタリングしたり、無視すべき単語を通過させたりした場合)、介入辞書を作成してデフォルトの動作をオーバーライドします。

仕組み

介入辞書には、ストップワードと介入タイプをそれぞれ定義するエントリが含まれています:

介入タイプ効果
追加単語をストップワードとしてマークします。その単語は取得から除外されます。
ブロック組み込みのストップワードをオーバーライドします。その単語は取得に含まれます。

「追加」を使用する場合:クエリに出現するものの、結果を区別することのない単語がある場合です。たとえば、e コマースのショッピングガイドアプリケーションで、「海南にはバナナがある」というクエリの「には」は文法上の冗長な語です。これをストップワードとして追加することで、取得は「海南」と「バナナ」にフォーカスされるようになります。

「ブロック」を使用する場合:ご利用のドメインの単語が組み込みのストップワードと一致するものの、それが実際の意味を持つ場合です。組み込みのストップワードがデフォルトでフィルタリングされ、その単語を完全に無視した結果が返される場合、それをブロックすることで OpenSearch はその単語を取得に含めるようになり、ユーザーは正確な結果を得られます。

OpenSearch は、組み込み辞書と介入エントリを一緒に適用します。クエリ分析ルールでストップワードのフィルタリングを有効にすると、アタッチした介入辞書とともに、組み込みのストップワード辞書が自動的に選択されます。

説明 介入辞書はアカウントレベルのリソースです。1 つの辞書を、異なるアプリケーションにまたがる複数のクエリ分析ルールにアタッチできます。

前提条件

開始する前に、以下が準備できていることを確認してください:

  • クエリ分析ルールが設定された OpenSearch アプリケーション

  • OpenSearch コンソールへのアクセス権

介入辞書の作成

  1. OpenSearch コンソールで、[検索アルゴリズムセンター] > [検索設定] に移動します。

  2. [基本設定] ページで、左側のペインにある [辞書管理] をクリックします。

  3. 左上隅にある [作成] をクリックします。

  4. 辞書の名前を入力します。

  5. [辞書タイプ][ストップワード] に設定します。

  6. [保存] をクリックします。

辞書が辞書リストに表示されます。

説明 辞書の名前とタイプは、作成後に変更することはできません。

介入エントリの追加

  1. リストで対象の辞書を見つけ、[操作] 列の [エントリの管理] をクリックします。

  2. [介入エントリの追加] をクリックします。

  3. [介入エントリの追加] パネルで、[ストップワード] 列にストップワードを入力します。

  4. [介入タイプ] 列で [追加] または [ブロック] を選択します。

  5. [保存] をクリックします。

介入したい単語ごとにこの操作を繰り返します。各エントリには、一意のストップワードを使用する必要があります。

エントリの制約:

制約
エントリあたりのストップワード数1
辞書あたりのエントリ数500
正規化大文字は小文字に変換、全角文字は半角文字に変換
説明 エントリは、セグメント化された検索クエリ内の単語がストップワードと完全に一致した場合にのみ有効になります。たとえば、「what」をストップワードとして追加した場合、「what facial cream is good」というクエリは、「facial cream is good」に基づいて結果を取得します。

クエリ分析ルールへの辞書の適用

  1. [クエリ分析ルール管理] ページに移動します。

  2. 既存のルールを開くか、新しいルールを作成します。

  3. 介入辞書をルールに関連付けます。

  4. ルールを保存しますが、まだオンラインアプリケーションには公開しません。

説明 介入辞書がクエリ分析ルール (オンラインまたはオフラインのアプリケーションに適用されているかどうかにかかわらず) にアタッチされている場合、その辞書を削除することはできません。削除する前に、すべてのルールからアタッチを解除してください。

テストと公開

ルールをオンライン環境に適用する前に、オフラインアプリケーションに対して検索テストを実行します。結果が期待されるストップワードの動作を反映していることを確認してください。

たとえば、「has」をストップワードとして追加した場合、「Hainan has bananas」と検索すると、「Hainan bananas」を含むすべてのドキュメントが返されるべきであり、完全一致のフレーズ「Hainan has bananas」のみを含むドキュメントだけが返されるわけではありません。

結果を確認した後、ルールをオンラインアプリケーションに公開します。

シナリオ: e コマースのショッピングガイドアプリケーションで、ユーザーが「Hainan has bananas」と検索すると、ほとんど結果が返されません。「has」という単語がストップワードとして認識されないため、OpenSearch は完全に一致するフレーズを含むドキュメントしか取得しません。

ソリューション: 介入辞書に「has」をストップワードとして追加し、その辞書をオンラインアプリケーションで使用されるクエリ分析ルールにアタッチします。

操作手順:

  1. 検索アルゴリズムセンター] > [検索設定] > [辞書管理] に移動し、[作成] をクリックします。

    image

  2. 辞書に名前を付け、[辞書タイプ][ストップワード] に設定します。

    image

  3. 新しい辞書の [エントリの管理] をクリックします。[介入エントリの追加] パネルで、[ストップワード]has に、介入タイプ[追加] に設定し、[保存] をクリックします。

    image

  4. [クエリ分析ルール管理] ページで [作成] をクリックし、辞書をルールにアタッチします。まだルールは公開しません。

    image

  5. 検索テストを実行します。「Hainan has bananas」を検索すると、「Hainan bananas」を含むすべてのドキュメントが返されるようになります。

  6. ルールをオンラインアプリケーションに公開します。

制限事項と注意事項

項目詳細
アカウントあたりの介入辞書数20
エントリあたりのストップワード数1 (各エントリには一意のストップワードを使用する必要があります)
辞書あたりのエントリ数500
正規化大文字は小文字に変換、全角文字は半角文字に変換
辞書の名前とタイプ作成後に変更不可
共有辞書1 つの辞書を複数のクエリ分析ルールで使用可能
組み込み辞書ルールでストップワードのフィルタリングが有効になっている場合、組み込みのストップワード辞書が自動的に適用されます
辞書の削除クエリ分析ルール (オンラインまたはオフライン) にアタッチされている辞書は削除できません。まず、すべてのルールからアタッチを解除してください