Zvec is an open-source in-process vector database from Alibaba that embeds directly into applications, delivering production-grade low-latency similarity search with dense/sparse vectors, full-text search, and hybrid queries.
- v0.8.0
- Published at
- 7d ago
- 16,129
- Stars
- 2,386
- Download
- Synced at
- 7d ago
Latest release
v0.8.0Oct 21, 2026, 04:36 AMREADME
Project Overview
Zvec is an open-source, in-process vector database that is lightweight and lightning fast, designed to embed directly into applications: no server, no config — install an SDK and start searching in seconds. Battle-tested at scale inside Alibaba Group, it performs similarity search over billions of vectors in milliseconds and offers multiple index types such as HNSW, DiskANN, and IVF that scale from memory to disk. Beyond vector search it includes native keyword full-text search, and can fuse vector similarity, full-text search, and structured filters in a single query.
| Item | Value |
|---|---|
| Language | C++ (Python / Node.js / Go / Rust / Dart SDKs) |
| Platform | Linux, macOS, Windows, plus Android / iOS SDKs |
| Indexes | HNSW, DiskANN, IVF-RaBitQ and more |
| License | Apache-2.0 |
Embed-and-go vector search: pure local, no servers, no config.
Key Features
- Millisecond search at scale: optimized for billions of vectors with millisecond-level latency
- Dense and sparse vectors: supports dense, sparse, and multi-vector queries with index types scaling from memory to disk
- Full-text search: native keyword-based search over string fields using natural-language or structured expressions
- Hybrid queries: fuse vector similarity, full-text search, and structured filters in one query for precise results
- Durable storage: write-ahead logging (WAL) keeps data safe through process crashes or power failures
- Concurrent reads: multiple processes can read the same collection simultaneously; writes are single-process exclusive
- Runs anywhere: as an in-process library it works in notebooks, servers, CLI tools, and even edge devices
Target Audience
- Developers building RAG and semantic search
- LLM app and agent memory system developers
- Engineers needing local embedded search
- Recommendation and similarity search developers
Quick Start
- Install the Python SDK:
pip install zvec(requires 64-bit Python 3.10-3.14) - Define a schema, create a collection, and insert documents
- Run a similarity query with a vector:
import zvec
schema = zvec.CollectionSchema(
name='example',
vectors=zvec.VectorSchema('embedding', zvec.DataType.VECTOR_FP32, 4),
)
collection = zvec.create_and_open(path='./zvec_example', schema=schema)
collection.insert([
zvec.Doc(id='doc_1', vectors={'embedding': [0.1, 0.2, 0.3, 0.4]}),
])
results = collection.query(
zvec.Query(field_name='embedding', vector=[0.4, 0.3, 0.3, 0.1]),
topk=10,
)- Other SDKs: Node.js via
npm install @zvec/zvec; see the official docs for Go / Rust / Dart
Core Advantages
- Zero ops: no server and no config; the library embeds into your app and deploys with it
- Production-proven: used long-term in large-scale scenarios inside Alibaba
- Scalable indexing: from in-memory HNSW to on-disk DiskANN, choose by data size
- Multi-language ecosystem: official SDKs for Python, Node.js, Go, Rust, and Dart/Flutter
System Requirements
| Item | Requirement |
|---|---|
| OS | Linux (glibc/musl), macOS, Windows |
| Architecture | x86_64, ARM64 |
| Python | 3.10 - 3.14 (64-bit) |
Notes
- Writes are single-process exclusive: multi-process concurrency applies to reads only; writes to a collection need a single process
- Building from source: this repo hosts the C++ core; applications normally use the language SDKs, and source builds follow the official guide