pub struct PrismConfig {}Expand description
Configuration for PRISM index construction.
Fields§
§m_local: usizeLocal degree (edges within each leaf cell).
m_greedy: usizeGreedy cross-partition degree.
m_random: usizeRandom cross-partition degree (must be even).
t: usizeCovering strength for attribute-diverse selection.
alpha: f32Proximity-diversity tradeoff for cross-neighbor selection (0 = pure diversity).
vamana_alpha: f32Vamana pruning parameter (standard DiskANN: 1.2).
beam_width: usizeBeam width for candidate search during construction (paper: 10 * M_g).
metric: MetricDistance metric.
sigma_high: f32Selectivity threshold for HIGH regime.
sigma_low: f32Selectivity threshold for LOW regime.
beta: f32Bridge budget multiplier for MID regime.
epsilon: f32Search pruning tolerance for filtered queries.
binary_rerank: usizeBinary pre-filter rerank factor. Top binary_rerank * ef Hamming candidates
are reranked with SQ8. 0 disables binary pre-filter.
Trait Implementations§
Source§impl Clone for PrismConfig
impl Clone for PrismConfig
Source§fn clone(&self) -> PrismConfig
fn clone(&self) -> PrismConfig
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 moreSource§impl Debug for PrismConfig
impl Debug for PrismConfig
Auto Trait Implementations§
impl Freeze for PrismConfig
impl RefUnwindSafe for PrismConfig
impl Send for PrismConfig
impl Sync for PrismConfig
impl Unpin for PrismConfig
impl UnsafeUnpin for PrismConfig
impl UnwindSafe for PrismConfig
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
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,
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