mirror of
https://github.com/meilisearch/meilisearch.git
synced 2025-09-06 04:36:32 +00:00
wip: Use Hamming when binary quantized
This commit is contained in:
committed by
Louis Dureuil
parent
114d50dfba
commit
5c464e9855
@ -4,7 +4,7 @@ use std::sync::{Arc, Mutex};
|
|||||||
use std::time::Instant;
|
use std::time::Instant;
|
||||||
|
|
||||||
use deserr::{DeserializeError, Deserr};
|
use deserr::{DeserializeError, Deserr};
|
||||||
use hannoy::distances::{BinaryQuantizedCosine, Cosine};
|
use hannoy::distances::{Cosine, Hamming};
|
||||||
use hannoy::ItemId;
|
use hannoy::ItemId;
|
||||||
use heed::{RoTxn, RwTxn, Unspecified};
|
use heed::{RoTxn, RwTxn, Unspecified};
|
||||||
use ordered_float::OrderedFloat;
|
use ordered_float::OrderedFloat;
|
||||||
@ -168,7 +168,7 @@ impl VectorStore {
|
|||||||
// only happens once in the life of an embedder, it's not very performances
|
// only happens once in the life of an embedder, it's not very performances
|
||||||
// sensitive.
|
// sensitive.
|
||||||
if quantizing && !self.quantized {
|
if quantizing && !self.quantized {
|
||||||
let writer = writer.prepare_changing_distance::<BinaryQuantizedCosine>(wtxn)?;
|
let writer = writer.prepare_changing_distance::<Hamming>(wtxn)?;
|
||||||
writer
|
writer
|
||||||
.builder(rng)
|
.builder(rng)
|
||||||
.available_memory(hannoy_memory.unwrap_or(usize::MAX))
|
.available_memory(hannoy_memory.unwrap_or(usize::MAX))
|
||||||
@ -553,7 +553,7 @@ impl VectorStore {
|
|||||||
self.database.remap_data_type()
|
self.database.remap_data_type()
|
||||||
}
|
}
|
||||||
|
|
||||||
fn quantized_db(&self) -> hannoy::Database<BinaryQuantizedCosine> {
|
fn quantized_db(&self) -> hannoy::Database<Hamming> {
|
||||||
self.database.remap_data_type()
|
self.database.remap_data_type()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user