MRR Reranker
This reranker uses the Mean Reciprocal Rank (MRR) algorithm to combine and rerank search results from vector and full-text search. You can use this reranker by passingMRRReranker() to the rerank() method. The MRR algorithm calculates the average of reciprocal ranks across different search results, providing a balanced way to merge results from multiple ranking systems.
Note: Supported query types – Hybrid and Multivector search.
Accepted Arguments
| Argument | Type | Default | Description |
|---|---|---|---|
weight_vector | float | 0.5 | Weight for vector search results (0.0 to 1.0). |
weight_fts | float | 0.5 | Weight for FTS search results (0.0 to 1.0). |
return_score | str | "relevance" | Options are “relevance” or “all”. The type of score to return. If “relevance”, will return only the _relevance_score. If “all”, will return all scores from the vector and FTS search along with the relevance score. |
weight_vector + weight_fts must equal 1.0.
Supported Scores for each query type
You can specify the type of scores you want the reranker to return. The following are the supported scores for each query type:Hybrid Search
return_score | Status | Description |
|---|---|---|
relevance | ✅ Supported | Results only have the _relevance_score column. |
all | ✅ Supported | Results have vector(_distance) and FTS(score) along with Hybrid Search score(_relevance_score). |
Multivector Search
return_score | Status | Description |
|---|---|---|
relevance | ✅ Supported | Results only have the _relevance_score column. |
all | ✅ Supported | Results have vector distances from all searches along with _relevance_score. |