pub struct IvfPqIndex<T: IvfElement> { /* private fields */ }Expand description
Query-local owned IVF-PQ index. Native build copies the indexed vectors.
Implementations§
Source§impl<T: IvfElement> IvfPqIndex<T>
impl<T: IvfElement> IvfPqIndex<T>
pub fn build( resources: &CuvsResources, dataset: &ValidatedDeviceTensor<'_, T>, params: IvfPqIndexParams, ) -> Result<Self>
Sourcepub fn search_into(
&self,
queries: &ValidatedDeviceTensor<'_, T>,
k: usize,
params: IvfPqSearchParams,
neighbors: &mut DeviceBuffer<i64>,
distances: &mut DeviceBuffer<f32>,
) -> Result<KnnSearchOutput>
pub fn search_into( &self, queries: &ValidatedDeviceTensor<'_, T>, k: usize, params: IvfPqSearchParams, neighbors: &mut DeviceBuffer<i64>, distances: &mut DeviceBuffer<f32>, ) -> Result<KnnSearchOutput>
Outputs are [queries.rows(), k] row-major. Missing neighbors have ordinal i64::MAX.
pub fn rows(&self) -> usize
pub fn columns(&self) -> usize
Trait Implementations§
Source§impl<T: IvfElement> Debug for IvfPqIndex<T>
impl<T: IvfElement> Debug for IvfPqIndex<T>
Source§impl<T: IvfElement> Drop for IvfPqIndex<T>
impl<T: IvfElement> Drop for IvfPqIndex<T>
Auto Trait Implementations§
impl<T> !RefUnwindSafe for IvfPqIndex<T>
impl<T> !Send for IvfPqIndex<T>
impl<T> !Sync for IvfPqIndex<T>
impl<T> !UnwindSafe for IvfPqIndex<T>
impl<T> Freeze for IvfPqIndex<T>where
PhantomData<T>: Freeze,
impl<T> Unpin for IvfPqIndex<T>where
PhantomData<T>: Unpin,
impl<T> UnsafeUnpin for IvfPqIndex<T>where
PhantomData<T>: UnsafeUnpin,
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