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.



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

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>)


4620
4621
4622
# File 'lib/google/apis/retail_v2/classes.rb', line 4620

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)


4627
4628
4629
# File 'lib/google/apis/retail_v2/classes.rb', line 4627

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)


4637
4638
4639
# File 'lib/google/apis/retail_v2/classes.rb', line 4637

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)


4643
4644
4645
# File 'lib/google/apis/retail_v2/classes.rb', line 4643

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>)


4651
4652
4653
# File 'lib/google/apis/retail_v2/classes.rb', line 4651

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



4656
4657
4658
# File 'lib/google/apis/retail_v2/classes.rb', line 4656

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)


4668
4669
4670
# File 'lib/google/apis/retail_v2/classes.rb', line 4668

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>)


4677
4678
4679
# File 'lib/google/apis/retail_v2/classes.rb', line 4677

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>)


4685
4686
4687
# File 'lib/google/apis/retail_v2/classes.rb', line 4685

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>)


4693
4694
4695
# File 'lib/google/apis/retail_v2/classes.rb', line 4693

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)


4702
4703
4704
# File 'lib/google/apis/retail_v2/classes.rb', line 4702

def model_id
  @model_id
end

#nameString

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

Returns:

  • (String)


4708
4709
4710
# File 'lib/google/apis/retail_v2/classes.rb', line 4708

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>)


4717
4718
4719
# File 'lib/google/apis/retail_v2/classes.rb', line 4717

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



4722
4723
4724
# File 'lib/google/apis/retail_v2/classes.rb', line 4722

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)


4734
4735
4736
# File 'lib/google/apis/retail_v2/classes.rb', line 4734

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>)


4741
4742
4743
# File 'lib/google/apis/retail_v2/classes.rb', line 4741

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>)


4749
4750
4751
# File 'lib/google/apis/retail_v2/classes.rb', line 4749

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>)


4755
4756
4757
# File 'lib/google/apis/retail_v2/classes.rb', line 4755

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>)


4763
4764
4765
# File 'lib/google/apis/retail_v2/classes.rb', line 4763

def twoway_synonyms_control_ids
  @twoway_synonyms_control_ids
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4770
4771
4772
4773
4774
4775
4776
4777
4778
4779
4780
4781
4782
4783
4784
4785
4786
4787
4788
4789
4790
# File 'lib/google/apis/retail_v2/classes.rb', line 4770

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