USearch
Fast Open-Source Search & Clustering engine for Vectors & Arbitrary Objects
GraphCanon updated 4w · GitHub synced 4w
Decision brief
USearch is a fast open-source tool designed for efficient vector and arbitrary object search and clustering across multiple programming languages, backed by the Apache-2.0 license.
Observed Jul 12, 2026 · Source: enrich:decision_facts
Verify the decision
Maintenance and security
Full trust report- Maintenance
- Active (12d since push)
- As of 4w
- Provenance
- Not a fork · Organization account
- As of 4w
- Security (OSV)
- No lockfile
- As of 1mo
Public GitHub metadata and optional OSV scans. Signals, not a guarantee. Trust methodology.
Install
git clone https://github.com/unum-cloud/USearchSimilar tools
Same-category neighbours. No typed graph edges are catalogued for this tool yet.
Evidence and technical details
Sourced facts, taxonomy, compatibility claims, README excerpt, and machine-readable endpoints.
Overview
Provides fast searching and clustering capabilities for vectors across various programming languages.
Capability facts
- Deploy
- Self-host
Source: dockerfile:Dockerfile · Jul 23, 2026
- Docker
- Dockerfile present
Source: dockerfile:Dockerfile · Jul 23, 2026
- MCP server
- No MCP server detected
Source: repo_scan · Jul 23, 2026
- Languages
- c++, javascript, typescript, python
Source: github.language+package.json+pyproject.toml · Jul 23, 2026
Categories
Compatibility
Sourced claims from the README excerpt - not unsourced marketing copy.
Tags
README
pip install usearch
import numpy as np from usearch.index import Index
index = Index(ndim=3) # Default settings for 3D vectors vector = np.array([0.2, 0.6, 0.4]) # Can be a matrix for batch operations index.add(42, vector) # Add one or many vectors in parallel matches = index.search(vector, 10) # Find 10 nearest neighbors
assert matches[0].key == 42 assert matches[0].distance <= 0.001 assert np.allclose(index[42], vector, atol=0.1) # Ensure high tolerance in mixed-precision comparisons
More settings are always available, and the API is designed to be as flexible as possible.
The default storage/quantization level is hardware-dependant for efficiency, but `bf16` is recommended for most modern CPUs.
```py
index = Index(
ndim=3, # Define the number of dimensions in input vectors
metric='cos', # Choose 'l2sq', 'ip', 'haversine' or other metric, default = 'cos'
dtype='bf16', # Store as 'f64', 'f32', 'bf16', 'f16', 'e5m2', 'e4m3', 'e3m2', 'e2m3', 'u8', 'i8', 'b1'..., default = None
connectivity=16, # Optional: Limit number of neighbors per graph node
expansion_add=128, # Optional: Control the recall of indexing
expansion_search=64, # Optional: Control the quality of the search
multi=False, # Optional: Allow multiple vectors per key, default = False
)
For agents
This page has a .md twin and JSON over the API.