pub trait VectorEngine {
// Required methods
fn upsert(
&self,
world: &WorldKey,
atom_id: &AtomId,
vector: &[f32],
) -> Result<()>;
fn search(
&self,
world: &WorldKey,
query: &[f32],
k: usize,
filter: &AtomFilter,
) -> Result<Vec<AtomId>>;
fn rebuild(&self, world: &WorldKey) -> Result<()>;
}Expand description
Vector index interface.
Required Methods§
fn upsert( &self, world: &WorldKey, atom_id: &AtomId, vector: &[f32], ) -> Result<()>
fn search( &self, world: &WorldKey, query: &[f32], k: usize, filter: &AtomFilter, ) -> Result<Vec<AtomId>>
fn rebuild(&self, world: &WorldKey) -> Result<()>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".