DEV.co
Vector Databases · RyanCodrai

turbovec

TurboVec is a Rust-based vector search index that compresses embeddings 8–10× using Google's TurboQuant algorithm, with Python bindings and SIMD search kernels. It requires no training phase, supports real-time ingestion, and claims 10–19% faster search than FAISS on ARM while matching or trailing slightly on x86.

Source: GitHub — github.com/RyanCodrai/turbovec
12.6k
GitHub stars
1.1k
Forks
Python
Primary language
MIT
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
RepositoryRyanCodrai/turbovec
OwnerRyanCodrai
Primary languagePython
LicenseMIT — OSI-approved
Stars12.6k
Forks1.1k
Open issues12
Latest releaseUnknown
Last updated2026-06-10
Sourcehttps://github.com/RyanCodrai/turbovec

What turbovec is

A quantized ANN index implementation wrapping TurboQuant (data-oblivious Beta-distribution-based compression) with hand-coded AVX-512BW and NEON kernels. Supports filtered search via in-kernel allowlists, persistent storage, and framework integrations (LangChain, LlamaIndex, Haystack, Agno). Ships as Rust library and Python package with optional external id management.

Quickstart

Get the turbovec source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/RyanCodrai/turbovec.gitcd turbovec# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Memory-constrained RAG on edge or in-VPC

10M documents compressed from 31 GB to 4 GB; no external service calls. Suitable for air-gapped or latency-sensitive deployments where you control embedding generation.

Hybrid retrieval with dynamic filtering

Filtered search at kernel level avoids over-fetching; rerank within SQL/BM25/ACL-filtered candidate sets without quality loss. Useful for multi-tenant systems with per-tenant data constraints.

ARM-based deployments (mobile, Raspberry Pi, Apple silicon)

Claimed 10–19% speed win over FAISS on ARM via NEON kernels. Practical for on-device embedding lookup where CPU resources are limited.

Implementation considerations

  • No release tags in repo history; assess which git commit is production-ready. Unclear if PyPI package is kept in sync.
  • TurboQuant assumes vectors are unit-normed L2. Verify your embedding model outputs match this assumption; non-normalized inputs may degrade recall.
  • Filtered search (allowlist) requires external id tracking; IdMapIndex adds O(1) deletion but uses a u64 slot map. Plan for id collision/overflow in long-lived systems.
  • Recall vs FAISS varies by dimension and bit-width: wins at 4-bit, trails at 2-bit on x86. Benchmark on your actual embedding model and dimension before committing.
  • Multi-threaded search is available; single-threaded latency may be higher than FAISS on x86 2-bit. Profile end-to-end QPS on your hardware.

When to avoid it — and what to weigh

  • You need a fully managed vector database with uptime SLA — TurboVec is a library, not a service. You own operational burden: deployment, scaling, backups, monitoring.
  • Your workload is already optimized for GPU acceleration — TurboVec targets CPU-only SIMD. If you run embeddings on GPU or prefer GPU-accelerated search (e.g., faiss-gpu), CPU quantization search may not be the bottleneck.
  • You require frequent re-training or parameter tuning — TurboQuant is data-oblivious by design (no codebook training). If your domain requires custom calibration per dataset, this inflexibility is a liability.
  • You need battle-tested, long-term commercial support — Project created 2026-03-26, last release unknown, no enterprise SLA or vendor backing stated. Consider maturity risk for critical systems.

License & commercial use

MIT License — permissive OSI-compliant license allowing commercial use, modification, and distribution with attribution.

MIT license permits commercial use without restriction. No proprietary clauses or usage-based fees cited in repo. However, no explicit commercial support, SLA, or warranty stated. Buyer assumes support and maintenance responsibility. Recommend legal review if integrating into revenue-critical systems.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityLow
DEV.co fitGood
Assessment confidenceMedium
Security considerations

No cryptographic operations; data-oblivious algorithm does not depend on secret key. Stored indices (.tv, .tvim) are unencrypted; protect via file-system permissions. No mention of input validation (e.g., malformed vectors, id overflow). As a single-author library, cryptographic or supply-chain audits are not evident. No known CVEs or published security policy.

Alternatives to consider

FAISS (Facebook AI Similarity Search)

Mature, industry-standard C++ library with Python bindings; broader quantization methods (PQ, HNSW, IVF), GPU support, and larger community. Trade-off: higher memory baseline, requires tuning, no built-in filtered search.

Qdrant (Cloud/Self-hosted Vector DB)

Managed or self-hosted service with scaling, backups, filtering, and multi-tenant support out of the box. Trade-off: service operational overhead, network latency, not pure local.

Milvus (Open-source Vector DB)

Distributed open-source vector database with multiple indexing strategies, scaling, and Kubernetes integration. Trade-of: higher DevOps complexity, overkill for single-machine RAG.

Software development agency

Build on turbovec with DEV.co software developers

TurboVec is a viable candidate for memory-constrained, latency-sensitive embedding search on ARM or when filtered retrieval is critical. Benchmark against FAISS and Milvus on your actual embedding dimension, bit-width, and query patterns. Verify maturity and maintenance support fit before adopting in production.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

turbovec FAQ

What is TurboQuant and why does it avoid a training phase?
TurboQuant exploits the fact that after a fixed random orthogonal rotation, vector coordinates follow a known Beta distribution independent of input data. This data-obliviousness eliminates the codebook training step required by Product Quantization.
How much faster is TurboVec than FAISS in real queries?
Benchmarks show 10–19% wins on ARM (NEON), 4–5% wins at 4-bit on x86, and modest losses (~3–8%) at 2-bit on x86. Results are for 100K vectors, k=64; your mileage varies with dimension, bit-width, query volume, and hardware.
Can I use TurboVec with any embedding model?
Yes, provided vectors are L2-normalized and match the index `dim`. The index is agnostic to embedding source. Verify your model outputs unit-norm vectors; non-normalized inputs may degrade recall.
Is there a managed cloud version?
Not mentioned in the repo. TurboVec is a library only. Deployment is your responsibility (on-prem, your cloud account, or your VPC).

Work with a software development agency

Adopting turbovec is usually one piece of a larger software development effort. As a software development agency, DEV.co provides software development services and web development expertise — pairing senior software developers and web developers with your team to design, build, and operate vector databases software in production.

Evaluate TurboVec for Your Vector Search Workload

TurboVec is a viable candidate for memory-constrained, latency-sensitive embedding search on ARM or when filtered retrieval is critical. Benchmark against FAISS and Milvus on your actual embedding dimension, bit-width, and query patterns. Verify maturity and maintenance support fit before adopting in production.