pub struct VectorFieldAttributes {Show 16 fields
pub algorithm: VectorAlgorithm,
pub dims: usize,
pub distance_metric: VectorDistanceMetric,
pub datatype: VectorDataType,
pub initial_cap: Option<usize>,
pub block_size: Option<usize>,
pub m: Option<usize>,
pub ef_construction: Option<usize>,
pub ef_runtime: Option<usize>,
pub epsilon: Option<f32>,
pub graph_max_degree: Option<usize>,
pub construction_window_size: Option<usize>,
pub search_window_size: Option<usize>,
pub compression: Option<SvsCompressionType>,
pub reduce: Option<usize>,
pub training_threshold: Option<usize>,
}Expand description
Attributes for a vector field.
Fields§
§algorithm: VectorAlgorithmIndex algorithm.
dims: usizeVector dimensions.
distance_metric: VectorDistanceMetricDistance metric.
datatype: VectorDataTypeElement data type.
initial_cap: Option<usize>Optional initial capacity.
block_size: Option<usize>Optional FLAT block size.
m: Option<usize>Optional HNSW M.
ef_construction: Option<usize>Optional HNSW construction EF.
ef_runtime: Option<usize>Optional runtime EF hint.
epsilon: Option<f32>Optional epsilon value.
graph_max_degree: Option<usize>Maximum outgoing edges per node (SVS-VAMANA).
construction_window_size: Option<usize>Build-time candidate window (SVS-VAMANA).
search_window_size: Option<usize>Search-time candidate window (SVS-VAMANA).
compression: Option<SvsCompressionType>Compression type for SVS-VAMANA.
reduce: Option<usize>Dimensionality reduction target for LeanVec compression (SVS-VAMANA).
training_threshold: Option<usize>Minimum vectors before compression training (SVS-VAMANA).
Implementations§
Source§impl VectorFieldAttributes
impl VectorFieldAttributes
Sourcepub fn validate_svs(&self) -> Result<()>
pub fn validate_svs(&self) -> Result<()>
Validates SVS-VAMANA specific constraints.
Call after construction when algorithm == SvsVamana to ensure the
data-type restriction (only Float16/Float32) and LeanVec reduce
constraints are met.
Trait Implementations§
Source§impl Clone for VectorFieldAttributes
impl Clone for VectorFieldAttributes
Source§fn clone(&self) -> VectorFieldAttributes
fn clone(&self) -> VectorFieldAttributes
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 VectorFieldAttributes
impl Debug for VectorFieldAttributes
Source§impl<'de> Deserialize<'de> for VectorFieldAttributes
impl<'de> Deserialize<'de> for VectorFieldAttributes
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
Auto Trait Implementations§
impl Freeze for VectorFieldAttributes
impl RefUnwindSafe for VectorFieldAttributes
impl Send for VectorFieldAttributes
impl Sync for VectorFieldAttributes
impl Unpin for VectorFieldAttributes
impl UnsafeUnpin for VectorFieldAttributes
impl UnwindSafe for VectorFieldAttributes
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
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 moreCreates a shared type from an unshared type.