TopGit
GitHub Repo Review

Zvec Vector Database: In-Process Embedded Search in C++

alibaba/zvec

Zvec vector database is an open-source, in-process vector search engine from Alibaba, written in C++ and embedded directly into your app — no separate server to run. It handles dense and sparse embeddings, native full-text search, and hybrid queries that fuse vector similarity with keyword and scalar filters, with write-ahead logging for durability. SDKs ship for Python, Node.js, Go, Rust, and Dart/Flutter.

ZZvec Vector Database: In-Process Embedded Search in C++ — open-source GitHub repository preview
Quick verdict

Reach for the Zvec vector database if you want embedded similarity search that lives inside your process — like SQLite for vectors — without standing up a Milvus or Qdrant server. Skip it if you need distributed, multi-node writes or a settled 1.0 API: it's at v0.5.0 and writes are single-process only, so multi-writer or cluster workloads aren't the target.

Stars
★ 13.4k
Forks
⑂ 811
Language
C++
License
Apache-2.0
Topic
AI Tools
Updated
Jul 2026
Homepage
GitHub

The problem it solves

Most vector databases — Milvus, Qdrant, Weaviate — run as a separate service you deploy, connect to over the network, and operate. For a notebook, a CLI tool, a desktop app, or an edge device, that's a lot of moving parts for what is really just a local index. You either take on server ops or bolt vector search onto Postgres. Zvec's answer is to run the database in-process, the way SQLite does for relational data: the index is a library call, not a network hop.

What is it?

The Zvec vector database is an open-source (Apache-2.0) in-process vector database written in C++ and maintained by Alibaba. Instead of a client-server deployment, it embeds as a library inside your application and stores collections on local disk. It supports dense and sparse vectors, multiple index types (HNSW is listed in its topics; a DiskANN on-disk index landed in v0.5.0), native full-text search over string fields, hybrid retrieval in a single query, and write-ahead logging so data survives a crash. The README says it has been used inside Alibaba Group.

Why it's getting attention

It's an Alibaba-backed project that has crossed roughly 14.7k GitHub stars, and the v0.5.0 release (June 2026) added full-text search, hybrid retrieval, and a DiskANN on-disk index, plus official Go and Rust SDKs and a visual tool called Zvec Studio. The in-process, embed-anywhere angle — vector search without running a server — is the same pattern that made sqlite-vec and LanceDB popular, and Zvec is chasing it with a broad language-SDK lineup.

How this repository's GitHub stars have grown over time. Source: star-history.com.View the star history

Key features

  • In-process/embedded: runs as a library inside your app, with no separate database server to deploy or connect to
  • Dense and sparse vectors, multi-vector queries, and index types that scale from in-memory (HNSW) to on-disk (DiskANN, added in v0.5.0)
  • Native full-text search (FTS) over string fields, so keyword queries don't need a separate search engine
  • Hybrid retrieval that combines vector similarity, full-text, and scalar filters in a single MultiQuery
  • Write-ahead logging (WAL) for durability, so data persists through a process crash or power loss (per the README)
  • Concurrent access model: multiple processes can read a collection at once, but writes are single-process exclusive
  • SDKs for Python, Node.js, Go, Rust, and Dart/Flutter, plus prebuilt binaries for Linux, macOS (ARM64), and Windows

Best use cases

  • Adding local semantic search or RAG memory to an app without deploying a vector-database server
  • Embedding vector search inside a desktop, CLI, or notebook workflow where a network database is overkill
  • Running similarity search on an edge device or in an offline environment
  • Combining keyword full-text search and vector similarity in one query for more precise retrieval

How to install / try

Zvec ships prebuilt SDKs, so the common path is a package install rather than a build. Python: `pip install zvec` (Python 3.10–3.14). Node.js: `npm install @zvec/zvec`. Dart/Flutter: `flutter pub add zvec`. Official Go and Rust bindings live in separate repos. Prebuilt binaries cover Linux (x86_64, ARM64), macOS (ARM64), and Windows (x86_64); building from source requires the project's C++ toolchain and its Building from Source guide.

How to use

In Python you define a `CollectionSchema` with a vector field, call `zvec.create_and_open(path=..., schema=...)` to open a collection on local disk, `insert()` a list of `zvec.Doc` objects with their embeddings, then run `collection.query(zvec.Query(field_name=..., vector=[...]), topk=10)` to get the nearest matches back as scored results. There's no server to start — the collection is a directory on disk. Full API details are in the project's docs.

Strengths

  • No server to run: the database is a library call, which cuts deployment and ops for local or embedded use
  • Broad SDK coverage — Python, Node.js, Go, Rust, Dart/Flutter — which is unusual for an embedded vector DB
  • Full-text plus vector plus scalar filters in one query, instead of stitching a search engine onto a vector store
  • WAL-backed durability and an on-disk DiskANN index for datasets larger than RAM (per the README)
  • Apache-2.0 licensed and backed by Alibaba, with active releases

Limitations & risks

  • Single-writer by design: multiple processes can read a collection, but only one can write at a time — no multi-writer or clustered write path, so it's not a drop-in for a distributed vector service
  • Young and pre-1.0: the current release is v0.5.0 (June 2026), so the API and on-disk format can still change between versions
  • C++ core reached through language bindings — building from source needs a C++ toolchain, and issues can straddle the binding boundary
  • Performance and 'used inside Alibaba Group' claims come from the project's own README and benchmark docs; the repo metadata has no independent benchmark
  • Prebuilt binaries are limited to Linux, macOS ARM64, and Windows x86_64 — no Intel-mac binary is listed, so those users build from source
View on GitHubHomepage

Alternatives

sqlite-vec — a vector search extension for SQLite, the closest in-process/embedded analogueLanceDB — an embedded vector database built on the Lance columnar formatChroma — an open-source embedding database popular for local RAG prototypesFaiss — Meta's similarity-search library for raw vector indexing without a database layer

Who should try it — and who should skip

Developers who want vector search embedded directly in an app — a desktop tool, a CLI, a notebook, an edge device, or a single service — and would rather not run and operate a separate vector-database server. If you need distributed writes, multi-node scaling, or a locked-down 1.0 API, a server-based system like Milvus or Qdrant fits better; if you're already on Postgres, pgvector may be enough.

Frequently asked questions

What is the Zvec vector database?

Zvec is an open-source, in-process vector database from Alibaba, written in C++ and licensed Apache-2.0. It embeds as a library inside your application — no separate server — and supports dense and sparse vectors, full-text search, and hybrid queries.

Is Zvec free and open source?

Yes. Zvec is licensed under Apache-2.0 and developed in the open on GitHub under the alibaba organization.

How is Zvec different from Milvus or Qdrant?

Milvus and Qdrant run as separate server processes you deploy and connect to over the network. Zvec runs in-process as a library, closer to how sqlite-vec or LanceDB work, so there's no server to operate.

What languages does Zvec support?

The README lists official SDKs for Python (3.10–3.14), Node.js, Go, Rust, and Dart/Flutter, with prebuilt binaries for Linux, macOS ARM64, and Windows x86_64.

Can Zvec do keyword search as well as vector search?

Yes. Since v0.5.0 it has native full-text search over string fields and hybrid retrieval that combines full-text, vector similarity, and scalar filters in a single query.

Related repositories

Source & attribution

Based on the official alibaba/zvec GitHub repository, including its README and project metadata.

Back to TopGit