Follow-up cuvs contribution #3 of 4. Single-feature PR per upstream norms.
What
Rust bindings for refine (c/include/cuvs/neighbors/refine.h) — exact re-ranking of ANN candidate lists against the original dataset. Small API (one function family + params). High leverage: a recall lever for every ANN backend.
cqs angle (separate follow-up, after upstream release)
Refine pairs with the candidate-pool sizing work: over-retrieve from CAGRA/HNSW, refine exactly, return top-k. Could lift R@5 at fixed pool size.
Upstream guidelines
Same digest as #1682: tests required (refined results strictly-better-or-equal recall vs unrefined on a known dataset), no rebase after review, single-feature scope, maintainers label, plain imperative title, RAPIDS copyright headers, branch off main.
Etiquette gate
Hold submission until #2229 has first maintainer feedback; implementation can proceed in ~/cuvs-contrib (branch rust-refine).
Follow-up cuvs contribution #3 of 4. Single-feature PR per upstream norms.
What
Rust bindings for
refine(c/include/cuvs/neighbors/refine.h) — exact re-ranking of ANN candidate lists against the original dataset. Small API (one function family + params). High leverage: a recall lever for every ANN backend.cqs angle (separate follow-up, after upstream release)
Refine pairs with the candidate-pool sizing work: over-retrieve from CAGRA/HNSW, refine exactly, return top-k. Could lift R@5 at fixed pool size.
Upstream guidelines
Same digest as #1682: tests required (refined results strictly-better-or-equal recall vs unrefined on a known dataset), no rebase after review, single-feature scope, maintainers label, plain imperative title, RAPIDS copyright headers, branch off main.
Etiquette gate
Hold submission until #2229 has first maintainer feedback; implementation can proceed in ~/cuvs-contrib (branch
rust-refine).