Class: Google::Apis::RetailV2::GoogleCloudRetailV2ServingConfig

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

Overview

Configures metadata that is used to generate serving time results (e.g. search results or recommendation predictions).

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudRetailV2ServingConfig

Returns a new instance of GoogleCloudRetailV2ServingConfig.



4875
4876
4877
# File 'lib/google/apis/retail_v2/classes.rb', line 4875

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

Instance Attribute Details

#boost_control_idsArray<String>

Condition boost specifications. If a product matches multiple conditions in the specifications, boost scores from these specifications are all applied and combined in a non-linear way. Maximum number of specifications is 100. Notice that if both ServingConfig.boost_control_ids and SearchRequest.boost_spec are set, the boost conditions from both places are evaluated. If a search request matches multiple boost conditions, the final boost score is equal to the sum of the boost scores from all matched boost conditions. Can only be set if solution_types is SOLUTION_TYPE_SEARCH. Corresponds to the JSON property boostControlIds

Returns:

  • (Array<String>)


4730
4731
4732
# File 'lib/google/apis/retail_v2/classes.rb', line 4730

def boost_control_ids
  @boost_control_ids
end

#display_nameString

Required. The human readable serving config display name. Used in Retail UI. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned. Corresponds to the JSON property displayName

Returns:

  • (String)


4737
4738
4739
# File 'lib/google/apis/retail_v2/classes.rb', line 4737

def display_name
  @display_name
end

#diversity_levelString

How much diversity to use in recommendation model results e.g. medium- diversity or high-diversity. Currently supported values: * no-diversity * low-diversity * medium-diversity * high-diversity * auto-diversity If not specified, we choose default based on recommendation model type. Default value: no-diversity. Can only be set if solution_types is SOLUTION_TYPE_RECOMMENDATION. Corresponds to the JSON property diversityLevel

Returns:

  • (String)


4747
4748
4749
# File 'lib/google/apis/retail_v2/classes.rb', line 4747

def diversity_level
  @diversity_level
end

#diversity_typeString

What kind of diversity to use - data driven or rule based. If unset, the server behavior defaults to RULE_BASED_DIVERSITY. Corresponds to the JSON property diversityType

Returns:

  • (String)


4753
4754
4755
# File 'lib/google/apis/retail_v2/classes.rb', line 4753

def diversity_type
  @diversity_type
end

#do_not_associate_control_idsArray<String>

Condition do not associate specifications. If multiple do not associate conditions match, all matching do not associate controls in the list will execute. - Order does not matter. - Maximum number of specifications is 100. Can only be set if solution_types is SOLUTION_TYPE_SEARCH. Corresponds to the JSON property doNotAssociateControlIds

Returns:

  • (Array<String>)


4761
4762
4763
# File 'lib/google/apis/retail_v2/classes.rb', line 4761

def do_not_associate_control_ids
  @do_not_associate_control_ids
end

#dynamic_facet_specGoogle::Apis::RetailV2::GoogleCloudRetailV2SearchRequestDynamicFacetSpec

The specifications of dynamically generated facets. Corresponds to the JSON property dynamicFacetSpec



4766
4767
4768
# File 'lib/google/apis/retail_v2/classes.rb', line 4766

def dynamic_facet_spec
  @dynamic_facet_spec
end

#enable_category_filter_levelString

Whether to add additional category filters on the similar-items model. If not specified, we enable it by default. Allowed values are: * no-category- match: No additional filtering of original results from the model and the customer's filters. * relaxed-category-match: Only keep results with categories that match at least one item categories in the PredictRequests's context item. * If customer also sends filters in the PredictRequest, then the results will satisfy both conditions (user given and category match). Can only be set if solution_types is SOLUTION_TYPE_RECOMMENDATION. Corresponds to the JSON property enableCategoryFilterLevel

Returns:

  • (String)


4778
4779
4780
# File 'lib/google/apis/retail_v2/classes.rb', line 4778

def enable_category_filter_level
  @enable_category_filter_level
end

#facet_control_idsArray<String>

Facet specifications for faceted search. If empty, no facets are returned. The ids refer to the ids of Control resources with only the Facet control set. These controls are assumed to be in the same Catalog as the ServingConfig. A maximum of 100 values are allowed. Otherwise, an INVALID_ARGUMENT error is returned. Can only be set if solution_types is SOLUTION_TYPE_SEARCH. Corresponds to the JSON property facetControlIds

Returns:

  • (Array<String>)


4787
4788
4789
# File 'lib/google/apis/retail_v2/classes.rb', line 4787

def facet_control_ids
  @facet_control_ids
end

#filter_control_idsArray<String>

Condition filter specifications. If a product matches multiple conditions in the specifications, filters from these specifications are all applied and combined via the AND operator. Maximum number of specifications is 100. Can only be set if solution_types is SOLUTION_TYPE_SEARCH. Corresponds to the JSON property filterControlIds

Returns:

  • (Array<String>)


4795
4796
4797
# File 'lib/google/apis/retail_v2/classes.rb', line 4795

def filter_control_ids
  @filter_control_ids
end

#ignore_control_idsArray<String>

Condition ignore specifications. If multiple ignore conditions match, all matching ignore controls in the list will execute. - Order does not matter. - Maximum number of specifications is 100. Can only be set if solution_types is SOLUTION_TYPE_SEARCH. Corresponds to the JSON property ignoreControlIds

Returns:

  • (Array<String>)


4803
4804
4805
# File 'lib/google/apis/retail_v2/classes.rb', line 4803

def ignore_control_ids
  @ignore_control_ids
end

#model_idString

The id of the model in the same Catalog to use at serving time. Currently only RecommendationModels are supported: https://cloud.google.com/retail/ recommendations-ai/docs/create-models Can be changed but only to a compatible model (e.g. others-you-may-like CTR to others-you-may-like CVR). Required when solution_types is SOLUTION_TYPE_RECOMMENDATION. Corresponds to the JSON property modelId

Returns:

  • (String)


4812
4813
4814
# File 'lib/google/apis/retail_v2/classes.rb', line 4812

def model_id
  @model_id
end

#nameString

Immutable. Fully qualified name projects/*/locations/global/catalogs/*/ servingConfig/* Corresponds to the JSON property name

Returns:

  • (String)


4818
4819
4820
# File 'lib/google/apis/retail_v2/classes.rb', line 4818

def name
  @name
end

#oneway_synonyms_control_idsArray<String>

Condition oneway synonyms specifications. If multiple oneway synonyms conditions match, all matching oneway synonyms controls in the list will execute. Order of controls in the list will not matter. Maximum number of specifications is 100. Can only be set if solution_types is SOLUTION_TYPE_SEARCH. Corresponds to the JSON property onewaySynonymsControlIds

Returns:

  • (Array<String>)


4827
4828
4829
# File 'lib/google/apis/retail_v2/classes.rb', line 4827

def oneway_synonyms_control_ids
  @oneway_synonyms_control_ids
end

#personalization_specGoogle::Apis::RetailV2::GoogleCloudRetailV2SearchRequestPersonalizationSpec

The specification for personalization. Corresponds to the JSON property personalizationSpec



4832
4833
4834
# File 'lib/google/apis/retail_v2/classes.rb', line 4832

def personalization_spec
  @personalization_spec
end

#price_reranking_levelString

How much price ranking we want in serving results. Price reranking causes product items with a similar recommendation probability to be ordered by price, with the highest-priced items first. This setting could result in a decrease in click-through and conversion rates. Allowed values are: * no-price- reranking * low-price-reranking * medium-price-reranking * high-price- reranking If not specified, we choose default based on model type. Default value: no-price-reranking. Can only be set if solution_types is SOLUTION_TYPE_RECOMMENDATION. Corresponds to the JSON property priceRerankingLevel

Returns:

  • (String)


4844
4845
4846
# File 'lib/google/apis/retail_v2/classes.rb', line 4844

def price_reranking_level
  @price_reranking_level
end

#redirect_control_idsArray<String>

Condition redirect specifications. Only the first triggered redirect action is applied, even if multiple apply. Maximum number of specifications is 1000. Can only be set if solution_types is SOLUTION_TYPE_SEARCH. Corresponds to the JSON property redirectControlIds

Returns:

  • (Array<String>)


4851
4852
4853
# File 'lib/google/apis/retail_v2/classes.rb', line 4851

def redirect_control_ids
  @redirect_control_ids
end

#replacement_control_idsArray<String>

Condition replacement specifications. - Applied according to the order in the list. - A previously replaced term can not be re-replaced. - Maximum number of specifications is 100. Can only be set if solution_types is SOLUTION_TYPE_SEARCH. Corresponds to the JSON property replacementControlIds

Returns:

  • (Array<String>)


4859
4860
4861
# File 'lib/google/apis/retail_v2/classes.rb', line 4859

def replacement_control_ids
  @replacement_control_ids
end

#solution_typesArray<String>

Required. Immutable. Specifies the solution types that a serving config can be associated with. Currently we support setting only one type of solution. Corresponds to the JSON property solutionTypes

Returns:

  • (Array<String>)


4865
4866
4867
# File 'lib/google/apis/retail_v2/classes.rb', line 4865

def solution_types
  @solution_types
end

#twoway_synonyms_control_idsArray<String>

Condition synonyms specifications. If multiple syonyms conditions match, all matching synonyms control in the list will execute. Order of controls in the list will not matter. Maximum number of specifications is 100. Can only be set if solution_types is SOLUTION_TYPE_SEARCH. Corresponds to the JSON property twowaySynonymsControlIds

Returns:

  • (Array<String>)


4873
4874
4875
# File 'lib/google/apis/retail_v2/classes.rb', line 4873

def twoway_synonyms_control_ids
  @twoway_synonyms_control_ids
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
# File 'lib/google/apis/retail_v2/classes.rb', line 4880

def update!(**args)
  @boost_control_ids = args[:boost_control_ids] if args.key?(:boost_control_ids)
  @display_name = args[:display_name] if args.key?(:display_name)
  @diversity_level = args[:diversity_level] if args.key?(:diversity_level)
  @diversity_type = args[:diversity_type] if args.key?(:diversity_type)
  @do_not_associate_control_ids = args[:do_not_associate_control_ids] if args.key?(:do_not_associate_control_ids)
  @dynamic_facet_spec = args[:dynamic_facet_spec] if args.key?(:dynamic_facet_spec)
  @enable_category_filter_level = args[:enable_category_filter_level] if args.key?(:enable_category_filter_level)
  @facet_control_ids = args[:facet_control_ids] if args.key?(:facet_control_ids)
  @filter_control_ids = args[:filter_control_ids] if args.key?(:filter_control_ids)
  @ignore_control_ids = args[:ignore_control_ids] if args.key?(:ignore_control_ids)
  @model_id = args[:model_id] if args.key?(:model_id)
  @name = args[:name] if args.key?(:name)
  @oneway_synonyms_control_ids = args[:oneway_synonyms_control_ids] if args.key?(:oneway_synonyms_control_ids)
  @personalization_spec = args[:personalization_spec] if args.key?(:personalization_spec)
  @price_reranking_level = args[:price_reranking_level] if args.key?(:price_reranking_level)
  @redirect_control_ids = args[:redirect_control_ids] if args.key?(:redirect_control_ids)
  @replacement_control_ids = args[:replacement_control_ids] if args.key?(:replacement_control_ids)
  @solution_types = args[:solution_types] if args.key?(:solution_types)
  @twoway_synonyms_control_ids = args[:twoway_synonyms_control_ids] if args.key?(:twoway_synonyms_control_ids)
end