Class: Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaCatalogAttributeFacetConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/retail_v2alpha/classes.rb,
lib/google/apis/retail_v2alpha/representations.rb,
lib/google/apis/retail_v2alpha/representations.rb

Overview

Possible options for the facet that corresponds to the current attribute config.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudRetailV2alphaCatalogAttributeFacetConfig

Returns a new instance of GoogleCloudRetailV2alphaCatalogAttributeFacetConfig.



2052
2053
2054
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2052

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#facet_intervalsArray<Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaInterval>

If you don't set the facet SearchRequest.FacetSpec.FacetKey.intervals in the request to a numerical attribute, then we use the computed intervals with rounded bounds obtained from all its product numerical attribute values. The computed intervals might not be ideal for some attributes. Therefore, we give you the option to overwrite them with the facet_intervals field. The maximum of facet intervals per CatalogAttribute is 40. Each interval must have a lower bound or an upper bound. If both bounds are provided, then the lower bound must be smaller or equal than the upper bound. Corresponds to the JSON property facetIntervals



2012
2013
2014
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2012

def facet_intervals
  @facet_intervals
end

#ignored_facet_valuesArray<Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaCatalogAttributeFacetConfigIgnoredFacetValues>

Each instance represents a list of attribute values to ignore as facet values for a specific time range. The maximum number of instances per CatalogAttribute is 25. Corresponds to the JSON property ignoredFacetValues



2019
2020
2021
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2019

def ignored_facet_values
  @ignored_facet_values
end

#merged_facetGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaCatalogAttributeFacetConfigMergedFacet

The current facet key (i.e. attribute config) maps into the merged_facet_key. A facet key can have at most one child. The current facet key and the merged facet key need both to be textual custom attributes or both numerical custom attributes (same type). Corresponds to the JSON property mergedFacet



2027
2028
2029
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2027

def merged_facet
  @merged_facet
end

#merged_facet_valuesArray<Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaCatalogAttributeFacetConfigMergedFacetValue>

Each instance replaces a list of facet values by a merged facet value. If a facet value is not in any list, then it will stay the same. To avoid conflicts, only paths of length 1 are accepted. In other words, if "dark_blue" merged into "BLUE", then the latter can't merge into "blues" because this would create a path of length 2. The maximum number of instances of MergedFacetValue per CatalogAttribute is 100. This feature is available only for textual custom attributes. Corresponds to the JSON property mergedFacetValues



2038
2039
2040
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2038

def merged_facet_values
  @merged_facet_values
end

#rerank_configGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaCatalogAttributeFacetConfigRerankConfig

Options to rerank based on facet values engaged by the user for the current key. That key needs to be a custom textual key and facetable. To use this control, you also need to pass all the facet keys engaged by the user in the request using the field [SearchRequest.FacetSpec]. In particular, if you don't pass the facet keys engaged that you want to rerank on, this control won't be effective. Moreover, to obtain better results, the facet values that you want to rerank on should be close to English (ideally made of words, underscores, and spaces). Corresponds to the JSON property rerankConfig



2050
2051
2052
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2050

def rerank_config
  @rerank_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2057
2058
2059
2060
2061
2062
2063
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2057

def update!(**args)
  @facet_intervals = args[:facet_intervals] if args.key?(:facet_intervals)
  @ignored_facet_values = args[:ignored_facet_values] if args.key?(:ignored_facet_values)
  @merged_facet = args[:merged_facet] if args.key?(:merged_facet)
  @merged_facet_values = args[:merged_facet_values] if args.key?(:merged_facet_values)
  @rerank_config = args[:rerank_config] if args.key?(:rerank_config)
end