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.



12719
12720
12721
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12719

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


12575
12576
12577
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12575

def boost_control_ids
  @boost_control_ids
end

#create_timeString

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

Returns:

  • (String)


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

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)


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

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


12595
12596
12597
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12595

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)


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

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



12610
12611
12612
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12610

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


12617
12618
12619
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12617

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


12623
12624
12625
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12623

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


12630
12631
12632
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12630

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


12644
12645
12646
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12644

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)


12652
12653
12654
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12652

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)


12659
12660
12661
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12659

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


12667
12668
12669
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12667

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)


12685
12686
12687
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12685

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


12692
12693
12694
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12692

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


12699
12700
12701
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12699

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)


12705
12706
12707
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12705

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


12712
12713
12714
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12712

def synonyms_control_ids
  @synonyms_control_ids
end

#update_timeString

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

Returns:

  • (String)


12717
12718
12719
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12717

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



12724
12725
12726
12727
12728
12729
12730
12731
12732
12733
12734
12735
12736
12737
12738
12739
12740
12741
12742
12743
12744
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 12724

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