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.



1785
1786
1787
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 1785

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



1745
1746
1747
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 1745

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



1752
1753
1754
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 1752

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



1760
1761
1762
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 1760

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



1771
1772
1773
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 1771

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



1783
1784
1785
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 1783

def rerank_config
  @rerank_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1790
1791
1792
1793
1794
1795
1796
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 1790

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