pub struct TurbovecIndex { /* private fields */ }Expand description
Compressed vector index backed by TurboQuant.
Wraps turbovec::IdMapIndex with dimension validation and a consistent
error-handling layer. Supports online ingest (no training step),
filtered search with allowlists, and persistence via save/load.
Implementations§
Source§impl TurbovecIndex
impl TurbovecIndex
Trait Implementations§
Source§impl Debug for TurbovecIndex
impl Debug for TurbovecIndex
Source§impl VectorIndex for TurbovecIndex
impl VectorIndex for TurbovecIndex
Source§fn add(&mut self, vectors: &[Vec<f32>]) -> Result<()>
fn add(&mut self, vectors: &[Vec<f32>]) -> Result<()>
Add vectors with auto-assigned sequential IDs.
Source§fn add_with_ids(&mut self, vectors: &[Vec<f32>], ids: &[u64]) -> Result<()>
fn add_with_ids(&mut self, vectors: &[Vec<f32>], ids: &[u64]) -> Result<()>
Add vectors with explicit external IDs.
Source§fn remove(&mut self, ids: &[u64]) -> Result<()>
fn remove(&mut self, ids: &[u64]) -> Result<()>
Remove vectors by their external IDs. Read more
Source§fn search(&self, query: &[f32], k: usize) -> Result<Vec<SearchHit>>
fn search(&self, query: &[f32], k: usize) -> Result<Vec<SearchHit>>
Search for the
k nearest neighbors of query.Auto Trait Implementations§
impl !Freeze for TurbovecIndex
impl RefUnwindSafe for TurbovecIndex
impl Send for TurbovecIndex
impl Sync for TurbovecIndex
impl Unpin for TurbovecIndex
impl UnsafeUnpin for TurbovecIndex
impl UnwindSafe for TurbovecIndex
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
impl<T> ErasedDestructor for Twhere
T: 'static,
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.