pub trait VectorProvider {
// Required method
fn get_vector(&self, id: VectorId) -> Cow<'_, [f32]>;
// Provided methods
fn is_deleted(&self, id: VectorId) -> bool { ... }
fn get_quantized_vector(&self, id: VectorId) -> Option<&[u8]> { ... }
fn quantize_query<'a>(
&self,
query: &[f32],
output: &'a mut Vec<u8>,
) -> Option<&'a [u8]> { ... }
}Expand description
Trait for providing vector data by ID.
Required Methods§
Sourcefn get_vector(&self, id: VectorId) -> Cow<'_, [f32]>
fn get_vector(&self, id: VectorId) -> Cow<'_, [f32]>
Returns the vector data for a given ID.
Provided Methods§
Sourcefn is_deleted(&self, id: VectorId) -> bool
fn is_deleted(&self, id: VectorId) -> bool
Returns true if the vector is marked as deleted.
Sourcefn get_quantized_vector(&self, id: VectorId) -> Option<&[u8]>
fn get_quantized_vector(&self, id: VectorId) -> Option<&[u8]>
Returns the quantized vector data for a given ID, if available.
§Returns
Some(&[u8])- If the provider supports direct quantized access.None- If not supported or data is not quantized.