Struct elasticsearch_dsl::search::queries::compound::FunctionScoreQuery
source · pub struct FunctionScoreQuery { /* private fields */ }
Expand description
The function_score
allows you to modify the score of documents that are retrieved by a query.
This can be useful if, for example, a score function is computationally expensive and it is sufficient to compute the score on a filtered set of documents.
To use function_score
, the user has to define a query and one or more functions, that compute
a new score for each document returned by the query.
To create function_score query:
Query::function_score(Query::term("test", 1))
.function(RandomScore::new())
.function(Weight::new(2.0))
.max_boost(2.2)
.min_score(2.3)
.score_mode(FunctionScoreMode::Avg)
.boost_mode(FunctionBoostMode::Max)
.boost(1.1)
.name("test");
https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-function-score-query.html
Implementations§
source§impl FunctionScoreQuery
impl FunctionScoreQuery
sourcepub fn function<T>(self, function: T) -> Selfwhere
T: Into<Option<Function>>,
pub fn function<T>(self, function: T) -> Selfwhere
T: Into<Option<Function>>,
Push function to the list
sourcepub fn max_boost<T>(self, max_boost: T) -> Selfwhere
T: AsPrimitive<f32>,
pub fn max_boost<T>(self, max_boost: T) -> Selfwhere
T: AsPrimitive<f32>,
Maximum score value after applying all the functions
sourcepub fn min_score<T>(self, min_score: T) -> Selfwhere
T: Into<f32>,
pub fn min_score<T>(self, min_score: T) -> Selfwhere
T: Into<f32>,
By default, modifying the score does not change which documents match. To exclude documents
that do not meet a certain score threshold the min_score
parameter can be set to the
desired score threshold.
sourcepub fn score_mode(self, score_mode: FunctionScoreMode) -> Self
pub fn score_mode(self, score_mode: FunctionScoreMode) -> Self
Each document is scored by the defined functions. The parameter score_mode
specifies how
the computed scores are combined
sourcepub fn boost_mode(self, boost_mode: FunctionBoostMode) -> Self
pub fn boost_mode(self, boost_mode: FunctionBoostMode) -> Self
The newly computed score is combined with the score of the query. The parameter
boost_mode
defines how.
sourcepub fn boost<T>(self, boost: T) -> Selfwhere
T: AsPrimitive<f32>,
pub fn boost<T>(self, boost: T) -> Selfwhere
T: AsPrimitive<f32>,
Floating point number used to decrease or increase the
relevance scores
of a query. Defaults to 1.0
.
You can use the boost parameter to adjust relevance scores for searches containing two or more queries.
Boost values are relative to the default value of 1.0
.
A boost value between 0 and 1.0
decreases the relevance score.
A value greater than 1.0
increases the relevance score.
Trait Implementations§
source§impl Clone for FunctionScoreQuery
impl Clone for FunctionScoreQuery
source§fn clone(&self) -> FunctionScoreQuery
fn clone(&self) -> FunctionScoreQuery
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more