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.



5513
5514
5515
# File 'lib/google/apis/retail_v2/classes.rb', line 5513

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


5361
5362
5363
# File 'lib/google/apis/retail_v2/classes.rb', line 5361

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)


5368
5369
5370
# File 'lib/google/apis/retail_v2/classes.rb', line 5368

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)


5378
5379
5380
# File 'lib/google/apis/retail_v2/classes.rb', line 5378

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)


5384
5385
5386
# File 'lib/google/apis/retail_v2/classes.rb', line 5384

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


5392
5393
5394
# File 'lib/google/apis/retail_v2/classes.rb', line 5392

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



5397
5398
5399
# File 'lib/google/apis/retail_v2/classes.rb', line 5397

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)


5409
5410
5411
# File 'lib/google/apis/retail_v2/classes.rb', line 5409

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


5418
5419
5420
# File 'lib/google/apis/retail_v2/classes.rb', line 5418

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


5426
5427
5428
# File 'lib/google/apis/retail_v2/classes.rb', line 5426

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


5434
5435
5436
# File 'lib/google/apis/retail_v2/classes.rb', line 5434

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)


5440
5441
5442
# File 'lib/google/apis/retail_v2/classes.rb', line 5440

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)


5450
5451
5452
# File 'lib/google/apis/retail_v2/classes.rb', line 5450

def model_id
  @model_id
end

#nameString

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

Returns:

  • (String)


5456
5457
5458
# File 'lib/google/apis/retail_v2/classes.rb', line 5456

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


5465
5466
5467
# File 'lib/google/apis/retail_v2/classes.rb', line 5465

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



5470
5471
5472
# File 'lib/google/apis/retail_v2/classes.rb', line 5470

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)


5482
5483
5484
# File 'lib/google/apis/retail_v2/classes.rb', line 5482

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


5489
5490
5491
# File 'lib/google/apis/retail_v2/classes.rb', line 5489

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


5497
5498
5499
# File 'lib/google/apis/retail_v2/classes.rb', line 5497

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


5503
5504
5505
# File 'lib/google/apis/retail_v2/classes.rb', line 5503

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


5511
5512
5513
# File 'lib/google/apis/retail_v2/classes.rb', line 5511

def twoway_synonyms_control_ids
  @twoway_synonyms_control_ids
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
5533
5534
5535
5536
5537
5538
5539
# File 'lib/google/apis/retail_v2/classes.rb', line 5518

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