pub struct FlatIndex { /* private fields */ }Expand description
Flat vector index: append-only buffer with brute-force search.
Implementations§
Source§impl FlatIndex
impl FlatIndex
Sourcepub fn new(dim: usize, metric: DistanceMetric) -> Self
pub fn new(dim: usize, metric: DistanceMetric) -> Self
Create a new empty flat index.
Sourcepub fn insert(&mut self, vector: Vec<f32>) -> u32
pub fn insert(&mut self, vector: Vec<f32>) -> u32
Insert a vector. Returns the assigned vector ID.
Sourcepub fn search(&self, query: &[f32], top_k: usize) -> Vec<SearchResult>
pub fn search(&self, query: &[f32], top_k: usize) -> Vec<SearchResult>
Brute-force k-NN search. Exact results — no approximation.
Sourcepub fn search_filtered(
&self,
query: &[f32],
top_k: usize,
bitmap: &[u8],
) -> Vec<SearchResult>
pub fn search_filtered( &self, query: &[f32], top_k: usize, bitmap: &[u8], ) -> Vec<SearchResult>
Search with a pre-filter bitmap (byte-array format).
pub fn len(&self) -> usize
pub fn live_count(&self) -> usize
pub fn is_empty(&self) -> bool
pub fn get_vector(&self, id: u32) -> Option<&[f32]>
pub fn dim(&self) -> usize
pub fn metric(&self) -> DistanceMetric
pub fn tombstone_count(&self) -> usize
Auto Trait Implementations§
impl Freeze for FlatIndex
impl RefUnwindSafe for FlatIndex
impl Send for FlatIndex
impl Sync for FlatIndex
impl Unpin for FlatIndex
impl UnsafeUnpin for FlatIndex
impl UnwindSafe for FlatIndex
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.