pub struct HnswConfig {
pub m: usize,
pub m_max0: usize,
pub ef_construction: usize,
pub ef_search: usize,
pub level_lambda: f32,
}Expand description
Configuration parameters for HnswIndex.
Defaults (M=16, ef_construction=200, ef_search=50) are suitable for
high-recall retrieval on dense embeddings up to a few hundred
dimensions. Adjust ef_search upward to trade latency for recall.
Fields§
§m: usizeMaximum number of neighbors per node at level > 0.
m_max0: usizeMaximum number of neighbors per node at level 0
(typically 2 * m).
ef_construction: usizeSize of the dynamic candidate list during construction.
ef_search: usizeDefault size of the dynamic candidate list during search.
level_lambda: f32Level multiplier m_L from the paper. Default 1 / ln(M).
Trait Implementations§
Source§impl Clone for HnswConfig
impl Clone for HnswConfig
Source§fn clone(&self) -> HnswConfig
fn clone(&self) -> HnswConfig
Returns a duplicate of the value. Read more
1.0.0 · 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 HnswConfig
impl Debug for HnswConfig
Source§impl Default for HnswConfig
impl Default for HnswConfig
impl Copy for HnswConfig
Auto Trait Implementations§
impl Freeze for HnswConfig
impl RefUnwindSafe for HnswConfig
impl Send for HnswConfig
impl Sync for HnswConfig
impl Unpin for HnswConfig
impl UnsafeUnpin for HnswConfig
impl UnwindSafe for HnswConfig
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