explaingit

ryancodrai/turbovec

Analysis updated 2026-05-18

1,015RustAudience · developerComplexity · 3/5Setup · easy

TLDR

A fast, memory efficient vector search library in Rust with Python bindings that compresses embeddings up to eightfold while staying faster than FAISS.

Mindmap

mindmap
  root((repo))
    What it does
      Compresses embeddings
      Fast local vector search
      No training step needed
    Tech stack
      Rust core
      Python bindings
      SIMD kernels
    Use cases
      Local RAG pipelines
      LangChain integration
      Large embedding collections
    Audience
      AI developers
    Setup
      pip install turbovec
      cargo add turbovec

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Store and search millions of AI embeddings using far less memory than FAISS.

USE CASE 2

Build a fully local retrieval augmented generation (RAG) pipeline with no cloud vector database.

USE CASE 3

Add vector search to a LangChain, LlamaIndex, or Haystack based AI application.

USE CASE 4

Ship a compressed vector index file that can be loaded later for fast search.

What is it built with?

RustPythonAVX-512NEONFAISS

How does it compare?

ryancodrai/turboveclitellm-labs/litellm-agent-control-planewebstonehq/tuxedo
Stars1,0151,0691,201
LanguageRustRustRust
Last pushed2026-06-202026-07-01
MaintenanceActiveActive
Setup difficultyeasymoderateeasy
Complexity3/54/52/5
Audiencedeveloperpm founderdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min
Not stated in the README text provided.

In plain English

turbovec is a vector search library written in Rust, with Python bindings, built for applications that need to search through large collections of embeddings, the numerical representations that AI models use to capture the meaning of text, images, or other data. It implements Google Research's TurboQuant algorithm, a technique for compressing vectors that needs no training step and no pass over your data before it starts working. The pitch behind the project is memory and speed. A ten million document collection stored as regular 32 bit floating point numbers takes about 31 gigabytes of RAM. turbovec compresses the same collection down to about 4 gigabytes while also searching faster than FAISS, a widely used vector search library from Meta. Because there is no codebook training step, you can add new vectors to the index at any time without needing to rebuild anything. Under the hood, turbovec normalizes each vector, applies a random rotation so that every coordinate follows a predictable statistical distribution, then uses that predictability to bucket each coordinate into a small number of bits using an algorithm called Lloyd Max quantization. The compressed coordinates get packed tightly into bytes, and searches are done directly against the compressed representation using hand written processor specific code for ARM and x86 chips, so there is no need to decompress vectors before comparing them. You can use turbovec from Python with a simple pip install, or from Rust with cargo. It also has ready made integrations for popular AI frameworks like LangChain, LlamaIndex, and Haystack. Because everything runs locally with no external service involved, it fits well into retrieval augmented generation, commonly called RAG, setups where data privacy, memory limits, or search speed matter, and nothing needs to leave your own machine or private network.

Copy-paste prompts

Prompt 1
Show me how to build a turbovec index from a list of OpenAI embeddings in Python.
Prompt 2
Help me integrate turbovec as the vector store in a LangChain RAG pipeline.
Prompt 3
Explain the difference between TurboQuantIndex and IdMapIndex in turbovec.
Prompt 4
Write Rust code that adds vectors to a turbovec index and searches it.

Frequently asked questions

What is turbovec?

A fast, memory efficient vector search library in Rust with Python bindings that compresses embeddings up to eightfold while staying faster than FAISS.

What language is turbovec written in?

Mainly Rust. The stack also includes Rust, Python, AVX-512.

What license does turbovec use?

Not stated in the README text provided.

How hard is turbovec to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is turbovec for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.