A lightweight, lightning-fast, in-process vector database
15,877
stars
383
commits
C++
primary language
Sep 10, 2026
updated
English | 中文
🚀 Quickstart | 🏠 Home | 📚 Docs | 📊 Benchmarks | 🔎 DeepWiki | 🎮 Discord | 🐦 X (Twitter)
Zvec is an open-source, in-process vector database — lightweight, lightning-fast, and designed to embed directly into applications. Battle-tested within Alibaba Group, it delivers production-grade, low-latency and scalable similarity search with minimal setup.
[!Important] 🚀 v0.7.0 (August 24, 2026)
- zvec-grep (
zg): Local-first workspace search that unifies ripgrep, BM25, and vector search behind one CLI — built for humans and AI agents.- ReMe integration: zvec is now a file store backend in ReMe, the memory management kit for agents, providing in-process HNSW ANN search.
- DiskANN productionization: Adds Linux ARM64 / macOS ARM64 support and an io_uring async I/O backend, with automatic fallback to the best available I/O option — no user intervention needed.
- Index optimization: New IVF-RaBitQ index and PQ-INT8 quantizer; RaBitQ supports runtime AVX2 / AVX512 dispatch, so the same binary automatically picks the best path on each CPU.
- Deployment experience improved: Prebuilt dynamic libraries slimmed significantly (macOS arm64 C API library 37→22 MB, -40%); new musl libc / Alpine Linux support; prebuilt SDK binaries for Linux (glibc/musl), macOS, Windows, Android, and iOS published with every release.
- DocIterator: New iterator for streaming full-collection document traversal across C++, C, and Python.
- Full-text search: New N-gram tokenizer, better suited for phrase, code, and short-text search.
Zvec offers official SDKs across multiple languages:
pip install zvec (requires 64-bit Python 3.10–3.14)npm install @zvec/zveccargo add zvec-rustflutter pub add zvecSearching code or documents? Try zvec-grep (zg) — a local-first search CLI that unifies ripgrep, BM25, and vector search, built for humans and AI agents.
Prefer a visual tool? Try Zvec Studio to browse data and debug queries — no code required.
If you prefer to build Zvec from source, please check the Building from Source guide.
import zvec
# Define collection schema
schema = zvec.CollectionSchema(
name="example",
vectors=zvec.VectorSchema("embedding", zvec.DataType.VECTOR_FP32, 4),
)
# Create collection
collection = zvec.create_and_open(path="./zvec_example", schema=schema)
# Insert documents
collection.insert([
zvec.Doc(id="doc_1", vectors={"embedding": [0.1, 0.2, 0.3, 0.4]}),
zvec.Doc(id="doc_2", vectors={"embedding": [0.2, 0.3, 0.4, 0.1]}),
])
# Search by vector similarity
results = collection.query(
zvec.Query(field_name="embedding", vector=[0.4, 0.3, 0.3, 0.1]),
topk=10
)
# Results: list of {'id': str, 'score': float, ...}, sorted by relevance
print(results)
Zvec delivers exceptional speed and efficiency, making it ideal for demanding production workloads.
For detailed benchmark methodology, configurations, and complete results, please see our Benchmarks documentation.
We welcome and appreciate contributions from the community! Whether you're fixing a bug, adding a feature, or improving documentation, your help makes Zvec better for everyone.
Check out our Contributing Guide to get started!
(top 30 of 31)
C++
81.7%
Python
7.4%
SWIG
6.1%
C
3.3%
CMake
1.3%
A lightweight, lightning-fast, in-process vector database
15,877
stars
383
commits
C++
primary language
Sep 10, 2026
updated
English | 中文
🚀 Quickstart | 🏠 Home | 📚 Docs | 📊 Benchmarks | 🔎 DeepWiki | 🎮 Discord | 🐦 X (Twitter)
Zvec is an open-source, in-process vector database — lightweight, lightning-fast, and designed to embed directly into applications. Battle-tested within Alibaba Group, it delivers production-grade, low-latency and scalable similarity search with minimal setup.
[!Important] 🚀 v0.7.0 (August 24, 2026)
- zvec-grep (
zg): Local-first workspace search that unifies ripgrep, BM25, and vector search behind one CLI — built for humans and AI agents.- ReMe integration: zvec is now a file store backend in ReMe, the memory management kit for agents, providing in-process HNSW ANN search.
- DiskANN productionization: Adds Linux ARM64 / macOS ARM64 support and an io_uring async I/O backend, with automatic fallback to the best available I/O option — no user intervention needed.
- Index optimization: New IVF-RaBitQ index and PQ-INT8 quantizer; RaBitQ supports runtime AVX2 / AVX512 dispatch, so the same binary automatically picks the best path on each CPU.
- Deployment experience improved: Prebuilt dynamic libraries slimmed significantly (macOS arm64 C API library 37→22 MB, -40%); new musl libc / Alpine Linux support; prebuilt SDK binaries for Linux (glibc/musl), macOS, Windows, Android, and iOS published with every release.
- DocIterator: New iterator for streaming full-collection document traversal across C++, C, and Python.
- Full-text search: New N-gram tokenizer, better suited for phrase, code, and short-text search.
Zvec offers official SDKs across multiple languages:
pip install zvec (requires 64-bit Python 3.10–3.14)npm install @zvec/zveccargo add zvec-rustflutter pub add zvecSearching code or documents? Try zvec-grep (zg) — a local-first search CLI that unifies ripgrep, BM25, and vector search, built for humans and AI agents.
Prefer a visual tool? Try Zvec Studio to browse data and debug queries — no code required.
If you prefer to build Zvec from source, please check the Building from Source guide.
import zvec
# Define collection schema
schema = zvec.CollectionSchema(
name="example",
vectors=zvec.VectorSchema("embedding", zvec.DataType.VECTOR_FP32, 4),
)
# Create collection
collection = zvec.create_and_open(path="./zvec_example", schema=schema)
# Insert documents
collection.insert([
zvec.Doc(id="doc_1", vectors={"embedding": [0.1, 0.2, 0.3, 0.4]}),
zvec.Doc(id="doc_2", vectors={"embedding": [0.2, 0.3, 0.4, 0.1]}),
])
# Search by vector similarity
results = collection.query(
zvec.Query(field_name="embedding", vector=[0.4, 0.3, 0.3, 0.1]),
topk=10
)
# Results: list of {'id': str, 'score': float, ...}, sorted by relevance
print(results)
Zvec delivers exceptional speed and efficiency, making it ideal for demanding production workloads.
For detailed benchmark methodology, configurations, and complete results, please see our Benchmarks documentation.
We welcome and appreciate contributions from the community! Whether you're fixing a bug, adding a feature, or improving documentation, your help makes Zvec better for everyone.
Check out our Contributing Guide to get started!
(top 30 of 31)
C++
81.7%
Python
7.4%
SWIG
6.1%
C
3.3%
CMake
1.3%