Class: Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaServingConfig

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

Overview

Configures metadata that is used to generate serving time results (e.g. search results or recommendation predictions). The ServingConfig is passed in the search and predict request and generates results.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudDiscoveryengineV1betaServingConfig

Returns a new instance of GoogleCloudDiscoveryengineV1betaServingConfig.



12607
12608
12609
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12607

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

Instance Attribute Details

#boost_control_idsArray<String>

Boost controls to use in serving path. All triggered boost controls will be applied. Boost controls must be in the same data store as the serving config. Maximum of 20 boost controls. Corresponds to the JSON property boostControlIds

Returns:

  • (Array<String>)


12463
12464
12465
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12463

def boost_control_ids
  @boost_control_ids
end

#create_timeString

Output only. ServingConfig created timestamp. Corresponds to the JSON property createTime

Returns:

  • (String)


12468
12469
12470
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12468

def create_time
  @create_time
end

#display_nameString

Required. The human readable serving config display name. Used in Discovery 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)


12475
12476
12477
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12475

def display_name
  @display_name
end

#dissociate_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 SolutionType is SOLUTION_TYPE_SEARCH. Corresponds to the JSON property dissociateControlIds

Returns:

  • (Array<String>)


12483
12484
12485
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12483

def dissociate_control_ids
  @dissociate_control_ids
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 SolutionType is SOLUTION_TYPE_RECOMMENDATION. Corresponds to the JSON property diversityLevel

Returns:

  • (String)


12493
12494
12495
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12493

def diversity_level
  @diversity_level
end

#embedding_configGoogle::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaEmbeddingConfig

Defines embedding config, used for bring your own embeddings feature. Corresponds to the JSON property embeddingConfig



12498
12499
12500
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12498

def embedding_config
  @embedding_config
end

#filter_control_idsArray<String>

Filter controls to use in serving path. All triggered filter controls will be applied. Filter controls must be in the same data store as the serving config. Maximum of 20 filter controls. Corresponds to the JSON property filterControlIds

Returns:

  • (Array<String>)


12505
12506
12507
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12505

def filter_control_ids
  @filter_control_ids
end

#generic_configGoogle::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaServingConfigGenericConfig

Specifies the configurations needed for Generic Discovery.Currently we support:

  • content_search_spec: configuration for generic content search. Corresponds to the JSON property genericConfig


12511
12512
12513
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12511

def generic_config
  @generic_config
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. Corresponds to the JSON property ignoreControlIds

Returns:

  • (Array<String>)


12518
12519
12520
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12518

def ignore_control_ids
  @ignore_control_ids
end

#media_configGoogle::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaServingConfigMediaConfig

Specifies the configurations needed for Media Discovery. Currently we support:

  • demote_content_watched: Threshold for watched content demotion. Customers can specify if using watched content demotion or use viewed detail page. Using the content watched demotion, customers need to specify the watched minutes or percentage exceeds the threshold, the content will be demoted in the recommendation result. * promote_fresh_content: cutoff days for fresh content promotion. Customers can specify if using content freshness promotion. If the content was published within the cutoff days, the content will be promoted in the recommendation result. Can only be set if SolutionType is SOLUTION_TYPE_RECOMMENDATION. Corresponds to the JSON property mediaConfig


12532
12533
12534
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12532

def media_config
  @media_config
end

#model_idString

The id of the model to use at serving time. Currently only RecommendationModels are supported. Can be changed but only to a compatible model (e.g. others-you-may-like CTR to others-you-may-like CVR). Required when SolutionType is SOLUTION_TYPE_RECOMMENDATION. Corresponds to the JSON property modelId

Returns:

  • (String)


12540
12541
12542
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12540

def model_id
  @model_id
end

#nameString

Immutable. Fully qualified name projects/project/locations/location/ collections/collection_id/engines/engine_id/servingConfigs/ serving_config_id` Corresponds to the JSON propertyname`

Returns:

  • (String)


12547
12548
12549
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12547

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. Maximum number of specifications is 100. Can only be set if SolutionType is SOLUTION_TYPE_SEARCH. Corresponds to the JSON property onewaySynonymsControlIds

Returns:

  • (Array<String>)


12555
12556
12557
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12555

def oneway_synonyms_control_ids
  @oneway_synonyms_control_ids
end

#ranking_expressionString

The ranking expression controls the customized ranking on retrieval documents. To leverage this, document embedding is required. The ranking expression setting in ServingConfig applies to all search requests served by the serving config. However, if SearchRequest.ranking_expression is specified, it overrides the ServingConfig ranking expression. The ranking expression is a single function or multiple functions that are joined by "+". * ranking_expression = function, " + ", function; Supported functions: * double * relevance_score * double * dotProduct(embedding_field_path) Function variables: relevance_score: pre-defined keywords, used for measure relevance between query and document. embedding_field_path: the document embedding field used with query embedding vector. dotProduct: embedding function between embedding_field_path and query embedding vector. Example ranking expression: If document has an embedding field doc_embedding, the ranking expression could be 0.5 * relevance_score + 0.3 * dotProduct(doc_embedding). Corresponds to the JSON property rankingExpression

Returns:

  • (String)


12573
12574
12575
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12573

def ranking_expression
  @ranking_expression
end

#redirect_control_idsArray<String>

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

Returns:

  • (Array<String>)


12580
12581
12582
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12580

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 SolutionType is SOLUTION_TYPE_SEARCH. Corresponds to the JSON property replacementControlIds

Returns:

  • (Array<String>)


12587
12588
12589
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12587

def replacement_control_ids
  @replacement_control_ids
end

#solution_typeString

Required. Immutable. Specifies the solution type that a serving config can be associated with. Corresponds to the JSON property solutionType

Returns:

  • (String)


12593
12594
12595
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12593

def solution_type
  @solution_type
end

#synonyms_control_idsArray<String>

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

Returns:

  • (Array<String>)


12600
12601
12602
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12600

def synonyms_control_ids
  @synonyms_control_ids
end

#update_timeString

Output only. ServingConfig updated timestamp. Corresponds to the JSON property updateTime

Returns:

  • (String)


12605
12606
12607
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12605

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



12612
12613
12614
12615
12616
12617
12618
12619
12620
12621
12622
12623
12624
12625
12626
12627
12628
12629
12630
12631
12632
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12612

def update!(**args)
  @boost_control_ids = args[:boost_control_ids] if args.key?(:boost_control_ids)
  @create_time = args[:create_time] if args.key?(:create_time)
  @display_name = args[:display_name] if args.key?(:display_name)
  @dissociate_control_ids = args[:dissociate_control_ids] if args.key?(:dissociate_control_ids)
  @diversity_level = args[:diversity_level] if args.key?(:diversity_level)
  @embedding_config = args[:embedding_config] if args.key?(:embedding_config)
  @filter_control_ids = args[:filter_control_ids] if args.key?(:filter_control_ids)
  @generic_config = args[:generic_config] if args.key?(:generic_config)
  @ignore_control_ids = args[:ignore_control_ids] if args.key?(:ignore_control_ids)
  @media_config = args[:media_config] if args.key?(:media_config)
  @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)
  @ranking_expression = args[:ranking_expression] if args.key?(:ranking_expression)
  @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_type = args[:solution_type] if args.key?(:solution_type)
  @synonyms_control_ids = args[:synonyms_control_ids] if args.key?(:synonyms_control_ids)
  @update_time = args[:update_time] if args.key?(:update_time)
end