Class: Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1SearchRequestBoostSpecConditionBoostSpec

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

Overview

Boost applies to documents which match a condition.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudDiscoveryengineV1SearchRequestBoostSpecConditionBoostSpec

Returns a new instance of GoogleCloudDiscoveryengineV1SearchRequestBoostSpecConditionBoostSpec.



8123
8124
8125
# File 'lib/google/apis/discoveryengine_v1/classes.rb', line 8123

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

Instance Attribute Details

#boostFloat

Strength of the condition boost, which should be in [-1, 1]. Negative boost means demotion. Default is 0.0. Setting to 1.0 gives the document a big promotion. However, it does not necessarily mean that the boosted document will be the top result at all times, nor that other documents will be excluded. Results could still be shown even when none of them matches the condition. And results that are significantly more relevant to the search query can still trump your heavily favored but irrelevant documents. Setting to -1.0 gives the document a big demotion. However, results that are deeply relevant might still be shown. The document will have an upstream battle to get a fairly high ranking, but it is not blocked out completely. Setting to 0.0 means no boost applied. The boosting condition is ignored. Only one of the (condition, boost) combination or the boost_control_spec below are set. If both are set then the global boost is ignored and the more fine-grained boost_control_spec is applied. Corresponds to the JSON property boost

Returns:

  • (Float)


8105
8106
8107
# File 'lib/google/apis/discoveryengine_v1/classes.rb', line 8105

def boost
  @boost
end

#boost_control_specGoogle::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1SearchRequestBoostSpecConditionBoostSpecBoostControlSpec

Specification for custom ranking based on customer specified attribute value. It provides more controls for customized ranking than the simple (condition, boost) combination above. Corresponds to the JSON property boostControlSpec



8112
8113
8114
# File 'lib/google/apis/discoveryengine_v1/classes.rb', line 8112

def boost_control_spec
  @boost_control_spec
end

#conditionString

An expression which specifies a boost condition. The syntax and supported fields are the same as a filter expression. See SearchRequest.filter for detail syntax and limitations. Examples: * To boost documents with document ID "doc_1" or "doc_2", and color "Red" or "Blue": (document_id: ANY("doc_1", " doc_2")) AND (color: ANY("Red", "Blue")) Corresponds to the JSON property condition

Returns:

  • (String)


8121
8122
8123
# File 'lib/google/apis/discoveryengine_v1/classes.rb', line 8121

def condition
  @condition
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8128
8129
8130
8131
8132
# File 'lib/google/apis/discoveryengine_v1/classes.rb', line 8128

def update!(**args)
  @boost = args[:boost] if args.key?(:boost)
  @boost_control_spec = args[:boost_control_spec] if args.key?(:boost_control_spec)
  @condition = args[:condition] if args.key?(:condition)
end