sqlite-vec
Installation
SKILL.md
sqlite-vec
sqlite-vec is a lightweight SQLite extension for vector similarity search. It enables storing and querying vector embeddings directly in SQLite databases without external vector databases.
Gates
When wiring storage and KNN queries, run these steps in order; each step has an objective pass before you rely on results in production or in review comments.
- Dimension lock — The
Ninfloat[N],int8[N], orbit[N]matches the embedding model’s output length (and any Matryoshka slice you apply). Pass: the sameNappears in theCREATE VIRTUAL TABLEDDL and in the serialized vector length (len(vector)or the model’s documented dimension). - Serialization match — Column type and Python (or other) helpers align:
serialize_float32forfloat[N],serialize_int8forint8[N], binary rules forbit[N]. Pass: at least one round-trip insert of a known test vector and aMATCHquery using the same serializer returns the expected row (e.g.k = 1returns that row). - Doc-backed edge claims — Distance metric choice, metadata filter operators, partition-key rules, or version-specific behavior are only asserted if they appear in this skill or in the official docs linked under Resources. Pass: the relevant URL or doc section is cited in the artifact (issue, PR, or note) before the claim is treated as settled.
Quick Reference
Load Extension
import sqlite3
import sqlite_vec
from sqlite_vec import serialize_float32