pub enum RetrievalExpr {
Show 35 variants
Empty,
Term {
query: String,
field: Option<String>,
scoring: Option<TextScoringMode>,
},
Phrase {
query: String,
field: Option<String>,
scoring: Option<TextScoringMode>,
},
Filter {
field: String,
predicate: Predicate,
source: Option<Box<Self>>,
},
BayesianScore {
source: Box<Self>,
field: Option<String>,
},
BayesianMatchWithPrior {
field: String,
query: String,
prior_field: String,
mode: ExternalPriorMode,
},
Intersect(Vec<Self>),
Union(Vec<Self>),
Complement(Box<Self>),
Composed(Vec<Self>),
EncodeGraphPosting {
source: Box<Self>,
},
KNN {
query_vector: Vec<f32>,
k: usize,
field: String,
},
CalibratedVectorMatch {
query_vector: Vec<f32>,
k: usize,
field: String,
threshold: Option<f64>,
},
CosineProbability(Box<Self>),
BayesianEvidenceFusion {
signals: Vec<Self>,
base_rate: Option<f64>,
},
RobustPositiveEvidencePool {
signals: Vec<Self>,
alpha: f64,
gating: GatingSpec,
weights: Option<Vec<f64>>,
logit_min: Option<Vec<f64>>,
logit_max: Option<Vec<f64>>,
adaptive_weights: bool,
},
AttentionFusion {
signals: Vec<Self>,
options: AttentionSpec,
function_name: String,
},
LearnedFusion {
signals: Vec<Self>,
alpha: f64,
},
SparseThreshold {
source: Box<Self>,
threshold: f64,
},
Traverse {
start_vertex: u64,
graph: String,
label: Option<String>,
max_hops: usize,
},
GraphNeighbors {
vertex: u64,
graph: String,
label: Option<String>,
direction: Direction,
},
GraphEdges {
graph: String,
label: Option<String>,
},
RegularPathQuery {
rpq_source: String,
start_vertex: u64,
graph: String,
},
TemporalTraverse {
start_vertex: u64,
graph: String,
label: Option<String>,
max_hops: usize,
temporal_filter: Option<TemporalFilterIR>,
},
PageRank {
graph: String,
},
HITS {
graph: String,
},
BetweennessCentrality {
graph: String,
},
DeepPredict {
model: String,
},
MultiStage {
stages: Vec<MultiStageEntry>,
},
MultiFieldSearch {
fields: Vec<String>,
queries: Vec<String>,
weights: Option<Vec<f64>>,
},
TextSimilarityJoin {
left: Box<Self>,
right: Box<Self>,
threshold: f64,
},
VectorSimilarityJoin {
left: Box<Self>,
right: Box<Self>,
threshold: f64,
},
GraphJoin {
left: Box<Self>,
right: Box<Self>,
label: Option<String>,
graph: String,
},
HybridJoin {
left: Box<Self>,
right: Box<Self>,
},
CrossParadigmJoin {
left: Box<Self>,
right: Box<Self>,
},
}Expand description
SQL-owned retrieval algebra. Physical scorers, fusers, closures, index choices and top-k strategies do not belong to this representation.
Variants§
Empty
Term
Phrase
Preserve the complete quoted input for one field-specific token-graph analysis.
Filter
BayesianScore
BayesianMatchWithPrior
Intersect(Vec<Self>)
Union(Vec<Self>)
Complement(Box<Self>)
Composed(Vec<Self>)
EncodeGraphPosting
KNN
CalibratedVectorMatch
CosineProbability(Box<Self>)
BayesianEvidenceFusion
RobustPositiveEvidencePool
Fields
§
gating: GatingSpecAttentionFusion
LearnedFusion
SparseThreshold
Traverse
GraphNeighbors
GraphEdges
RegularPathQuery
TemporalTraverse
Fields
§
temporal_filter: Option<TemporalFilterIR>PageRank
HITS
BetweennessCentrality
DeepPredict
MultiStage
Fields
§
stages: Vec<MultiStageEntry>MultiFieldSearch
TextSimilarityJoin
VectorSimilarityJoin
GraphJoin
HybridJoin
CrossParadigmJoin
Trait Implementations§
Source§impl Clone for RetrievalExpr
impl Clone for RetrievalExpr
Source§fn clone(&self) -> RetrievalExpr
fn clone(&self) -> RetrievalExpr
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for RetrievalExpr
impl RefUnwindSafe for RetrievalExpr
impl Send for RetrievalExpr
impl Sync for RetrievalExpr
impl Unpin for RetrievalExpr
impl UnsafeUnpin for RetrievalExpr
impl UnwindSafe for RetrievalExpr
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more