Skip to content

sqlite-vec

A vector search SQLite extension that runs anywhere!

sqlite
-- store 768-dimensional vectors in a vec0 virtual table
create virtual table vec_movies using vec0(
  synopsis_embedding float[768]
);

-- insert vectors into the table, as JSON or compact BLOBs
insert into vec_movies(rowid, synopsis_embedding)
  select
    rowid,
    embed(synopsis) as synopsis_embedding
  from movies;

-- KNN search!
select
  rowid,
  distance
from vec_movies
where synopsis_embedding match embed('scary futuristic movies')
order by distance
limit 20;