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

OpenSearch:あいまい検索

最終更新日:Dec 28, 2024

概要

あいまい検索は、検索意図が不明確な場合に適用できます。あいまい検索では、システムはあいまい一致モードで検索クエリに関連するドキュメントを取得します。検索クエリがドキュメント内の特定の漢字の完全なピンインスペルまたはピンインの頭字語である場合、または検索クエリがドキュメントに含まれている場合、ドキュメントは検索クエリに関連すると判断されます。あいまい検索では、システムは検索意図を識別できず、予期しないドキュメントを多数取得する可能性があります。実際のビジネスシナリオに基づいてあいまい検索を使用することをお勧めします。

注意事項

  • あいまい検索のアナライザーは、SHORT_TEXT タイプのフィールドにのみ適用されます。

  • ほとんどの場合、単一引用符 (' ') を使用してあいまい検索を実装できます。次のセクションでは、二重引用符 (" ") が必要な特定のシナリオについて説明します。

シナリオ

あいまい検索は、検索意図が不明確な場合、または検索結果で取得されるドキュメントの数を増やしたい場合に適しています。あいまい検索は、次のシナリオに適用されます。

ピンイン検索

説明:このシナリオでは、完全なピンインスペルまたはピンインの略語の形式の検索クエリを使用して、中国語のドキュメントを取得できます。

:

Document: 开放搜索
Search queries: "kai", "kaifang", "sousuo", "kaifangsousuo", "k", "kf", "ss", and "kfss" 
// これらの検索クエリはすべて、ドキュメントの取得に使用できます。

使用上の注意:

  • ピンイン検索では二重引用符 (" ") が使用されます。

  • 検索クエリで指定された漢字が取得されたドキュメントに連続して表示されるようにするには、検索クエリを二重引用符 (" ") で囲みます。ほとんどの場合、検索クエリで完全なピンインスペルまたはピンインの略語の形式で指定された漢字は、取得されたドキュメントで連続していることが期待されます。たとえば、検索クエリが "kfss" の場合、取得されたドキュメントには「开放搜索」が含まれている必要があります。したがって、ピンイン検索では検索クエリを二重引用符 (" ") で囲むことをお勧めします。

プレフィックス検索

説明:このシナリオでは、特定の検索クエリで始まるコンテンツを検索できます。

:

# プレフィックス検索では、キャレット (^) がプレフィックス識別子として使用されます。"138" で始まる携帯電話番号が返されるようにするには、
// 検索クエリは "^138" の形式にすることができます。二重引用符 (" ") が必要であることに注意してください。

使用上の注意:

  • プレフィックス検索は漢字をサポートしていません。

  • プレフィックス検索では、検索クエリを二重引用符 (" ") で囲む必要があります。

サフィックス検索

説明:このシナリオでは、特定の検索クエリで終わるコンテンツを検索できます。

:

# サフィックス検索では、ドル記号 ($) がサフィックス識別子として使用されます。"9527" で終わる携帯電話番号が返されるようにするには、
// 検索クエリは "9527$" の形式にすることができます。二重引用符 (" ") が必要であることに注意してください。

使用上の注意:

  • サフィックス検索は漢字をサポートしていません。

  • サフィックス検索では、検索クエリを二重引用符 (" ") で囲む必要があります。

単一文字または単語の検索

説明:このシナリオでは、単一文字または単語の形式で検索クエリを指定することにより、特定のコンテンツを検索できます。このタイプの検索は、検索結果でより多くのドキュメントを取得したい場合に適しています。ただし、検索結果は正確でない場合があります。

:

# Document: '开放搜索 open search'
// Query clause: query=default:'放' or query=default:'o'. どちらのクエリ句も、ドキュメントの取得に使用できます。

フレーズ検索

説明:このシナリオでは、検索クエリを二重引用符 (" ") で囲む必要があります。フレーズ検索では、検索クエリ内の連続した文字と数字の文字列を含むドキュメントのみが取得されます。

:

# Query clause 1: query=default:"OpenSearch"
// この場合、"xxxOpenSearchxxx" を含むドキュメントのみを取得できます。"xxxSearchOpenxxx" を含むドキュメントは取得できません。

# Query clause 2: query=default:"HUAWEIP"
// この場合、"HUAWEIP20" を含むドキュメントは取得できません。これは、"HUAWEIP20" がクエリ句に連続した文字と数字の文字列として含まれていないためです。このクエリ句を使用して "HUAWEIP20" を含むドキュメントを取得するには、検索クエリを単一引用符 (' ') で囲みます。

使用上の注意:

  • フレーズ検索では、検索クエリを二重引用符 (" ") で囲む必要があります。

  • フレーズ検索は、検索結果の精度を向上させ、取得されるドキュメントの数を減らすのに役立ちます。このタイプの検索は、より多くのリソースを消費します。フレーズ検索では、汎用中国語テキストアナライザーを使用することをお勧めします。

  • あいまい検索は、検索意図が不明確な場合、または検索結果でより多くのドキュメントが返されるようにしたい場合に適しています。ピンイン検索、プレフィックス検索、サフィックス検索、およびフレーズ検索を除き、検索クエリを単一引用符 (' ') で囲む必要があります。

制限事項

あいまい検索機能を使用するには、アプリケーションを作成するときに、あいまい検索に使用するフィールドを SHORT_TEXT タイプに設定し、あいまい検索のアナライザーを指定する必要があります。デフォルトでは、あいまい検索で返されるドキュメントは、フィールド値内の一致する用語の順序に基づいてソートされます。たとえば、アプリケーションの title フィールドをあいまい検索に使用するとします。doc1 ドキュメントには「开放搜索」が含まれ、doc2 ドキュメントには「喜欢使用开放搜索」が含まれています。検索クエリを「kfss」に設定すると、デフォルトでは doc1 ドキュメントが doc2 ドキュメントの前にソートされます。あいまい検索は、検索意図が不明確なシナリオに適用されます。あいまい検索を実装する場合は、次のルールに注意してください。

  • 漢字を含む検索クエリに対して、サフィックス検索またはプレフィックス検索を実装することはできません。文字、数字、ピンインのみを含む検索クエリがサポートされています。

  • SHORT_TEXT タイプのフィールドの値にある句読点は除外されます。

  • SHORT_TEXT タイプのフィールドから句読点が除外された後、フィールド値の最大 100 バイトまで保持できます。超過部分は破棄されます

  • SHORT_TEXT タイプのフィールドに基づいてドロップダウン候補モデルを作成できます。

  • SHORT_TEXT タイプのフィールドに基づいて作成されたインデックスに対して、クエリ分析機能を使用することはできません。

  • SHORT_TEXT タイプのフィールドにあいまい検索のアナライザーのみを使用してインデックスを作成した場合、検索結果の概要で全角文字が半角文字に変換されます。変換を防ぐには、中国語のアナライザーを使用してインデックスを作成できます。

  • 検索結果の概要では、文字、数字、ピンインを赤で強調表示することはできません。