hnsw

**FAISS: Facebook AI Similarity Search** **Overview** FAISS is a library developed by Facebook AI Research (FAIR) for efficient similarity search and clustering of dense vectors. It is the core engine behind most vector databases. **Key Concepts** **1. The Index** The core object in FAISS. You add vectors to an Index, and search against it. - **IndexFlatL2**: Exact search (brute force). Perfect accuracy, slow at scale. - **IndexIVFFlat**: Inverted File Index. Faster, slightly less accurate. - **IndexHNSW**: Graph-based. Fastest, but uses more RAM. **2. Search** ```python import faiss import numpy as np d = 64 # dimension nb = 100000 # database size xb = np.random.random((nb, d)).astype('float32') index = faiss.IndexFlatL2(d) index.add(xb) # Search xq = np.random.random((1, d)).astype('float32') D, I = index.search(xq, k=5) # search 5 nearest neighbors ``` **GPU Acceleration** FAISS can run on NVIDIA GPUs, which is 5-10x faster than CPU. **When to use?** Use FAISS if you want raw speed and are building a custom search engine. Use a Vector Database (Pinecone, Chroma) if you want a managed service with an API.

Go deeper with CFSGPT

Get AI-powered deep-dives, save terms, and run advanced simulations — free account.

Create Free Account