Hello I wanted to understand the BQ config parameters a bit more.
What exactly does rescoreLimit of -1 do? What are tradeoffs with setting cache to true?
What parameters should I set if I still want to ensure high accuracy? If I understand correctly a higher rescoreLimit is better to increase recall (Compression | Weaviate). Should I set the rescoreLimit based on what limit parameter I normally set for my queries?
For one collection I expect to have between 1 and 200 objects for each tenant when running a hybrid query
For another collection I expect to have stored between 1 and 10,000 objects for each tenant when running a hybrid query.
I am returning normally around 10-20 results from the hybrid query.
vectorIndexConfig: configure.vectorIndex.dynamic({
hnsw: {
quantizer: configure.vectorIndex.quantizer.bq({
cache: true,
rescoreLimit: -1,
}),
},
flat: {
quantizer: configure.vectorIndex.quantizer.bq({
cache: true,
rescoreLimit: -1,
}),
},
}),