REST Resource: projects.locations.corpora.searchConfigs

資源:SearchConfig

SearchConfig 會儲存會影響搜尋行為和搜尋結果的不同屬性。

JSON 表示法
{
  "name": string,
  "facetProperty": {
    object (FacetProperty)
  },
  "searchCriteriaProperty": {
    object (SearchCriteriaProperty)
  }
}
欄位
name

string

搜尋設定的資源名稱。對於 CustomSearchCriteria,searchConfig 會是搜尋運算子名稱。對於商情項目,searchConfig 會是商情項目維度名稱。表單:projects/{project_number}/locations/{location}/corpora/{corpus}/searchConfigs/{searchConfig}

facetProperty

object (FacetProperty)

建立 FacetDimension 和相關規格。

searchCriteriaProperty

object (SearchCriteriaProperty)

建立自訂 SearchCriteria 和一或多個 UGA 鍵之間的對應關係。

FacetProperty

面向面的集中設定。

JSON 表示法
{
  "mappedFields": [
    string
  ],
  "displayName": string,
  "resultSize": string,
  "bucketType": enum (FacetBucketType),

  // Union field range_facet_config can be only one of the following:
  "fixedRangeBucketSpec": {
    object (FixedRangeBucketSpec)
  },
  "customRangeBucketSpec": {
    object (CustomRangeBucketSpec)
  },
  "datetimeBucketSpec": {
    object (DateTimeBucketSpec)
  }
  // End of list of possible types for union field range_facet_config.
}
欄位
mappedFields[]

string

商情項目名稱,也就是使用者想用來縮小搜尋結果範圍的維度。mappedFields 會比對 UserSpecifiedDataSchema 鍵。

舉例來說,使用者可以新增多個使用相同鍵的 UGA,例如 player:adam、player:bob、player:charles。指定多個 mappedFields 時,系統會將這些值合併為最終的面向值。例如:home_team: a, home_team:b, away_team:a, away_team:c,如果 facet_field = [home_team, away_team],facet_value 會是 [a, b, c]。

除非這是 1:1 切面維度 (mappedFields.size() == 1),且 mapped_field 等於父項 SearchConfig.name,否則父項也必須包含對應至相同欄位的 SearchCriteriaProperty。mappedFields 不得為空白。

displayName

string

切面的顯示名稱。供 UI 用於多面向算繪。

resultSize

string (int64 format)

每個切面傳回的唯一值桶數上限。對於高基數的切面 (例如「玩家」),值區數量可能會很大。我們只會向使用者傳回最相關的 n 個結果。如果 <= 0,伺服器會決定適當的 resultSize。

bucketType

enum (FacetBucketType)

Facet 值類型,例如值、範圍。

聯集欄位 range_facet_config

range_facet_config 只能是下列其中一項:

fixedRangeBucketSpec

object (FixedRangeBucketSpec)

固定範圍切面值區設定。

customRangeBucketSpec

object (CustomRangeBucketSpec)

自訂範圍值區設定。

datetimeBucketSpec

object (DateTimeBucketSpec)

日期時間範圍切面桶值設定。

FixedRangeBucketSpec

如果值區類型為 FIXED_RANGE,請指定值區的分布方式。如要建立多個精確度相同的桶,請使用 FixedRangeBucketSpec。以整數值區值為例,如果 bucketStart = 0、bucketGranularity = 10、bucketCount = 5,系統會透過下列值區匯總這個商情項目:[-inf, 0), [0, 10), [10, 20), [20, 30), [30, inf)。請注意,bucketCount <= 1 是無效的規格。

JSON 表示法
{
  "bucketStart": {
    object (FacetValue)
  },
  "bucketGranularity": {
    object (FacetValue)
  },
  "bucketCount": integer
}
欄位
bucketStart

object (FacetValue)

值區的下限。注意:這個欄位目前僅支援整數類型。

bucketGranularity

object (FacetValue)

值區精細程度。注意:這個欄位目前僅支援整數類型。

bucketCount

integer

值區總數。

FacetValue

定義具有泛型類型的單一值。

JSON 表示法
{

  // Union field value can be only one of the following:
  "stringValue": string,
  "integerValue": string,
  "datetimeValue": {
    object (DateTime)
  }
  // End of list of possible types for union field value.
}
欄位

聯集欄位 value

value 只能是下列其中一項:

stringValue

string

字串類型值。

integerValue

string (int64 format)

整數類型值。

datetimeValue

object (DateTime)

日期時間類型值。

CustomRangeBucketSpec

如果值區類型為 CUSTOM_RANGE,請指定值區的分布方式。以整數值區範圍為例,如果端點為 0、10、100 和 1000,我們會產生下列商情項目:[-inf, 0), [0, 10), [10, 100), [100, 1000), [1000, inf)。特別注意:- 端點必須依遞增順序列出。否則,SearchConfig API 會拒絕面向設定。- < 1 個端點是無效的規格。

JSON 表示法
{
  "endpoints": [
    {
      object (FacetValue)
    }
  ]
}
欄位
endpoints[]

object (FacetValue)

目前這個欄位僅支援整數類型。

DateTimeBucketSpec

如果值區類型為 DATE,請指定日期值的值區分布方式。

JSON 表示法
{
  "granularity": enum (Granularity)
}
欄位
granularity

enum (Granularity)

日期類型切面的精細程度。

精細程度

日期時間範圍的細目列舉。

列舉
GRANULARITY_UNSPECIFIED 未指定精細度。
YEAR 精細程度為年。
MONTH 精細程度為月。
DAY 精細程度為「日」。

FacetBucketType

切面值層的不同類型。

列舉
FACET_BUCKET_TYPE_UNSPECIFIED 未指定的類型。
FACET_BUCKET_TYPE_VALUE 值類型。
FACET_BUCKET_TYPE_DATETIME 日期時間類型。
FACET_BUCKET_TYPE_FIXED_RANGE 固定範圍類型。
FACET_BUCKET_TYPE_CUSTOM_RANGE 自訂範圍類型。

SearchCriteriaProperty

自訂搜尋條件的集中設定。

JSON 表示法
{
  "mappedFields": [
    string
  ]
}
欄位
mappedFields[]

string

每個 mapped_field 都會對應至 UGA 鍵。如要瞭解這項屬性的運作方式,請參考以下範例。In the SearchConfig table, the user adds this entry: searchConfig { name: "person" searchCriteriaProperty { mappedFields: "player" mappedFields: "coach" } }

現在,當使用者發出以下查詢時: criteria { field: "person" textArray { txtValues: "Tom Brady" txtValues: "Bill Belichick" } }

MWH 搜尋會傳回搜尋文件,其中包含 (player=Tom Brady || coach=Tom Brady || player=Bill Belichick || coach=Bill Belichick)。

方法

create

在語料庫中建立搜尋設定。

delete

刪除語料庫中的搜尋設定。

get

取得語料庫中的搜尋設定。

list

列出語料庫中的所有搜尋設定。

patch

更新語料庫中的搜尋設定。