awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
facebookresearch avatar

facebookresearch/faiss

0
View on GitHub↗
40,302 stars·4,421 forks·C++·MIT·40 viewsfaiss.ai↗

Faiss

This project is a high-performance library designed for the similarity search and clustering of dense vectors across massive datasets. It functions as a vector similarity search engine, providing the necessary tools to organize complex numerical data into specialized structures that facilitate rapid retrieval and efficient querying of millions of records.

The library distinguishes itself through a variety of advanced indexing and compression techniques, including hierarchical navigable small worlds for logarithmic time complexity and inverted file indexing to partition vector spaces into manageable subsets. To handle large-scale data, it employs product quantization to reduce memory footprints and utilizes hardware-level vector instructions to accelerate mathematical operations. For scenarios requiring absolute precision, the system also supports exhaustive brute-force search methods.

Beyond its core indexing capabilities, the library provides a comprehensive framework for the end-to-end vector search workflow, from the initial formatting of floating-point data into row-major matrices to the execution of nearest-neighbor retrieval. It includes support for memory-mapped index storage, allowing for the management of datasets that exceed physical memory capacity, and serves as a foundation for machine learning feature retrieval tasks.

Features

  • Vector Search Engines - Provides a high-performance library for efficient similarity search and clustering of dense vectors across massive datasets.
  • Approximate Nearest Neighbor Search - Optimizes search speed by trading off absolute precision for significantly faster lookup times when querying extremely large vector databases.
  • Vector Similarity Search - Enables identifying nearest neighbors in large datasets using distance metrics like Euclidean or inner product for fast and accurate results.
  • Similarity Search - Finds the most relevant items in massive datasets by comparing mathematical representations of data points based on their proximity.
  • Graph-Based Indexing - Constructs a multi-layered graph structure that allows logarithmic time complexity for finding approximate nearest neighbors in high-dimensional space.
  • Vector Indices - Organizes high-dimensional vectors to enable rapid retrieval of relevant items without exhaustive linear scanning.
  • Machine Learning - Efficient similarity search and clustering for dense vectors.
  • NLP - Efficient similarity search and clustering of dense vectors.
  • Retrieval Augmented Generation - Library for efficient similarity search and dense vector clustering.
  • Embeddings and Search - Library for efficient similarity search and clustering of dense vectors.
  • Search and Indexing - Library for efficient similarity search and clustering of dense vectors.
  • Search Engines - Library for efficient similarity search and clustering.
  • Similarity Search - Library for efficient similarity search and clustering of dense vectors.
  • Vector Databases - Library for efficient similarity search and clustering.
  • Search Libraries - Library for efficient similarity search and dense vector clustering.
  • K-Nearest Neighbor Retrieval - Executes searches against an indexed dataset to retrieve unique identifiers and distance scores for the most relevant vectors.
  • Product Quantization - Reduces memory footprint by decomposing high-dimensional vectors into smaller sub-vectors represented by compact codebook indices.
  • Embedding Retrieval - Accesses and matches high-dimensional embeddings generated by neural networks to support real-time recommendations and pattern recognition tasks.
  • Inverted File Indices - Partitions the vector space into Voronoi cells to limit search scope to a small subset of the total database.
  • GPU & Performance - Utilizes hardware-level vector instructions to perform rapid mathematical operations on floating point data during similarity search.
  • Numerical Libraries - Provides a collection of optimized algorithms designed for fast matrix operations and distance calculations on large-scale floating point data sets.

Star history

Star history chart for facebookresearch/faissStar history chart for facebookresearch/faiss

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does facebookresearch/faiss do?

This project is a high-performance library designed for the similarity search and clustering of dense vectors across massive datasets. It functions as a vector similarity search engine, providing the necessary tools to organize complex numerical data into specialized structures that facilitate rapid retrieval and efficient querying of millions of records.

What are the main features of facebookresearch/faiss?

The main features of facebookresearch/faiss are: Vector Search Engines, Approximate Nearest Neighbor Search, Vector Similarity Search, Similarity Search, Graph-Based Indexing, Vector Indices, Machine Learning, NLP.

Which projects share features with facebookresearch/faiss?

Projects with overlapping indexed features include: spotify/annoy — Annoy is a C++ library designed for approximate nearest neighbor search in high-dimensional vector spaces. It… unum-cloud/usearch — USearch is a high-performance vector similarity search engine and approximate nearest neighbor index designed for… lancedb/lancedb — LanceDB is a vector database and columnar data store designed to function as a versioned dataset manager and vector… alibaba/zvec — zvec is an embedded vector database engine and indexing library designed for high-dimensional similarity search. It… semi-technologies/weaviate — Weaviate is a cloud-native vector database and distributed vector store designed to save high-dimensional vectors… pgvector/pgvector — Vector similarity search extension for PostgreSQL.

Projects sharing features with Faiss

These projects share indexed features with Faiss. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • spotify/annoyspotify avatar

    spotify/annoy

    14,157View on GitHub↗

    Annoy is a C++ library designed for approximate nearest neighbor search in high-dimensional vector spaces. It functions as a vector similarity search engine that constructs static, disk-based data structures to facilitate fast lookups. By mapping identifiers to vector data and persisting these structures to disk, the library enables efficient, memory-mapped access to large datasets. The project distinguishes itself through the use of random projection trees and distance-metric-based partitioning, which organize data into hierarchical binary trees to balance search precision against computatio

    C++approximate-nearest-neighbor-searchc-plus-plusgolang
    View on GitHub↗14,157
  • unum-cloud/usearchunum-cloud avatar

    unum-cloud/USearch

    3,888View on GitHub↗

    USearch is a high-performance vector similarity search engine and approximate nearest neighbor index designed for dense embeddings. It functions as a low-level vector database core and high-dimensional vector indexer, providing the primitives necessary to store and retrieve vectors across massive datasets. The engine distinguishes itself through hardware-level SIMD acceleration for distance kernels and a proximity-graph indexing system that enables fast retrieval across billions of vectors. It supports multi-precision vector quantization to balance memory usage and accuracy, and utilizes memo

    C++approximate-nearest-neighbor-searchclusteringdatabase
    View on GitHub↗3,888
  • lancedb/lancedblancedb avatar

    lancedb/lancedb

    9,031View on GitHub↗

    LanceDB is a vector database and columnar data store designed to function as a versioned dataset manager and vector search engine. It serves as a high-performance backend for indexing and retrieving high-dimensional embeddings, providing the foundation for machine learning data pipelines. The system distinguishes itself through a combination of cloud-native object storage and immutable version tracking, allowing for data time-travel and reproducible AI experiments. It integrates hybrid search capabilities, merging dense vector similarity with BM25 full-text search and SQL-like scalar filters

    HTMLapproximate-nearest-neighbor-searchimage-searchnearest-neighbor-search
    View on GitHub↗9,031
  • alibaba/zvecalibaba avatar

    alibaba/zvec

    5,198View on GitHub↗

    zvec is an embedded vector database engine and indexing library designed for high-dimensional similarity search. It functions as a hybrid search engine and a retrieval-augmented generation knowledge base, allowing for the storage and retrieval of dense and sparse vectors. The system is distinguished by its hybrid retrieval pipeline, which fuses vector similarity, full-text keyword matching, and scalar metadata filtering into single query operations. It supports a plugin-based model integration system for registering custom embedding models and rerankers, as well as language bindings for nativ

    C++ann-searchembedded-databaserag
    View on GitHub↗5,198
  • Compare all 30 related projects→