GpuVectorStorage

Trait GpuVectorStorage 

Source
pub trait GpuVectorStorage {
    // Required methods
    fn add_vectors(&mut self, vectors: &[GpuVector]) -> Result<Vec<usize>>;
    fn search(
        &self,
        query: &[f32],
        limit: usize,
    ) -> Result<Vec<GpuSearchResult>>;
    fn remove_vectors(&mut self, ids: &[String]) -> Result<()>;
    fn vector_count(&self) -> usize;
    fn dimension(&self) -> usize;
    fn get_vector(&self, id: &str) -> Result<Option<GpuVector>>;
    fn clear(&mut self) -> Result<()>;
}
Expand description

GPU vector storage trait

Required Methods§

Source

fn add_vectors(&mut self, vectors: &[GpuVector]) -> Result<Vec<usize>>

Add vectors to storage

Source

fn search(&self, query: &[f32], limit: usize) -> Result<Vec<GpuSearchResult>>

Search for similar vectors

Source

fn remove_vectors(&mut self, ids: &[String]) -> Result<()>

Remove vectors by IDs

Source

fn vector_count(&self) -> usize

Get total vector count

Source

fn dimension(&self) -> usize

Get vector dimension

Source

fn get_vector(&self, id: &str) -> Result<Option<GpuVector>>

Get vector by ID

Source

fn clear(&mut self) -> Result<()>

Clear all vectors

Implementors§