あいまい検索の概要
あいまい一致は 2 つの方法で発生します。クエリがドキュメント内のコンテンツの完全なピンインまたはピンインイニシャルである場合、またはクエリがドキュメント内に直接出現する場合です。あいまい検索はユーザーの意図を正確に解釈できないため、結果には大量の無関係な情報が含まれる可能性があります。したがって、特定のシナリオに基づいて、あいまい検索を慎重に使用する必要があります。
注意事項
あいまいアナライザーのフィールドタイプは short_text にする必要があります。
あいまいトークン化クエリでは、通常、単一引用符を使用する必要があります。二重引用符は、このドキュメントで説明されている特定の要件に対してのみ使用してください。
シナリオ
あいまい検索は、主にユーザーの検索意図が不明確な場合、または少量のデータから多くの結果を取得したい場合に使用します。主なシナリオは次のとおりです。
ピンイン検索
概要:ピンイン検索では、完全なピンインまたはピンインイニシャルを使用して、ドキュメント内の中国語データを検索できます。
例:
ドキュメントのコンテンツ: OpenSearch
次のクエリはすべて、このドキュメントを取得します:
"kai"、"kaifang"、"sousuo"、"kaifangsousuo"、"k"、"kf"、"ss"、"kfss"注意事項:
ピンイン検索クエリには二重引用符を使用する必要があります。
ドキュメント内で連続したコンテンツを検索するには、検索クエリを二重引用符で囲みます。ピンイン検索の場合、ユーザーが入力したピンインクエリには特定の意図があるため、常に二重引用符を使用する必要があります。たとえば、「kfss」 (OpenSearch) を検索するユーザーは、対応する文字が連続して表示されることを期待しているためです。
プレフィックス検索
概要:プレフィックス検索は、指定されたプレフィックスで始まるコンテンツを取得します。
例:
# あいまい検索のプレフィックス識別子は「^」です。 138 で始まる電話番号を検索するには、
# クエリを "^138" と記述します。注意:クエリには二重引用符を使用します。注意事項:
中国語文字のプレフィックスマッチングはサポートされていません。
プレフィックスマッチングの場合、クエリを二重引用符で囲む必要があります。
サフィックスマッチ
概要:サフィックス検索は、指定されたサフィックスで終わるコンテンツを取得します。
例:
# あいまい検索のサフィックス識別子は「$」です。 9527 で終わる電話番号を検索するには、
# クエリを "9527$" と記述します。注意:クエリには二重引用符を使用します。注意事項:
中国語文字のサフィックスマッチングはサポートされていません。
サフィックスマッチングの場合、クエリを二重引用符で囲む必要があります。
単一文字検索
概要:あいまい検索は、単一文字検索をサポートしています。これは主にドキュメントの再現率を向上させるために使用します。ただし、結果はあまり正確ではない可能性があります。
例:
# ドキュメントのコンテンツ: 'Open Search open search'
query=default:'放' または query=default:'o' はドキュメントを取得しますフレーズクエリ
概要:フレーズクエリは、二重引用符を使用して用語の順序を強制します。フレーズクエリには、連続した文字と数字のみを含めることができます。
例:
# 1. query=default:"OpenSearch"
# これは「xxxOpenSearchxxx」を含むドキュメントのみを取得します。「xxxSearchOpenxxx」のようなドキュメントは取得しません。
# 2. query=default:"HuaweiP"
# これは「HuaweiP20」のようなドキュメントを取得できません。フレーズクエリは完全一致するトークンを検索するため、"HuaweiP" は "HuaweiP20" というトークンとは一致しません。
# このシナリオでは、クエリに単一引用符を使用します。注意事項:
フレーズクエリには二重引用符を使用する必要があります。
フレーズクエリはより正確な結果を取得し、取得されるドキュメントの数を減らします。ただし、より多くのシステムリソースを消費します。このようなシナリオでは、代わりに中国語アナライザーの使用を検討してください。
あいまい検索は、検索意図が不明確な場合、または小規模なデータセットから多くの結果を取得したい場合のシナリオを対象としています。したがって、ピンイン、プレフィックス、サフィックス、およびフレーズクエリを除くすべてのクエリには、単一引用符を使用する必要があります。
制限事項
アプリケーションを作成する際、あいまい検索が必要なフィールドを short_text タイプに設定し、あいまいアナライザーを割り当てる必要があります。デフォルトでは、あいまい検索結果は、フィールド内の一致した用語の位置に基づいてソートされます。たとえば、アプリケーションのタイトルフィールドで あいまい検索が必要な場合を想定します。ドキュメント 1 に「OpenSearch」が含まれ、ドキュメント 2 に「I like to use OpenSearch」が含まれている場合、「kfss」 を検索すると、デフォルトでドキュメント 1 がドキュメント 2 よりも上位にランク付けされます。あいまい検索は、検索意図が不明確な場合に適していますが、次の制限事項に注意する必要があります。
プレフィックス検索とサフィックス検索は、英字、数字、およびピンインに対してのみサポートされています。中国語文字はサポートされていません。
short_text フィールドの句読点はフィルタリングされます。
句読点がフィルタリングされた後、short_text フィールドのコンテンツは 100 バイトに制限されます。この制限を超えるコンテンツは破棄されます。
short_text フィールドはドロップダウンサジェストをサポートしています。
short_text フィールドから作成されたインデックスは、クエリ分析を使用できません。
short_text フィールドが あいまいアナライザーのみを使用し、他のアナライザーによってインデックス付けされていない場合、フィールド内の全角文字は、取得されたサマリーで半角文字に変換されます。これを回避するには、中国語アナライザーを使用する新しいインデックスを作成できます。
英字、数字、またはピンインに対するハイライトはサポートされていません。