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.



6888
6889
6890
# File 'lib/google/apis/retail_v2/classes.rb', line 6888

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


6736
6737
6738
# File 'lib/google/apis/retail_v2/classes.rb', line 6736

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)


6743
6744
6745
# File 'lib/google/apis/retail_v2/classes.rb', line 6743

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)


6753
6754
6755
# File 'lib/google/apis/retail_v2/classes.rb', line 6753

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)


6759
6760
6761
# File 'lib/google/apis/retail_v2/classes.rb', line 6759

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


6767
6768
6769
# File 'lib/google/apis/retail_v2/classes.rb', line 6767

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



6772
6773
6774
# File 'lib/google/apis/retail_v2/classes.rb', line 6772

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)


6784
6785
6786
# File 'lib/google/apis/retail_v2/classes.rb', line 6784

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


6793
6794
6795
# File 'lib/google/apis/retail_v2/classes.rb', line 6793

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


6801
6802
6803
# File 'lib/google/apis/retail_v2/classes.rb', line 6801

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


6809
6810
6811
# File 'lib/google/apis/retail_v2/classes.rb', line 6809

def ignore_control_ids
  @ignore_control_ids
end

#ignore_recs_denylistBoolean Also known as: ignore_recs_denylist?

When the flag is enabled, the products in the denylist will not be filtered out in the recommendation filtering results. Corresponds to the JSON property ignoreRecsDenylist

Returns:

  • (Boolean)


6815
6816
6817
# File 'lib/google/apis/retail_v2/classes.rb', line 6815

def ignore_recs_denylist
  @ignore_recs_denylist
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)


6825
6826
6827
# File 'lib/google/apis/retail_v2/classes.rb', line 6825

def model_id
  @model_id
end

#nameString

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

Returns:

  • (String)


6831
6832
6833
# File 'lib/google/apis/retail_v2/classes.rb', line 6831

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


6840
6841
6842
# File 'lib/google/apis/retail_v2/classes.rb', line 6840

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



6845
6846
6847
# File 'lib/google/apis/retail_v2/classes.rb', line 6845

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)


6857
6858
6859
# File 'lib/google/apis/retail_v2/classes.rb', line 6857

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


6864
6865
6866
# File 'lib/google/apis/retail_v2/classes.rb', line 6864

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


6872
6873
6874
# File 'lib/google/apis/retail_v2/classes.rb', line 6872

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


6878
6879
6880
# File 'lib/google/apis/retail_v2/classes.rb', line 6878

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


6886
6887
6888
# File 'lib/google/apis/retail_v2/classes.rb', line 6886

def twoway_synonyms_control_ids
  @twoway_synonyms_control_ids
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
# File 'lib/google/apis/retail_v2/classes.rb', line 6893

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)
  @ignore_recs_denylist = args[:ignore_recs_denylist] if args.key?(:ignore_recs_denylist)
  @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