facebookresearch/faiss

A library for efficient similarity search and clustering of dense vectors.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 17 minutes ago
Added to GitGenius on August 31st, 2026
Created on February 7th, 2017
Open Issues & Pull Requests: 280 (+0)
Number of forks: 4,507
Total Stargazers: 40,833 (-1)
Total Subscribers: 494 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 24.4 hours
Mean response time: 17.4 days
90th percentile: 11.2 days
Tracked items: 400

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "enhancement" is answered fastest, typically in about 13 hours, while "backlog" waits about 3 days. Only 7% of issues opened in the past year have been closed. Three people close 51% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 63
New in 7 days: 1
Closed in 7 days: 5
Avg open age: 821 days
Stale 30+ days: 57
Stale 90+ days: 47

Recent activity

Opened in 7 days: 1
Closed in 7 days: 5
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • autoclose (94)
  • install (78)
  • Implementation (71)
  • GPU (70)
  • stale (67)
  • backlog (53)
  • feature request (45)
  • unconfirmed-bug (41)

Detailed Description

Faiss is a library for efficient similarity search and clustering of dense vectors.

Faiss addresses the problem of finding similar vectors in large datasets by providing multiple indexing algorithms that trade off search speed, result quality, memory usage, and training time. The library assumes vectors are represented as fixed-dimensional arrays and compared using L2 distance or dot product similarity. It includes methods ranging from exact search baselines to compressed quantization codes that can scale to billions of vectors in memory on a single machine, as well as graph-based structures like HNSW and NSG. GPU implementations are available for the most computationally intensive operations, with automatic memory transfer handling and support for both single and multi-GPU setups.

Faiss suits projects requiring vector similarity at scale, from recommendation systems to semantic search. The choice between methods depends on whether your use case prioritizes exact results or can tolerate approximation in exchange for speed and memory efficiency. The library is implemented primarily in C++ with Python bindings, requires only a BLAS implementation as a core dependency, and offers optional GPU acceleration via CUDA or AMD ROCm. Precompiled packages are available through Anaconda for both CPU and GPU variants.

The project maintains a detailed changelog documenting feature additions and improvements. Development activity includes ongoing refinement of indexing algorithms and GPU implementations, with support for emerging GPU backends like NVIDIA cuVS. The codebase is built with CMake and includes comprehensive documentation alongside the core library functionality.