pub enum RankBy {
VectorSearch {
field: String,
method: VectorSearchMethod,
query_vector: Vec<f32>,
},
FullTextSearch {
field: String,
method: String,
query: String,
},
AttributeOrder {
field: String,
direction: SortDirection,
},
Sum(Vec<RankBy>),
Max(Vec<RankBy>),
Product {
weight: f32,
ranking: Box<RankBy>,
},
}Expand description
Ranking function for unified query API Supports vector search (ANN/kNN), full-text BM25, and attribute ordering
Variants§
VectorSearch
Vector search: uses field, method, and query_vector
FullTextSearch
Full-text BM25 search
AttributeOrder
Attribute ordering
Sum(Vec<RankBy>)
Sum of multiple ranking functions
Max(Vec<RankBy>)
Max of multiple ranking functions
Product
Product with weight
Implementations§
Source§impl RankBy
impl RankBy
Sourcepub fn vector_ann(field: impl Into<String>, query_vector: Vec<f32>) -> Self
pub fn vector_ann(field: impl Into<String>, query_vector: Vec<f32>) -> Self
Create a vector search ranking using ANN
Sourcepub fn ann(query_vector: Vec<f32>) -> Self
pub fn ann(query_vector: Vec<f32>) -> Self
Create a vector search ranking using ANN on the default “vector” field
Sourcepub fn vector_knn(field: impl Into<String>, query_vector: Vec<f32>) -> Self
pub fn vector_knn(field: impl Into<String>, query_vector: Vec<f32>) -> Self
Create a vector search ranking using exact kNN
Sourcepub fn knn(query_vector: Vec<f32>) -> Self
pub fn knn(query_vector: Vec<f32>) -> Self
Create a vector search ranking using kNN on the default “vector” field
Sourcepub fn bm25(field: impl Into<String>, query: impl Into<String>) -> Self
pub fn bm25(field: impl Into<String>, query: impl Into<String>) -> Self
Create a BM25 full-text search ranking
Trait Implementations§
Source§impl<'de> Deserialize<'de> for RankBy
impl<'de> Deserialize<'de> for RankBy
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for RankBy
impl RefUnwindSafe for RankBy
impl Send for RankBy
impl Sync for RankBy
impl Unpin for RankBy
impl UnsafeUnpin for RankBy
impl UnwindSafe for RankBy
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more