#2222nd of 22 in Vector databases
nmslib
Approximate nearest-neighbor search library for metric and non-metric spaces
- Stars
- 3.6k
- License
- Apache-2.0
- Last commit
- Jan 2026
- Last release
- Feb 2021
- Language
- C++
3,566 on 22 Apr 20263,590 on 11 Nov 2026
From GitHub's daily star counts.
Checked on GitHub.
Overview
NMSLIB is a C++ similarity search library with Python bindings and an Apache Thrift query server usable from Java. It implements HNSW, VP-tree, NAPP and inverted-file methods, and supports non-metric distance functions. It also serves as a toolkit for evaluating search methods. The core library has no third-party dependencies.
Who it is for: Engineers embedding approximate k-NN search in C++, Python or Java apps
Strengths
- Core library has no third-party dependencies
- Supports non-metric spaces, not only L2 or cosine
- Prebuilt wheels for Python 3.8-3.13 on Linux, macOS, Windows, Intel and ARM
- Extendible with new search methods and distance functions
Weaknesses
- Last release was 2021-02-03, though commits continue
- Library only: no persistence layer or database features described
- Standalone hnswlib is lighter if only HNSW is needed
- Query server requires Apache Thrift 0.12, an old version
What it needs
- Needs Apache Thrift 0.12 (query server only)
What changed
From the release notes. No flag means the note does not say so, not that the upgrade is safe.
Also in Vector databases
See all 22| Rank | Project | Score |
|---|---|---|
| 1 | MilvusDistributed vector database with dense, sparse and hybrid search at scale | 90 out of 100 |
| 2 | QdrantRust vector database with payload filtering, REST and gRPC | 85 out of 100 |
| 3 | MeilisearchRust search engine with typo tolerance, filtering and hybrid semantic search | 84 out of 100 |
| #4 | faissC++ library for similarity search and clustering of dense vectors | 81 out of 100 |
| #5 | leannVector index that recomputes embeddings on demand to cut storage | 79 out of 100 |