sqlite-vec is a compact vector search extension for SQLite created by Alex Garcia with backing from Mozilla Builders, Fly.io, Turso, and SQLite Cloud. Written in pure C with zero external dependencies, the extension adds approximate nearest-neighbor search directly inside SQLite — no separate vector database process, no network calls, no infrastructure complexity. With over 7,400 GitHub stars, it has become the default choice for developers who need embedding search in resource-constrained or embedded environments where running Qdrant, Weaviate, or Pinecone would be overkill.
The extension introduces virtual tables that store float32 and int8 vectors alongside regular SQLite data, enabling hybrid queries that combine traditional SQL filters with KNN vector similarity in a single statement. It supports brute-force exact search for small datasets and an IVF index for larger collections, with proper DELETE support and constraint-based filtering on KNN queries. Since sqlite-vec compiles to a single C file, it runs everywhere SQLite does: server-side Linux and macOS, Windows desktop apps, mobile via SQLite's native Android and iOS support, edge devices like Raspberry Pi, and even in browsers through WebAssembly.
For AI application developers, sqlite-vec eliminates an entire infrastructure layer. RAG pipelines, semantic search features, recommendation engines, and document retrieval systems can all run locally with just SQLite as the storage backend. The extension pairs naturally with embedding APIs from OpenAI, Cohere, or local models through Ollama — generate vectors in your application code and store them directly in the same database as your relational data. This simplicity makes sqlite-vec particularly popular for prototyping AI features, building offline-capable applications, and deploying to environments where a managed vector database is impractical.