pub struct RankHooks {
pub seed_providers: Vec<SeedProvider>,
pub features: Vec<RankFeatureFn>,
pub rerankers: Vec<RerankerFn>,
pub edge_weights: Vec<EdgeWeightFn>,
pub similarities: Vec<SimilarityFn>,
pub candidates: Vec<CandidateProvider>,
pub profiles: BTreeMap<String, BlendWeights>,
}Fields§
§seed_providers: Vec<SeedProvider>§features: Vec<RankFeatureFn>§rerankers: Vec<RerankerFn>§edge_weights: Vec<EdgeWeightFn>§similarities: Vec<SimilarityFn>Pairwise item similarity for MMR diversification. First provider returning a nonzero value wins (deterministic chain order); the built-in default (same-group => 1.0) runs last.
candidates: Vec<CandidateProvider>Extra candidate providers (spec 18): merged with the lexical base by canonical id, max score wins. Deterministic chain order.
profiles: BTreeMap<String, BlendWeights>Named blend profiles: profile name -> per-feature weight overrides for the linear blend (feature keys: task_ppr, global_ppr, lexical, semantic, confidence, criticality, change_risk, novelty). Missing keys keep default weights. Applied inside the same linear math; recorded in reasons.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for RankHooks
impl !UnwindSafe for RankHooks
impl Freeze for RankHooks
impl Send for RankHooks
impl Sync for RankHooks
impl Unpin for RankHooks
impl UnsafeUnpin for RankHooks
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