pub struct VectorConfig {
pub dims: u32,
pub index_kind: IndexKind,
pub metric: MetricKind,
pub quantization: ScalarKind,
pub connectivity: usize,
pub expansion_add: usize,
pub expansion_search: usize,
pub ivf_nlist: usize,
pub ivf_nprobe: usize,
}Expand description
Tunable parameters for the vector index. Built from CLI flags;
VectorConfig::new supplies the defaults used by tests and any caller that
only cares about the embedding dimension.
Fields§
§dims: u32Embedding dimension. All upserted/queried vectors must match this.
index_kind: IndexKindWhich ANN backend to use.
metric: MetricKindDistance metric used by the index.
quantization: ScalarKindOn-disk/in-index scalar representation (enables quantization). HNSW only.
connectivity: usizeHNSW graph degree (M). Higher = better recall, more memory.
expansion_add: usizeHNSW efConstruction. Higher = better index quality, slower inserts.
expansion_search: usizeHNSW efSearch. Higher = better recall, slower queries.
ivf_nlist: usizeIVF number of Voronoi cells (centroids). IVF only.
ivf_nprobe: usizeIVF default cells probed per query. IVF only.
Implementations§
Trait Implementations§
Source§impl Clone for VectorConfig
impl Clone for VectorConfig
Source§fn clone(&self) -> VectorConfig
fn clone(&self) -> VectorConfig
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 moreimpl Copy for VectorConfig
Auto Trait Implementations§
impl Freeze for VectorConfig
impl RefUnwindSafe for VectorConfig
impl Send for VectorConfig
impl Sync for VectorConfig
impl Unpin for VectorConfig
impl UnsafeUnpin for VectorConfig
impl UnwindSafe for VectorConfig
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> 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>
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