Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
firecrawl avatar

Faiss

  • 12 installs
  • 17 repo stars
  • Updated February 6, 2026
  • firecrawl/ai-research-skills

faiss documents Facebook AI Similarity Search for billion-scale dense vector k-NN with GPU acceleration.

About

faiss documents Facebook AI Similarity Search for billion-scale dense vector k-NN with GPU acceleration. Covers Flat, IVF, and HNSW index types for fast similarity search and clustering without metadata filtering.

  • Facebook's library for efficient similarity search and clustering of dense vectors.
  • Installation and configuration patterns for faiss.
  • When-to-use guidance versus common alternatives.
  • Evidence-backed steps from the upstream SKILL.md guide.

Faiss by the numbers

  • 12 all-time installs (skills.sh)
  • Ranked #636 of 911 Databases skills by installs in the Skillselion catalog
  • Data as of Aug 4, 2026 (Skillselion catalog sync)
At a glance

faiss capabilities & compatibility

Capabilities
faiss quick start · faiss when to use guidance · faiss integration patterns
Use cases
database · research
From the docs

What faiss says it does

Facebook AI's library for billion-scale vector similarity search.
SKILL.md
- Need fast similarity search on large vector datasets (millions/billions)
SKILL.md
npx skills add https://github.com/firecrawl/ai-research-skills --skill faiss

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs12
repo stars17
Last updatedFebruary 6, 2026
Repositoryfirecrawl/ai-research-skills

How do I use faiss correctly?

Facebook's library for efficient similarity search and clustering of dense vectors. Supports billions of vectors, GPU acceleration, and various index types (Flat, IVF, HNSW). Use for fast k-NN search.

Who is it for?

Teams implementing faiss workflows from the research catalog.

Skip if: Skip when requirements clearly match a different specialized stack.

When should I use this skill?

User asks about faiss, facebook's library for efficient similarity search and clustering of dense vecto.

What you get

Working faiss setup with validated configuration and next steps.

Files

SKILL.mdMarkdownGitHub ↗

FAISS - Efficient Similarity Search

Facebook AI's library for billion-scale vector similarity search.

When to use FAISS

Use FAISS when:

  • Need fast similarity search on large vector datasets (millions/billions)
  • GPU acceleration required
  • Pure vector similarity (no metadata filtering needed)
  • High throughput, low latency critical
  • Offline/batch processing of embeddings

Metrics:

  • 31,700+ GitHub stars
  • Meta/Facebook AI Research
  • Handles billions of vectors
  • C++ with Python bindings

Use alternatives instead:

  • Chroma/Pinecone: Need metadata filtering
  • Weaviate: Need full database features
  • Annoy: Simpler, fewer features

Quick start

Installation

# CPU only
pip install faiss-cpu

# GPU support
pip install faiss-gpu

Basic usage

import faiss
import numpy as np

# Create sample data (1000 vectors, 128 dimensions)
d = 128
nb = 1000
vectors = np.random.random((nb, d)).astype('float32')

# Create index
index = faiss.IndexFlatL2(d)  # L2 distance
index.add(vectors)             # Add vectors

# Search
k = 5  # Find 5 nearest neighbors
query = np.random.random((1, d)).astype('float32')
distances, indices = index.search(query, k)

print(f"Nearest neighbors: {indices}")
print(f"Distances: {distances}")

Index types

1. Flat (exact search)

# L2 (Euclidean) distance
index = faiss.IndexFlatL2(d)

# Inner product (cosine similarity if normalized)
index = faiss.IndexFlatIP(d)

# Slowest, most accurate

2. IVF (inverted file) - Fast approximate

# Create quantizer
quantizer = faiss.IndexFlatL2(d)

# IVF index with 100 clusters
nlist = 100
index = faiss.IndexIVFFlat(quantizer, d, nlist)

# Train on data
index.train(vectors)

# Add vectors
index.add(vectors)

# Search (nprobe = clusters to search)
index.nprobe = 10
distances, indices = index.search(query, k)

3. HNSW (Hierarchical NSW) - Best quality/speed

# HNSW index
M = 32  # Number of connections per layer
index = faiss.IndexHNSWFlat(d, M)

# No training needed
index.add(vectors)

# Search
distances, indices = index.search(query, k)

4. Product Quantization - Memory efficient

# PQ reduces memory by 16-32×
m = 8   # Number of subquantizers
nbits = 8
index = faiss.IndexPQ(d, m, nbits)

# Train and add
index.train(vectors)
index.add(vectors)

Save and load

# Save index
faiss.write_index(index, "large.index")

# Load index
index = faiss.read_index("large.index")

# Continue using
distances, indices = index.search(query, k)

GPU acceleration

# Single GPU
res = faiss.StandardGpuResources()
index_cpu = faiss.IndexFlatL2(d)
index_gpu = faiss.index_cpu_to_gpu(res, 0, index_cpu)  # GPU 0

# Multi-GPU
index_gpu = faiss.index_cpu_to_all_gpus(index_cpu)

# 10-100× faster than CPU

LangChain integration

from langchain_community.vectorstores import FAISS
from langchain_openai import OpenAIEmbeddings

# Create FAISS vector store
vectorstore = FAISS.from_documents(docs, OpenAIEmbeddings())

# Save
vectorstore.save_local("faiss_index")

# Load
vectorstore = FAISS.load_local(
    "faiss_index",
    OpenAIEmbeddings(),
    allow_dangerous_deserialization=True
)

# Search
results = vectorstore.similarity_search("query", k=5)

LlamaIndex integration

from llama_index.vector_stores.faiss import FaissVectorStore
import faiss

# Create FAISS index
d = 1536
faiss_index = faiss.IndexFlatL2(d)

vector_store = FaissVectorStore(faiss_index=faiss_index)

Best practices

1. Choose right index type - Flat for <10K, IVF for 10K-1M, HNSW for quality 2. Normalize for cosine - Use IndexFlatIP with normalized vectors 3. Use GPU for large datasets - 10-100× faster 4. Save trained indices - Training is expensive 5. Tune nprobe/ef_search - Balance speed/accuracy 6. Monitor memory - PQ for large datasets 7. Batch queries - Better GPU utilization

Performance

Index TypeBuild TimeSearch TimeMemoryAccuracy
FlatFastSlowHigh100%
IVFMediumFastMedium95-99%
HNSWSlowFastestHigh99%
PQMediumFastLow90-95%

Resources

  • GitHub: https://github.com/facebookresearch/faiss ⭐ 31,700+
  • Wiki: https://github.com/facebookresearch/faiss/wiki
  • License: MIT

Related skills

FAQ

What does faiss do?

faiss documents Facebook AI Similarity Search for billion-scale dense vector k-NN with GPU acceleration.

When should I use faiss?

User asks about faiss, facebook's library for efficient similarity search and clustering of dense vecto.

Is this skill safe to install?

Review the Security Audits panel on this page before installing in production.

Databasesdatabases

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.