NaturalLanguageQueryUnderstandingSpec

検索リクエストの自然言語理解機能を有効にするための仕様。

JSON 表現
{
  "filterExtractionCondition": enum (FilterExtractionCondition),
  "geoSearchQueryDetectionFieldNames": [
    string
  ],
  "extractedFilterBehavior": enum (ExtractedFilterBehavior),
  "allowedFieldNames": [
    string
  ]
}
フィールド
filterExtractionCondition

enum (FilterExtractionCondition)

フィルタ抽出を行う条件。サーバーの動作はデフォルトで DISABLED に設定されます。

geoSearchQueryDetectionFieldNames[]

string

位置情報に基づくフィルタリングに使用されるフィールド名。自然言語検索クエリで位置情報フィルタが検出された場合に使用されます。FilterExtractionCondition が ENABLED に設定されている場合にのみ有効です。

このフィールドが設定されている場合、ServingConfig.geo_search_query_detection_field_names で設定されているフィールド名がオーバーライドされます。

extractedFilterBehavior

enum (ExtractedFilterBehavior)

省略可。抽出されたフィルタが検索に適用される動作を制御します。デフォルトの動作はリクエストによって異なります。単一データストアの構造化検索の場合、デフォルトは HARD_FILTER です。マルチデータストア検索の場合、デフォルトの動作は SOFT_BOOST です。位置情報に基づくフィルタは常にハードフィルタとして適用され、SOFT_BOOST 設定は影響しません。このフィールドは、[SearchRequest.natural_language_query_understanding_spec.filter_extraction_condition][] が FilterExtractionCondition.ENABLED に設定されている場合にのみ使用されます。

allowedFieldNames[]

string

省略可。自然言語フィルタの抽出に使用できるフィールドの許可リスト。デフォルトでは、この設定が指定されていない場合、インデックス登録可能なすべてのフィールドが自然言語フィルタの抽出対象になります(ただし、必ず使用されるとは限りません)。allowedFieldNames でフィールドが指定されている場合、スキーマでインデックス可能としてマークされ、許可リストで指定されているフィールドのみが自然言語フィルタの抽出の対象となります。注: マルチデータストア検索では、これはまだサポートされておらず、無視されます。

FilterExtractionCondition

フィルタの抽出を行う条件を説明する列挙型。

列挙型
CONDITION_UNSPECIFIED サーバーの動作はデフォルトで DISABLED に設定されます。
DISABLED NL フィルタの抽出を無効にします。
ENABLED NL フィルタの抽出を有効にします。

ExtractedFilterBehavior

抽出されたフィルタが検索にどのように適用されるかを記述する列挙型。

列挙型
EXTRACTED_FILTER_BEHAVIOR_UNSPECIFIED EXTRACTED_FILTER_BEHAVIOR_UNSPECIFIED は、抽出されたフィルタのデフォルトの動作を使用します。単一データストア検索の場合、デフォルトではハードフィルタとして適用されます。マルチ データストア検索の場合、デフォルトではソフトブーストとして適用されます。
HARD_FILTER 抽出されたすべてのフィルタを結果にハードフィルタとして適用します。抽出されたフィルタを通過しない結果は、結果セットで返されません。
SOFT_BOOST 抽出されたすべてのフィルタをソフトブーストとして適用します。フィルタを通過した結果は、結果セットの上位にブーストされます。