FAISS, but 3K lines and a single header
USearch is a compact HNSW vector-search engine that claims FAISS-beating speed in a dependency-free C++11 header with bindings for ten languages.

What it does
USearch implements HNSW-based approximate nearest-neighbor search and clustering over vectors, with native bindings for C++, Python, JavaScript, Rust, Java, Go, Swift, C#, and more — plus WebAssembly and SQLite integrations. The core is a single C++11 header of roughly 3K SLOC, versus FAISS’s 84K, with no required dependencies. It supports user-defined metrics, half/quarter-precision dtypes (bf16, e5m2, i8), and memory-mapped indexes served directly from disk.
The interesting bit
The pitch is that the same prebuilt index file can be loaded and queried from any of the ten supported languages — build in Python, serve from Go. The uint40_t ID type is a nice touch: enough to address 4B+ vectors without paying 8 bytes per neighbor reference in the graph.
Key highlights
- Claims up to ~10x faster indexing than FAISS on 100M 96d vectors (Intel Sapphire Rapids, per their own benchmarks)
- Any user-defined metric with JIT compilation, not just the 9 fixed ones FAISS offers
- Disk-backed views of large indexes without loading into RAM — the README suggests up to 20x serving-cost reduction on cloud
- Arbitrary predicate filtering during traversal (Bloom filters, external DBs) instead of ban-lists
- Binary Tanimoto/Sorensen coefficients for genomics and chemistry workloads
Caveats
- The headline speedups are the project’s own benchmarks on one Intel platform; the 1536d case shows a more modest 2.3–4.4x
- Full-text search is still marked “coming soon” in the README
- Java distribution is via a fat-JAR download; Maven Central publishing is deprecated
Verdict
Worth a look if you want fast ANN search with a tiny footprint, custom metrics, or cross-language index sharing. If you live entirely in Python and FAISS already works for you, the switch is less urgent.
Frequently asked
- What is unum-cloud/USearch?
- USearch is a compact HNSW vector-search engine that claims FAISS-beating speed in a dependency-free C++11 header with bindings for ten languages.
- Is USearch open source?
- Yes — unum-cloud/USearch is open source, released under the Apache-2.0 license.
- What language is USearch written in?
- unum-cloud/USearch is primarily written in C++.
- How popular is USearch?
- unum-cloud/USearch has 4.4k stars on GitHub and is currently accelerating.
- Where can I find USearch?
- unum-cloud/USearch is on GitHub at https://github.com/unum-cloud/USearch.