github facebookresearch/faiss v1.14.0

10 hours ago

[1.14.0] - 2026-03-02

Added

  • Add PEP 561 Python type stubs for the faiss package (#4840)
  • Add conda-forge channel to INSTALL.md install commands (#4819)
  • Add post_init_hook call to Python init (#4795)
  • Add ARM SVE support for distance functions (#4798)
  • Add Dynamic Dispatch OSS CI workflow (#4779)
  • Add IndexFlatIPPanorama (#4787)
  • Add benchmark to measure the ResultHandler overhead (#4778)
  • Demo for a diversity filter (#4765)
  • Add SVS binary size comparison demo and documentation (#4777)
  • Add InvertedListScanner support for IndexIVFRaBitQFastScan (#4760)
  • Add comprehensive ScalarQuantizer correctness tests (#4766)
  • add IDSelector for knn_extra_metrics() (#4753)
  • Add early stopping to k-means clustering (#4741)
  • Add k-means++ and AFK-MC² centroid initialization methods (#4740)

Changed

  • ScalarQuantizer: refactor SIMDWIDTH int → SIMDLevel enum (#4838)
  • Fold IndexIVFPQ scanner helpers into templatized lambdas (#4836)
  • Temporarily disable RaBitQ FastScan from backward compatibility test (#4841)
  • Eliminate flat_storage by embedding auxiliary data in SIMD blocks (#4816)
  • Rework PQ code distance for Dynamic Dispatch (#4808)
  • fbcode/faiss/impl (#4832)
  • fbcode/faiss/utils/simd_impl (#4833)
  • fbcode/faiss/IndexFlat.cpp (#4831)
  • fbcode/faiss (#4829)
  • Implement distance_to_code for IVFRaBitQFastScanScanner (#4822)
  • distance_to_code for IVFPQFastScan invertedlistscanner (#4821)
  • Make dispatch_VectorDistance more compact (#4820)
  • Update callers to use read_index_up API (#4818)
  • fbcode/faiss/utils/simd_impl/distances_avx2.cpp (#4813)
  • fbcode/faiss/impl/PolysemousTraining.cpp (#4814)
  • fbcode/faiss/utils/sorting.cpp (#4815)
  • VisitedTable -> unordered_set if ntotal is large (#4735)
  • resulthandlers with AVX512 (#4806)
  • put dispatch one level above (#4802)
  • dynamic dispatch distances_simd (#4781)
  • Introduce Dynamic Dispatch infrastructure with SIMDConfig (#4780)
  • make runtime template selection more compact (#4793)
  • support SearchParameters for IndexBinary (#4761)
  • Support sharding of RaBitQ indices (#4790)
  • Refactor ScalarQuantizer headers to use SIMD wrapper types (#4772)
  • Split ScalarQuantizer.cpp into modular headers (NOOP) (#4786)
  • Move factory_tools to main library and fix unaligned SIMD store (#4782)
  • inline scanning code for fast distance computations (#4785)
  • Enable Faiss for internal use (#4737)
  • Address review comments on SQ correctness tests (#4771)
  • Enable use of svs runtime conda package instead of tarball (#4747)
  • generic result handlers for most indexes (#4762)
  • Use nth_element for median computation in IndexLSH (#4653)
  • Change default qb from 0 to 4 in RaBitQ indexes (#4757)
  • Move reorder_2_heaps() into Heap.h (#4752)
  • Improve naming due to codemod. simd_result_handlers (#4351)
  • Dot Product Support Similarity Metric for IndexIVFFlatPanorama (#4732)
  • Panorama Refactor and Code Cleanup (#4728)
  • Update serialization backwards compatibility test with panorama and rabitq (#4736)

Fixed

  • Additional index deserialization validation (#4844)
  • Validate HNSW levels array entries during deserialization (#4827)
  • Additional memory exception handling fixes for index_read.cpp (#4837)
  • Catch attempts to deserialize undefined MetricTypes (#4823)
  • BlockInvertedListsIOHook::read(): Don't leak on exception. (#4824)
  • Harden ZnSphere lattice codec against invalid parameters (#4826)
  • Validate n_levels > 0 in Panorama (#4825)
  • Additional hardening of index load path (#4817)
  • Deploy std::unique_ptr<> in index_read.cpp for exception safety (#4809)
  • Fix to graph deserialization (#4812)
  • Harden deserialization against integer overflow and buffer overflows (#4811)
  • Fix CMake/Buck build discrepancies (#4807)
  • Fix NSG off-by-one neighbor ID check (#4804)
  • Fix CMake static targets missing SIMD sources and definitions (#4800)
  • Enable -Wstring-conversion in faiss/PACKAGE +1
  • Fix backward compat CI: use isolated conda environments (#4799)
  • Fix string-conversion issue in faiss/impl/lattice_Zn.cpp +1 (#4794)
  • Fix build pr 4761 (#4792)
  • Fix: Remove -Wignored-attributes warning in mapped_io.cpp (#4775)
  • Fix string-conversion issue in faiss/IndexHNSW.cpp
  • Fix: Remove -Wswitch-unreachable warning in generic-inl.h (#4776)
  • Fix string-conversion issue in faiss/invlists/OnDiskInvertedLists.cpp +5 (#4791)
  • Fix OSX arm64 nightly by disabling hidden visibility on macOS (#4789)
  • Fix FindMKL.cmake to detect Intel oneAPI MKL (2021+) (#4769)
  • Fix lint errors in SVS integration code (#4774)
  • Fix typos in demos, benchs, and other directories (#4743)
  • Fix weak external symbol leakage (#4758)
  • Fix compilation on macOS ARM64: Use faiss::idx_t instead of long test_hamming (#4755)
  • Fix multi-bit RaBitQ IP metric filtering and f_add_ex computation (#4754)
  • Fix IP metric distance computation in multi-bit RaBitQ (#4751)
  • Reduce memory usage in timeout callback tests (#4745)
  • Fix c++20 compilation in OSS Faiss for OSX ARM64 (#4733)

Deprecated

  • Remove deprecated RAFT headers (#4731)

Don't miss a new faiss release

NewReleases is sending notifications on new releases.