Announcing Zvec v0.3.0
TL;DR: We are releasing Zvec v0.3.0, introducing official Windows support and stable SDKs for Python, Node.js, and C. This release also integrates the RabitQ quantization algorithm, enabling efficient vector search with significantly reduced memory usage.
You can find the complete release notes on GitHub.
Platform Expansion: Zvec Arrives on Windows
We are thrilled to announce that Zvec v0.3.0 brings native support for Windows, making our high-performance vector search accessible to a broader range of developers and enterprise environments.
To ensure a seamless experience across all major operating systems, we have released stable, official SDKs for Python, Node.js, and C, now fully supported on macOS, Linux, and Windows.
C API
We are pleased to introduce the C API in Zvec v0.3.0. It makes Zvec easier to integrate into a wider range of applications and helps the community build and share bindings for other programming languages.
zvec_vector_query_set_field_name(query, "embedding");
zvec_vector_query_set_query_vector(query, vector1, 3 * sizeof(float));
zvec_vector_query_set_topk(query, 10);
zvec_doc_t **results = NULL;
size_t result_count = 0;
error = zvec_collection_query(collection, (const zvec_vector_query_t *)query,
&results, &result_count);
printf("✓ Query successful - Returned %zu results\n", result_count);RabitQ Quantization
The RabitQ algorithm has been integrated into Zvec, a breakthrough in vector quantization that delivers high recall with a significantly reduced memory footprint. For more details, please refer to the documentation.
Getting started is simple. You can enable RabitQ like this:
import zvec
collection_schema = zvec.CollectionSchema(
name="example_collection",
vectors=zvec.VectorSchema(
name="vector",
data_type=zvec.DataType.VECTOR_FP32,
dimension=512,
# Use HNSW-RabitQ index for similarity search with cosine distance metric
index_param=zvec.HnswRabitqIndexParam(metric_type=zvec.MetricType.COSINE),
),
)
collection = zvec.create_and_open(path="./example_collection", schema=collection_schema)And query it just like any other index:
result = collection.query(
vectors=zvec.VectorQuery(
field_name="vector",
vector=[0.1] * 768,
param=zvec.HnswRabitqQueryParam(ef=300),
),
topk=10,
)AI Integration (Skills/MCP)
To bridge the gap between vector search and AI application development, Zvec v0.3.0 introduces official support for Agent Skills and the MCP (Model Context Protocol) Server.
This integration allows LLM agents to directly interact with Zvec for semantic search and data management, enabling the creation of intelligent agents that can query and manipulate vector data using natural language.
Improvements & Fixes
- Performance: Boosted batch calculation performance for Inner Product (IP) and L2 metrics on x86 platforms.
- Stability
- Refined CPU detection and SIMD dispatch logic to prevent illegal instruction errors on older hardware.
- Fixed bugs affecting collection recovery after unexpected environment crashes.
Roadmap
For a glimpse into our future plans and upcoming features, please visit our official roadmap.