faiss
**FAISS** (Facebook AI Similarity Search) is a **library for efficient similarity search and clustering of dense vectors** — providing the foundational technology underlying many modern vector databases with optimized algorithms for fast nearest neighbor search at scale on CPU and GPU hardware.
**What Is FAISS?**
- **Definition**: C++ library with Python bindings for vector similarity search
- **Type**: Library, not a database (no CRUD operations)
- **Creator**: Facebook AI Research (Meta)
- **Optimization**: CPU and GPU implementations, highly optimized
**Why FAISS Matters**
- **Speed**: State-of-the-art performance, especially on GPU (10× faster)
- **Foundation**: Powers many vector databases (Milvus, Pinecone)
- **Flexibility**: Multiple index types for different accuracy/speed tradeoffs
- **Memory Efficiency**: Advanced quantization and compression techniques
- **Battle-Tested**: Used in production at Meta and thousands of companies
**Core Functionality**: Searches vector database for those most similar to query vector, optimized for speed, memory, and GPU acceleration
**Key Index Types**: IndexFlatL2 (brute force, 100% accurate), IndexIVFFlat (fast approximate), IndexHNSW (fastest CPU), IndexIVFPQ (compressed, memory-efficient)
**GPU Acceleration**: 10× speedup on NVIDIA GPUs with standard interface
**Advanced Features**: Quantization (Scalar, Product), Index Composition, Persistence
**Limitations**: Not a database (no CRUD), No metadata filtering, Manual persistence, No updates
**Use Cases**: Custom Search Engines, Static Datasets, Research, Embedding Search
**Best Practices**: Choose Right Index, Normalize Vectors, Tune Parameters, Use GPU, Batch Queries
FAISS is **the foundation** of modern vector search — providing core algorithms powering vector databases, ideal for maximum performance on local hardware or custom search solutions from scratch.