pub struct VSearchParams {
pub ef: usize,
pub rerank: usize,
pub patience: usize,
pub screen_sigmas: f32,
pub screen: bool,
pub fuse: bool,
pub neighbour_cap: usize,
}Expand description
Search parameters of a VGraph.
Fields§
§ef: usizeCandidate pool size (beam width).
rerank: usizeNumber of best pool candidates re-scored with the float query (and the residual code, when built); 0 returns the pool order.
patience: usizeEarly stop: end the traversal once this many consecutive expansions have left the
k best estimates unchanged (0 = the pool rule alone). The pool rule still applies.
screen_sigmas: f32With a screen (see VGraph::from_graph_with): a fresh neighbour gets the 8-bit
estimate only if its 1-bit estimate minus this many standard deviations of the
screen’s error could still enter the full pool. Larger values skip less.
screen: boolConsult the screen when the index has one (false runs the plain search on it).
fuse: boolWith neighbour blocks: fuse the block estimates a vertex receives from every expanded vertex that lists it (precision-weighted by the edge residual’s scale) and re-admit it to the pool when the fused estimate qualifies, instead of keeping its first one.
neighbour_cap: usizePer-row search: estimate only the first this many neighbours of each expanded vertex (lists keep the build’s order, nearest first); 0 = all.
Trait Implementations§
Source§impl Clone for VSearchParams
impl Clone for VSearchParams
Source§fn clone(&self) -> VSearchParams
fn clone(&self) -> VSearchParams
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for VSearchParams
Source§impl Debug for VSearchParams
impl Debug for VSearchParams
Auto Trait Implementations§
impl Freeze for VSearchParams
impl RefUnwindSafe for VSearchParams
impl Send for VSearchParams
impl Sync for VSearchParams
impl Unpin for VSearchParams
impl UnsafeUnpin for VSearchParams
impl UnwindSafe for VSearchParams
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
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> ⓘ
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> ⓘ
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§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.