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.



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

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


5337
5338
5339
# File 'lib/google/apis/retail_v2/classes.rb', line 5337

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)


5344
5345
5346
# File 'lib/google/apis/retail_v2/classes.rb', line 5344

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)


5354
5355
5356
# File 'lib/google/apis/retail_v2/classes.rb', line 5354

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)


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

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


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

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



5373
5374
5375
# File 'lib/google/apis/retail_v2/classes.rb', line 5373

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)


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

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


5394
5395
5396
# File 'lib/google/apis/retail_v2/classes.rb', line 5394

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


5402
5403
5404
# File 'lib/google/apis/retail_v2/classes.rb', line 5402

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


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

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)


5416
5417
5418
# File 'lib/google/apis/retail_v2/classes.rb', line 5416

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)


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

def model_id
  @model_id
end

#nameString

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

Returns:

  • (String)


5432
5433
5434
# File 'lib/google/apis/retail_v2/classes.rb', line 5432

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


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

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



5446
5447
5448
# File 'lib/google/apis/retail_v2/classes.rb', line 5446

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)


5458
5459
5460
# File 'lib/google/apis/retail_v2/classes.rb', line 5458

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


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

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


5473
5474
5475
# File 'lib/google/apis/retail_v2/classes.rb', line 5473

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


5479
5480
5481
# File 'lib/google/apis/retail_v2/classes.rb', line 5479

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


5487
5488
5489
# File 'lib/google/apis/retail_v2/classes.rb', line 5487

def twoway_synonyms_control_ids
  @twoway_synonyms_control_ids
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5494
5495
5496
5497
5498
5499
5500
5501
5502
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
# File 'lib/google/apis/retail_v2/classes.rb', line 5494

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