Skip to main content

ConditionBoostSpec

Struct ConditionBoostSpec 

Source
#[non_exhaustive]
pub struct ConditionBoostSpec { pub condition: String, pub boost: f32, pub boost_control_spec: Option<BoostControlSpec>, /* private fields */ }
Available on crate features assistant-service or conversational-search-service or search-service or serving-config-service only.
Expand description

Boost applies to documents which match a condition.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§condition: String

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"))
§boost: f32

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.

§boost_control_spec: Option<BoostControlSpec>

Complex specification for custom ranking based on customer defined attribute value.

Implementations§

Source§

impl ConditionBoostSpec

Source

pub fn new() -> Self

Source

pub fn set_condition<T: Into<String>>(self, v: T) -> Self

Sets the value of condition.

§Example
let x = ConditionBoostSpec::new().set_condition("example");
Source

pub fn set_boost<T: Into<f32>>(self, v: T) -> Self

Sets the value of boost.

§Example
let x = ConditionBoostSpec::new().set_boost(42.0);
Source

pub fn set_boost_control_spec<T>(self, v: T) -> Self

Sets the value of boost_control_spec.

§Example
use google_cloud_discoveryengine_v1::model::search_request::boost_spec::condition_boost_spec::BoostControlSpec;
let x = ConditionBoostSpec::new().set_boost_control_spec(BoostControlSpec::default()/* use setters */);
Source

pub fn set_or_clear_boost_control_spec<T>(self, v: Option<T>) -> Self

Sets or clears the value of boost_control_spec.

§Example
use google_cloud_discoveryengine_v1::model::search_request::boost_spec::condition_boost_spec::BoostControlSpec;
let x = ConditionBoostSpec::new().set_or_clear_boost_control_spec(Some(BoostControlSpec::default()/* use setters */));
let x = ConditionBoostSpec::new().set_or_clear_boost_control_spec(None::<BoostControlSpec>);

Trait Implementations§

Source§

impl Clone for ConditionBoostSpec

Source§

fn clone(&self) -> ConditionBoostSpec

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ConditionBoostSpec

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for ConditionBoostSpec

Source§

fn default() -> ConditionBoostSpec

Returns the “default value” for a type. Read more
Source§

impl Message for ConditionBoostSpec

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for ConditionBoostSpec

Source§

fn eq(&self, other: &ConditionBoostSpec) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for ConditionBoostSpec

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,