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.



11003
11004
11005
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 11003

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


10859
10860
10861
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10859

def boost_control_ids
  @boost_control_ids
end

#create_timeString

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

Returns:

  • (String)


10864
10865
10866
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10864

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)


10871
10872
10873
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10871

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


10879
10880
10881
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10879

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)


10889
10890
10891
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10889

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



10894
10895
10896
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10894

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


10901
10902
10903
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10901

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


10907
10908
10909
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10907

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


10914
10915
10916
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10914

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


10928
10929
10930
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10928

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)


10936
10937
10938
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10936

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)


10943
10944
10945
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10943

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


10951
10952
10953
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10951

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)


10969
10970
10971
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10969

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


10976
10977
10978
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10976

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


10983
10984
10985
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10983

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)


10989
10990
10991
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10989

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


10996
10997
10998
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 10996

def synonyms_control_ids
  @synonyms_control_ids
end

#update_timeString

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

Returns:

  • (String)


11001
11002
11003
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 11001

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



11008
11009
11010
11011
11012
11013
11014
11015
11016
11017
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027
11028
# File 'lib/google/apis/discoveryengine_v1beta/classes.rb', line 11008

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