Skip to main content

A high-performance vector database engine with native C++ backend and Python bindings

Project description

zvec logo

Linux x64 CI PyPI Release License

Zvec

Zvec is an open-source, in-process vector database — lightweight, lightning-fast, and designed to embed directly into applications. Built on Proxima (Alibaba's battle-tested vector search engine), it delivers production-grade, low-latency, scalable similarity search with minimal setup.

📚 Quick Start | 🌐 Website | 📖 Documentation | 📊 Benchmarks

💫 Features

  • Blazing Fast: Searches billions of vectors in milliseconds.
  • Simple, Just Works: Install with pip install zvec and start searching in seconds. 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.
  • Runs Anywhere: As an in-process library, Zvec runs wherever your code runs — notebooks, servers, CLI tools, or even edge devices.

📦 Installation

Install Zvec from PyPI with a single command:

pip install zvec

Requirements:

  • Python 3.10 - 3.12
  • Supported platforms:
    • Linux (x86_64)
    • macOS (ARM64/x86_64)

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)

❤️ 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

zvec-0.1.0-cp312-cp312-manylinux_2_28_x86_64.whl (16.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

zvec-0.1.0-cp312-cp312-macosx_11_0_arm64.whl (9.8 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

zvec-0.1.0-cp311-cp311-manylinux_2_28_x86_64.whl (16.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

zvec-0.1.0-cp311-cp311-macosx_11_0_arm64.whl (9.8 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

zvec-0.1.0-cp310-cp310-manylinux_2_28_x86_64.whl (16.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

zvec-0.1.0-cp310-cp310-macosx_11_0_arm64.whl (9.8 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file zvec-0.1.0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zvec-0.1.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5b9394e9d855983e2d0a4b9d681ddd961680d8255b6341d8a38cb7065e3de100
MD5 23d91153278e74ffb79b61b9927c8152
BLAKE2b-256 860e4f7e0413d104a68f4f034ee9cc0d507ad68255f077558ef3929b162c5182

See more details on using hashes here.

File details

Details for the file zvec-0.1.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zvec-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 de3d57d9bd8a20a0ed1cfa4a6f4077e9495f5e9c9414954e7aded47e45d17d8d
MD5 9590d9177f3560dabf87acb64418f063
BLAKE2b-256 87c934ea3c348e44a2cfc320995b668a47b23910bddd87f382b58e3cbdf329d8

See more details on using hashes here.

File details

Details for the file zvec-0.1.0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zvec-0.1.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4edd33fb32baf96831a77f074a07c4a0a2183202eb305ab0693a12e771e78b32
MD5 4e26619728e9f56d83489602acf35b8a
BLAKE2b-256 882f5cb9e3d27c1d57c742faf2f921ca7fab5b49005e94659380ed248b59ef1e

See more details on using hashes here.

File details

Details for the file zvec-0.1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zvec-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f6ff7ff97a3a3d8c2f0d28d02f6cf56b41b915aef5a60ccfd1da778073b8e45d
MD5 9feecddc001b02a299d5e7f523750d93
BLAKE2b-256 9da7aae252d212cb64543e2a7358301269ee992e8c5f21a614df98157bbd85a5

See more details on using hashes here.

File details

Details for the file zvec-0.1.0-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zvec-0.1.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4376e592e247ea57d0b147e256c91a7ac4ed389d06367fc232deb2a57b71e278
MD5 7eb183d51cccc92c6d9965ee8c240445
BLAKE2b-256 2f289c504c196aa94bebcd2e38dfd622cc1a1acfb6fda774f39ab69197555a8a

See more details on using hashes here.

File details

Details for the file zvec-0.1.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zvec-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e9290347170ad9ba8f8d77b71df7d8e662cf69ebdbe8523e57ac94f4af13b931
MD5 c85e20a55ec291fa970189f78b10716d
BLAKE2b-256 c01408c48151c56668c08472d0995553ea81bf19094ef223abb01ed56a336ae6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page