From ea1cdf0fb28f31ab36ea95d8d65abfcc184d1b8f Mon Sep 17 00:00:00 2001 From: Michael Norris Date: Thu, 24 Apr 2025 21:58:21 -0700 Subject: [PATCH] Increment next release, v1.11.0 (#4308) Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/4308 Increment to next release of Faiss, v1.11.0 Differential Revision: D73595484 fbshipit-source-id: bc065fa84ccdfbab8e6518e71d1ce8d7d8bd5bde --- CHANGELOG.md | 85 ++++++++++++++++++++++++++++++++++++++++++- CMakeLists.txt | 2 +- INSTALL.md | 8 ++-- faiss/Index.h | 2 +- faiss/python/setup.py | 2 +- 5 files changed, 91 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c1771f292..f6826aee8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,87 @@ All notable changes to this project will be documented in this file. ## [Unreleased] +## [1.11.0] - 2025-04-24 + + +Added +- RaBitQ implementation (#4235) +- Add RaBitQ to the swigfaiss so we can access its properties correctly in python (#4304) +- Add date and time to the codec file path so that the file doesn't get overridden with each run (#4303) +- Add missing header in faiss/CMakeLists.txt (#4285) +- Implement is_spherical and normalize_L2 booleans as part of the training APIs (#4279) +- Add normalize_l2 boolean to distributed training API +- re-land mmap diff (#4250) +- SearchParameters support for IndexBinaryFlat (#4055) +- Support non-partition col and map in the embedding reader (#4229) +- Support cosine distance for training vectors (#4227) +- Add missing #include in code_distance-sve.h (#4219) +- Add the support for IndexIDMap with Cagra index (#4188) +- Add bounds checking to hnsw nb_neighbors (#4185) +- Add sharding convenience function for IVF indexes (#4150) +- Added support for building for MinGW, in addition to MSVC (#4145) + +Changed +- Skip mmap test case in AIX. (#4275) +- Handle insufficient driver gracefully (#4271) +- relax input params for IndexIVFRaBitQ::get_InvertedListScanner() (#4270) +- Allow using custom index readers and writers (#4180) +- Upgrade to libcuvs=25.04 (#4164) +- ignore regex (#4264) +- Publish the C API to Conda (#4186) +- Pass row filters to Hive Reader to filter rows (#4256) +- Back out "test merge with internal repo" (#4244) +- test merge with internal repo (#4242) +- Revert D69972250: Memory-mapping and Zero-copy deserializers +- Revert D69984379: mem mapping and zero-copy python fixes +- mem mapping and zero-copy python fixes (#4212) +- Memory-mapping and Zero-copy deserializers (#4199) +- Use `nullptr` in faiss/gpu/StandardGpuResources.cpp (#4232) +- Make static method in header inline (#4214) +- Upgrade openblas to 0.3.29 for ARM architectures (#4203) +- Pass `store_dataset` argument along to cuVS CAGRA (#4173) +- Handle plain SearchParameters in HNSW searches (#4167) +- Update INSTALL.md to remove some raft references, add missing dependency (#4176) +- Update README.md (#4169) +- Update CAGRA docs (#4152) +- Expose IDSelectorBitmap in the C_API (#4158) + +Fixed +- fix: algorithm of spreading vectors over shards (#4299) +- Fix overflow of int32 in IndexNSG (#4297) +- Fix Type Error in Conditional Logic (#4294) +- faiss/gpu/GpuAutoTune.cpp: fix llvm-19-exposed -Wunused-but-set-variable warnings +- Fix nightly by pinning conda-build to prevent regression in 25.3.2 (#4287) +- Fix CQS signal. Id] 88153895 -- readability-redundant-string-init in fbcode/faiss (#4283) +- Fix a placeholder for 'unimplemented' in mapped_io.cpp (#4268) +- fix bug: IVFPQ of raft/cuvs does not require redundant check (#4241) +- fix a serialization problem in RaBitQ (#4261) +- Grammar fix in FlatIndexHNSW (#4253) +- Fix CUDA kernel index data type in faiss/gpu/impl/DistanceUtils.cuh +10 (#4246) +- fix `IVFPQFastScan::RangeSearch()` on the `ARM` architecture (#4247) +- fix integer overflow issue when calculating imbalance_factor (#4245) +- Fix bug with metric_arg in IndexHNSW (#4239) +- Address compile errors and warnings (#4238) +- faiss: fix non-templated hammings function (#4195) +- Fix LLVM-19 compilation issue in faiss/AutoTune.cpp (#4220) +- Fix cloning and reverse index factory for NSG indices (#4151) +- Remove python_abi to fix nightly (#4217) +- Fix IVF quantizer centroid sharding so IDs are generated (#4197) +- Pin lief to fix nightly (#4211) +- Fix Sapphire Rapids never loading in Python bindings (#4209) +- Attempt to nightly fix (#4204) +- Fix nightly by installing earlier version of lief (#4198) +- Check for not completed +- Fix install error when building avx512_spr variant (#4170) +- fix: gpu tests link failure with static lib (#4137) +- Fix the order of parameters in bench_scalar_quantizer_distance. (#4159) + +Deprecated +- Remove unused exception parameter from faiss/impl/ResultHandler.h (#4243) +- Remove unused variable (#4205) + + + ## [1.10.0] - 2025-01-30 @@ -459,7 +540,9 @@ by conda install -c pytorch faiss-gpu cudatoolkit=10.0. - C bindings. - Extended tutorial to GPU indices. -[Unreleased]: https://github.com/facebookresearch/faiss/compare/v1.9.0...HEAD +[Unreleased]: https://github.com/facebookresearch/faiss/compare/v1.11.0...HEAD +[1.11.0]: https://github.com/facebookresearch/faiss/compare/v1.10.0...v1.11.0 +[1.10.0]: https://github.com/facebookresearch/faiss/compare/v1.9.0...v1.10.0 [1.9.0]: https://github.com/facebookresearch/faiss/compare/v1.8.0...v1.9.0 [1.8.0]: https://github.com/facebookresearch/faiss/compare/v1.7.4...v1.8.0 [1.7.4]: https://github.com/facebookresearch/faiss/compare/v1.7.3...v1.7.4 diff --git a/CMakeLists.txt b/CMakeLists.txt index cc071e6e8..9a988c5d2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -47,7 +47,7 @@ if(FAISS_ENABLE_CUVS) endif() project(faiss - VERSION 1.10.0 + VERSION 1.11.0 DESCRIPTION "A library for efficient similarity search and clustering of dense vectors." HOMEPAGE_URL "https://github.com/facebookresearch/faiss" LANGUAGES ${FAISS_LANGUAGES}) diff --git a/INSTALL.md b/INSTALL.md index 26077224d..8acbf4563 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -12,13 +12,13 @@ To install the latest stable release: ``` shell # CPU-only version -$ conda install -c pytorch faiss-cpu=1.10.0 +$ conda install -c pytorch faiss-cpu=1.11.0 # GPU(+CPU) version -$ conda install -c pytorch -c nvidia faiss-gpu=1.10.0 +$ conda install -c pytorch -c nvidia faiss-gpu=1.11.0 # GPU(+CPU) version with NVIDIA cuVS -$ conda install -c pytorch -c nvidia -c rapidsai -c conda-forge libnvjitlink faiss-gpu-cuvs=1.10.0 +$ conda install -c pytorch -c nvidia -c rapidsai -c conda-forge libnvjitlink faiss-gpu-cuvs=1.11.0 # GPU(+CPU) version using AMD ROCm not yet available ``` @@ -34,7 +34,7 @@ Nightly pre-release packages can be installed as follows: $ conda install -c pytorch/label/nightly faiss-cpu # GPU(+CPU) version -$ conda install -c pytorch/label/nightly -c nvidia faiss-gpu=1.10.0 +$ conda install -c pytorch/label/nightly -c nvidia faiss-gpu=1.11.0 # GPU(+CPU) version with NVIDIA cuVS (package built with CUDA 12.4) conda install -c pytorch -c rapidsai -c rapidsai-nightly -c conda-forge -c nvidia pytorch/label/nightly::faiss-gpu-cuvs 'cuda-version>=12.0,<=12.5' diff --git a/faiss/Index.h b/faiss/Index.h index 544086f9a..2474f08be 100644 --- a/faiss/Index.h +++ b/faiss/Index.h @@ -17,7 +17,7 @@ #include #define FAISS_VERSION_MAJOR 1 -#define FAISS_VERSION_MINOR 10 +#define FAISS_VERSION_MINOR 11 #define FAISS_VERSION_PATCH 0 // Macro to combine the version components into a single string diff --git a/faiss/python/setup.py b/faiss/python/setup.py index 23611cb37..b30cfa781 100644 --- a/faiss/python/setup.py +++ b/faiss/python/setup.py @@ -105,7 +105,7 @@ are implemented on the GPU. It is developed by Facebook AI Research. """ setup( name="faiss", - version="1.10.0", + version="1.11.0", description="A library for efficient similarity search and clustering of dense vectors", long_description=long_description, url="https://github.com/facebookresearch/faiss",