Skip to content

RaBitQ Library 0.8.4

This release makes input validation faster. APIs, defaults, results, error messages and index files are unchanged.

Performance

  • Every index checks that the vectors, centroids and queries it receives are finite and inside the safe float32 range. The check now reads the input once instead of twice (#223). This applies to train, add and search in Python and C++, and to rabitqlib.quant inputs. On 1,000,000 × 960 vectors, the check alone took about 0.43 s instead of 0.77 s on one core of a Xeon Gold 6418H (GCC 14, -O3). That is the time of this check only, not of a whole add. Invalid input raises the same errors as before.

Upgrading

From 0.8.3, index file formats, the stable core API v1 and Python signatures are unchanged. Rebuild C++ consumers with matching headers and libraries; no cross-version C++ binary ABI is promised.

When upgrading from 0.7, follow the 0.8.0 release notes and the migration guide.