A database for embeddings
Vector stores embeddings and returns the ones nearest a query, in the order they are near it. Each point carries a payload beside its vector — ids, tags, timestamps, geography — and a filter on that payload is applied during the search rather than after it, so a filtered query still comes back with a full page of results.
Open source (Apache-2.0), built on Qdrant. Self-host anywhere or run managed on Hanzo Cloud.

What is Hanzo Vector
Put vectors in, get neighbours out
One collection behind semantic search, retrieval for grounded answers, and recommendations — the same API over REST or gRPC, and one key for all three.
Semantic search
Embed the question, find the nearest points, and narrow by payload inside the same search. Cosine, dot product, Euclidean or Manhattan distance — whichever your model was trained against.
Retrieval for grounded answers
The passages an answer stands on, found by meaning rather than by keyword, each one arriving with the id and metadata you stored beside it — so the citation is already in hand when the answer is written.
Recommendations
More like this, and less like that. Recommend takes positive and negative examples instead of a query vector; discover steers a search using pairs of them. Candidate generation and dedup come out of the collection you already search.
Capabilities
Everything you need to ship retrieval
HNSW, with the filter inside it
Approximate nearest-neighbour over a navigable small-world graph, with recall traded against latency by a parameter you set per query. Payload conditions are checked during the graph walk rather than applied to whatever it returned.
Indexes on the fields you filter
Keyword, integer and float ranges, boolean, geographic, full-text and nested-object indexes, plus faceting to count matches per value. Index the field you filter on and the filter stops being a scan.
Dense and sparse, merged
Run a dense vector query and a sparse keyword query as prefetches and fuse the two rankings — reciprocal rank fusion or distribution-based score fusion, weighted if you want. The exact-term match that embeddings alone walk past comes back.
Three ways to shrink a vector
Scalar quantization keeps a byte per dimension. Product quantization replaces blocks of dimensions with codebook entries. Binary quantization keeps one bit each, with hand-written kernels for AVX2, NEON and SSE. You choose where memory and recall meet.
One key to embed and to store
Hanzo’s embeddings API and this index take the same key, so turning text into vectors and putting them somewhere searchable is one credential and one bill rather than two of each.
Shards, replicas, snapshots
A collection is split into shards — automatically, or by a key you pick — and each shard is copied as many times as you ask. A write-ahead log per shard covers the crash; snapshots, whole-collection or per-shard, cover everything else.