A high-performance vector database engine with native C++ backend and Python bindings
Project description
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.3.1 (Apr 17, 2026)
- Relaxed collection path restrictions and improved Windows path handling.
🚀 v0.3.0 (April 3, 2026)
💫 Features
- Blazing Fast: Searches billions of vectors in milliseconds.
- Simple, Just Works: Install and start searching in seconds. Pure local, no servers, no config, no fuss.
- Dense + Sparse Vectors: Work with both dense and sparse embeddings, with native support for multi-vector queries in a single call.
- Hybrid Search: Combine semantic similarity with structured filters for precise results.
- Durable Storage: Write-ahead logging (WAL) guarantees persistence — data is never lost, even on process crash or power failure.
- Concurrent Access: Multiple processes can read the same collection simultaneously; writes are single-process exclusive.
- Runs Anywhere: As an in-process library, Zvec runs wherever your code runs — notebooks, servers, CLI tools, or even edge devices.
📦 Installation
Python
Requirements: Python 3.10 - 3.14
pip install zvec
Node.js
npm install @zvec/zvec
✅ Supported Platforms
- Linux (x86_64, ARM64)
- macOS (ARM64)
- Windows (x86_64)
🛠️ 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.VectorQuery("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.
For detailed benchmark methodology, configurations, and complete results, please see our Benchmarks documentation.
🤝 Join Our Community
❤️ 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!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file zvec-0.4.0-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: zvec-0.4.0-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 65.6 MB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ab531aeb44629e246eb4241df0b356b12c30b26bf14ed95e503d967a04bb345c
|
|
| MD5 |
08bb1b6a0790a284132833673cf12632
|
|
| BLAKE2b-256 |
49a04e513e32beac5dcf8fe16474d964eca167a8828d6f6ac6cba0f2375f9008
|
File details
Details for the file zvec-0.4.0-cp314-cp314-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: zvec-0.4.0-cp314-cp314-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 62.5 MB
- Tags: CPython 3.14, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
da97077cdbeffde5131d848c4c050bcda5990eba41a887701005bf4ab7a3611c
|
|
| MD5 |
c815be59ee8f03abb2e0aeaff4922426
|
|
| BLAKE2b-256 |
74bf3edbc4b37ecf096750e1a7fe1c5e10495e0d8c41523c41d4f9d50cc973ba
|
File details
Details for the file zvec-0.4.0-cp314-cp314-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: zvec-0.4.0-cp314-cp314-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 55.5 MB
- Tags: CPython 3.14, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7dbd6325c929960d4ad1adb8e976f5fcafd45b0a404a6b08e04d376a2b3d183e
|
|
| MD5 |
a14cc9d713d3c0c54376654aabe97f9c
|
|
| BLAKE2b-256 |
4ca69d00e0bec5ef7d2b3de1bf2dc32453150fcb27abece695a13edcd01d8896
|
File details
Details for the file zvec-0.4.0-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: zvec-0.4.0-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 38.7 MB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e8776fcf1874e541c20ce1baaeda1dbf092ac1cccc18d765483ca7906792fbb
|
|
| MD5 |
dce176976955dea721a7c5e2f6435a1e
|
|
| BLAKE2b-256 |
e93c84911b8cbd330975f8868ed4b76407aa99accf7185d57a22f54162140370
|
File details
Details for the file zvec-0.4.0-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: zvec-0.4.0-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 64.1 MB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
46ee324a878ea4f5a43409ebca87c2a554541bd5459137aa769b7bedff6d32d6
|
|
| MD5 |
c54663f0d8bcf129db975572e7ce0e88
|
|
| BLAKE2b-256 |
f833f0d45a40178ea2084c484c7bad2e4fcc931e23846af61fc134926b297743
|
File details
Details for the file zvec-0.4.0-cp313-cp313-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: zvec-0.4.0-cp313-cp313-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 62.5 MB
- Tags: CPython 3.13, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6942085ca86fe671368b0c433f39d1576bf8ef67937814bc192774dd41fa9740
|
|
| MD5 |
7927fee82c7f4424650a9afc135f5c5b
|
|
| BLAKE2b-256 |
f1fd1417cc6645b46e0d530d45f5bb20c0799baecf5fdba92cb13958f9421188
|
File details
Details for the file zvec-0.4.0-cp313-cp313-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: zvec-0.4.0-cp313-cp313-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 55.5 MB
- Tags: CPython 3.13, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a6f81c827943060ed654fe6b8ebb7cd20bd5677922c5a9d9fad3083cb8d96245
|
|
| MD5 |
bd4b0766d60a3128b767c73be6c5d057
|
|
| BLAKE2b-256 |
6f744a5b881c46a2364ceb629ecf465445cd0f8f31e7b0e3fbc5d7f9d699d9e1
|
File details
Details for the file zvec-0.4.0-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: zvec-0.4.0-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 38.7 MB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f82289d92cd3e100b44b07307d94e89bd399340856b09939e582ee2dda60a10
|
|
| MD5 |
be02f769b1de5f4a8e8784b508ac2432
|
|
| BLAKE2b-256 |
5e55904c26c32297511d3f55ce253a13d0776bb4ec543315fc4ca557b18f7639
|
File details
Details for the file zvec-0.4.0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: zvec-0.4.0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 64.1 MB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2a7d3ef7c0580fb2d27d976f9774a57337aeb62fb9e924e8ee4f089e046bc090
|
|
| MD5 |
fac41e573056e96c1aa7089e1a39f96f
|
|
| BLAKE2b-256 |
d0dc55967a821113a0c091ff3e643fe0e6af2543af5356635ac6b8e9a97aca3b
|
File details
Details for the file zvec-0.4.0-cp312-cp312-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: zvec-0.4.0-cp312-cp312-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 62.5 MB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8e08f82a7895f369392dc8fde8767e493b728b59ca9a318224204d66a0c7f6df
|
|
| MD5 |
6ee48510e363447ce1de614a580c42b8
|
|
| BLAKE2b-256 |
ef49a80348e1762985ed59f75e603a5f969d8f045d84520976a56af6853bdc4c
|
File details
Details for the file zvec-0.4.0-cp312-cp312-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: zvec-0.4.0-cp312-cp312-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 55.5 MB
- Tags: CPython 3.12, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
70baa0c6da15a1fb825b6d69e1927263ca0bb3bef586dcff295def7dae409c16
|
|
| MD5 |
9d9c0cd6dd597e3120e6c9276c851ed7
|
|
| BLAKE2b-256 |
b36c543580c77fe998fb0aaf18af0b72472b941801516cf3c0e5bbe322bab7dd
|
File details
Details for the file zvec-0.4.0-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: zvec-0.4.0-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 38.7 MB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0736a6d659cea82b9eaaae3da0d7477ba651d87d014f855a3eac8e865201a8cc
|
|
| MD5 |
92093e12478ccf371e3033672106f216
|
|
| BLAKE2b-256 |
8c0a3daa85e8eed5396d27943832f0dcce9a20cd4bfe94dbc7f71b46d26a6c42
|
File details
Details for the file zvec-0.4.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: zvec-0.4.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 64.1 MB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5d456af34c5e6995bf2d33d1b746e3fd8263c2b25b45e9f8d4cac613094dcd39
|
|
| MD5 |
222b3099d55df75acd1c19e0b3e266e3
|
|
| BLAKE2b-256 |
31dc9ea8e6b2bece421fec6629c58c8138c82280142d835023bb961763b0caec
|
File details
Details for the file zvec-0.4.0-cp311-cp311-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: zvec-0.4.0-cp311-cp311-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 62.5 MB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d0f74540ac48da3172aee2a49221a8f6aa9de426a9c0bb1c65bd36caf0d2622e
|
|
| MD5 |
a3799f188bcf4888e1f5e851ab912572
|
|
| BLAKE2b-256 |
3fe1b63fc8f4f0ddae3f55721d30dd7fec47844c67fc8b692676b6f9131e895a
|
File details
Details for the file zvec-0.4.0-cp311-cp311-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: zvec-0.4.0-cp311-cp311-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 55.5 MB
- Tags: CPython 3.11, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4bf2eb70a727c8b467c23ab9e696169c6d5c82bae002f8db1dc002c28dab6daf
|
|
| MD5 |
9c7d3236656582c6aa689a312cfc94c5
|
|
| BLAKE2b-256 |
6dad2e9c22b89e9428b2fc545b38303011630b8b64d5402cf8062364cf10f809
|
File details
Details for the file zvec-0.4.0-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: zvec-0.4.0-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 38.7 MB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2e49b14b9137b2de0b5df50df8370b07922c135e05e8c3087d53fe8b6788c862
|
|
| MD5 |
ef42659e3032a66fa46c39e94bd41a9a
|
|
| BLAKE2b-256 |
dfae734f58872f6bfa61d8a86bd459cba1527977213ba9e76fa29f820989ffa2
|
File details
Details for the file zvec-0.4.0-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: zvec-0.4.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 64.1 MB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
23c78629b8d21fb60ac19766a5b1a45dabd53927e3b82ea6c8eb6665598c6dd5
|
|
| MD5 |
207f4500cf8ab0ee56a2e903ef76c41a
|
|
| BLAKE2b-256 |
65f963475f688e71731c0ac3cebe17d1a60c7f61e17c35b34fb31e518e2f9747
|
File details
Details for the file zvec-0.4.0-cp310-cp310-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: zvec-0.4.0-cp310-cp310-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 62.5 MB
- Tags: CPython 3.10, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aac146951990d4926d494a2d40b003330176045ea2849a758aebc72588494b79
|
|
| MD5 |
be5a8ab2055bb61d8134069718f03c98
|
|
| BLAKE2b-256 |
13995244a7f5d7ae15575a27d5a51a9b06ea7d49029d0db2c7e02dc7be67ce13
|
File details
Details for the file zvec-0.4.0-cp310-cp310-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: zvec-0.4.0-cp310-cp310-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 55.5 MB
- Tags: CPython 3.10, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a7744628eed7cf41999f54d18a17386a8bceb560ed570b2cefd3fa19e03f8af
|
|
| MD5 |
8c4348b267a5ee90adcf5a51a725a7b5
|
|
| BLAKE2b-256 |
a0fa525ecbb11291f20c2ad152a74c23bef0b69a5c2174953b2c153eb4e61429
|
File details
Details for the file zvec-0.4.0-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: zvec-0.4.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 38.7 MB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50fcf8f9ac853c3f591ec88efd4bb61375cc21a4031369cb56052656ac5e8f61
|
|
| MD5 |
18cdfc806077decfccf473ab72e3a3d8
|
|
| BLAKE2b-256 |
e2a0c9e4b9299012524e73cd4a0a54e6004dcf4f8e3d701f039a0fa5444fb66b
|