Favicon of USearch

USearch

An open-source vector search library for local apps and servers, with custom similarity metrics, disk-backed indexes and Apache 2.0 licensing.

Screenshot of USearch website

USearch is a vector similarity search library for developers building semantic search and recommendation systems within their own apps or servers. Its compact C++ core supports custom similarity rules and has no mandatory dependencies.

  • Exact and approximate search: Use HNSW indexes for large vector collections or exact search for smaller datasets where checking every entry is practical.
  • Custom similarity metrics: Define comparisons for combined image and text embeddings, geospatial coordinates or binary data used in chemistry and genomics.
  • Lower memory use: Search indexes directly from disk without loading them entirely into RAM, and store vectors in lower-precision formats such as bf16, Float8 or integers.
  • Filtering and index changes: Filter results using external databases or other containers during search, delete entries and change their labels.

USearch runs on Linux, macOS, Windows, iOS and Android, with WebAssembly and SQLite support. It uses Arm and x86 CPU acceleration. Native bindings include Python, JavaScript, Rust, Swift, Java, C# and Go, and saved indexes can be reused across languages. Integrations include LangChain, Microsoft Semantic Kernel, GPTCache and Sentence-Transformers.

The library is open source under Apache 2.0. Quantized storage doesn't preserve the original full-precision vectors; integer quantization supports cosine-like metrics, while single-bit storage requires binary metrics.

Similar to USearch