zvec README

The project's README from github.com/alibaba/zvec. As one markdown file: README.md.

English | 中文

zvec logo

Code Coverage Main License PyPI Release Python Versions npm Release

alibaba%2Fzvec | Trendshift

🚀 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.

👉 Read the Release Notes | View Roadmap 📍

💫 Features

📦 Installation

Zvec offers official SDKs across multiple languages:

Searching 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.

✅ Supported Platforms

🛠️ Building from Source

If you prefer to build Zvec from source, please check the Building from Source guide.

⚡ One-Minute Example

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)

📈 Performance at Scale

Zvec delivers exceptional speed and efficiency, making it ideal for demanding production workloads.

Zvec Performance Benchmarks

For detailed benchmark methodology, configurations, and complete results, please see our Benchmarks documentation.

🤝 Join Our Community

💬 DingTalk 📱 WeChat 🎮 Discord X (Twitter)
DingTalk QR Code WeChat QR Code Discord X (formerly Twitter) Follow
Scan to join Scan to join Click to join Click to follow

❤️ Contributing

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!

zvec (alibaba/zvec)

Searching Database…

16.1K ·GitHub
What is this?Alibaba's open-source, in-process vector database — a lightweight, lightning-fast similarity-search engine you embed directly into your application, battle-tested inside Alibaba Group.
So is this a server I deploy, or something that lives inside my app?A library, not a server: it runs in-process, pure local with no config, wherever your code runs — notebooks, servers, CLI tools, even edge devices.
How do I add it to a project?Install an official SDK: pip install zvec (64-bit Python 3.10-3.14), npm install @zvec/zvec, cargo add zvec-rust, Go bindings, or flutter pub add zvec. Zvec Studio also lets you browse data and debug queries without code.
Do I need to install anything else first?Just the runtime for your SDK of choice — for example, 64-bit Python 3.10-3.14 for the pip package. No separate database server, service, or config files are required.
Can several of my services write to one collection at the same time?No — writes are single-process exclusive: many processes can read a collection simultaneously, but only one can write. Data safety itself is covered, since WAL guarantees persistence across crashes and power failures.
Which platforms can it run on?Linux (x86_64 and ARM64, glibc and musl/Alpine), macOS (ARM64 and x86_64), and Windows (x86_64); prebuilt SDK binaries for Android and iOS ship with every release.
Does my data ever leave my machine?Nothing leaves your machine. Zvec is pure local with no servers — all indexing and search happens inside your own process.
What kinds of search does it actually support?Dense and sparse embeddings with multi-vector queries, native keyword-based full-text search, and hybrid search that fuses vector similarity, FTS, and structured filters in a single query. Vector index types scale from memory to disk.
How fast is it, and how much data can it handle?It searches billions of vectors in milliseconds. v0.7.0 productionizes DiskANN, adding Linux and macOS ARM64 support plus an iouring async I/O backend that automatically falls back to the best available option.
What is zvec-grep (zg)?A local-first workspace search CLI that unifies ripgrep, BM25, and vector search behind one command, built for humans and AI agents. Zvec also serves as a file store backend for ReMe, a memory management kit for agents.
What are similar projects?xerj, weaviate, memvid, RuVector, lancedb, qdrant, turbovec, milvus
Creator
alibaba
Size
10.8 MB
Stars
16.1K
Age
10mo
Commits · 90 Days