Fix IVF PQ build metric for CAGRA
Related to #841. The IVF-PQ build metric is not properly initialized in the case of InnerProduct, so I am adding here correct initialization on the C layer, as well as some checks on the C++ side so that the CAGRA metric match the knn metric.
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.
Contributors can view more details about this message here.
/ok to test 57aa341
@lowener does this PR impacts the integration of Cuvs with Faiss library?
@navneet1v Faiss is currently tied to libcuvs=25.04. Whatever goes in after 25.04 is not reflected in faiss until it upgrades to the latest cuVS version.
@tarang-jain let me clarify what I am asking, question is: Is this bug present in 25.04 version of libcuvs which is present in faiss.
Yes this was already present in libcuvs 25.04 @navneet1v
@lowener should we create a PR in Faiss to upgrade Cuvs version in Faiss to fix the issue?
Since Faiss just depends on a pre-installed version of cuVS and does not build cuVS from source, you should be able to simply install 25.06 after this PR is merged (or even build this PR branch from source) in your environment. So long as any of the public API signatures have not changed between 25.04 and 25.06, it will work just fine while building Faiss from source.
For bumping up Faiss to RAPIDS version 25.06, yes it can be done since it is a simple version upgrade and that would change the faiss-gpu-cuvs conda package. However it might be safer to do it after the release (stable) and not with the cuVS nightlies unless there are crucial feature enhancements / bug fixes in the nightlies.
/ok to test c620cc1
@cjnolet by when we can expect this change to be merged? We are looking to test this with Faiss to see if the issue of recall is fixed.
@navneet1v it should be merged for the 25.06 release (burndown is in 2 weeks). It'll likely be merged well before burndown, but it needs to pass CI first.
/merge