pub struct VectorCollection { /* private fields */ }Implementations§
Source§impl VectorCollection
impl VectorCollection
pub fn new( name: impl Into<String>, dimension: usize, metric: DistanceMetric, ) -> Self
pub fn add(&mut self, vector: Vector) -> Result<()>
Sourcepub fn add_batch(&mut self, vectors: Vec<Vector>) -> Result<usize>
pub fn add_batch(&mut self, vectors: Vec<Vector>) -> Result<usize>
Add multiple vectors in batch for better performance
pub fn search(&self, query: &[f32], k: usize) -> Result<Vec<SearchResult>>
Sourcepub fn search_filtered(
&self,
query: &[f32],
k: usize,
filter: impl Fn(&HashMap<String, String>) -> bool,
) -> Result<Vec<SearchResult>>
pub fn search_filtered( &self, query: &[f32], k: usize, filter: impl Fn(&HashMap<String, String>) -> bool, ) -> Result<Vec<SearchResult>>
Search with metadata filtering for hybrid search
Sourcepub fn search_by_metadata(
&self,
query: &[f32],
k: usize,
key: &str,
value: &str,
) -> Result<Vec<SearchResult>>
pub fn search_by_metadata( &self, query: &[f32], k: usize, key: &str, value: &str, ) -> Result<Vec<SearchResult>>
Search with exact metadata match
Sourcepub fn search_by_metadata_multiple(
&self,
query: &[f32],
k: usize,
filters: &[(&str, &str)],
) -> Result<Vec<SearchResult>>
pub fn search_by_metadata_multiple( &self, query: &[f32], k: usize, filters: &[(&str, &str)], ) -> Result<Vec<SearchResult>>
Search with multiple metadata filters (all must match)
pub fn get(&self, id: &str) -> Option<&Vector>
pub fn len(&self) -> usize
pub fn is_empty(&self) -> bool
pub fn name(&self) -> &str
pub fn dimension(&self) -> usize
pub fn metric(&self) -> DistanceMetric
Trait Implementations§
Source§impl Clone for VectorCollection
impl Clone for VectorCollection
Source§fn clone(&self) -> VectorCollection
fn clone(&self) -> VectorCollection
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 VectorCollection
impl Debug for VectorCollection
Source§impl<'de> Deserialize<'de> for VectorCollection
impl<'de> Deserialize<'de> for VectorCollection
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 VectorCollection
impl RefUnwindSafe for VectorCollection
impl Send for VectorCollection
impl Sync for VectorCollection
impl Unpin for VectorCollection
impl UnwindSafe for VectorCollection
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