pub struct HnswConfig {
pub m: Option<usize>,
pub ef_construction: Option<usize>,
}Expand description
Configuration for HNSW indexes.
HNSW builds a multi-layered graph that enables efficient approximate nearest-neighbor search without a separate training step.
§Tuning Guidelines
m: Number of connections per node. Higher = better recall, more memory. Default: 16. Range: 2-100.ef_construction: Size of the dynamic candidate list during index build. Higher = better recall, slower build. Default: 64. Range: 4-1000.
Fields§
§m: Option<usize>Maximum number of connections per node per layer.
Higher values improve recall but increase memory and build time. Default: 16.
ef_construction: Option<usize>Size of the dynamic candidate list during construction.
Higher values improve index quality but slow down build. Default: 64.
Implementations§
Source§impl HnswConfig
impl HnswConfig
Sourcepub fn ef_construction(self, ef: usize) -> Self
pub fn ef_construction(self, ef: usize) -> Self
Set the ef_construction parameter.
Sourcepub fn high_recall() -> Self
pub fn high_recall() -> Self
High-recall configuration (slower build, better search quality).
Sourcepub fn fast_build() -> Self
pub fn fast_build() -> Self
Fast-build configuration (faster build, lower recall).
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
Source§impl<'de> Deserialize<'de> for HnswConfig
impl<'de> Deserialize<'de> for HnswConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for HnswConfig
impl PartialEq for HnswConfig
Source§impl Serialize for HnswConfig
impl Serialize for HnswConfig
impl Eq for HnswConfig
impl StructuralPartialEq 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