3 ms·
Author here, happy to answer any questions! Been working on this for a while, so I'm very happy to get this v0.1.0 "stable" release out. sqlite-vec works on Ma
by alexgarcia-xyz 2y ago
Author here, happy to answer any questions! Been working on this for a while, so I'm very happy to get this v0.1.0 "stable" release out.
sqlite-vec works on MacOS, Linux, Windows, Raspberry Pis, in the browser with WASM, and (theoretically) on mobile devices. I focused a lot on making it as portable as possible. It's also pretty fast - benchmarks are hard to do accurately, but I'd comfortable saying that it's a very very fast brute-force vector search solution.
One experimental feature I'm working on: You can directly query vectors that are in-memory as a contiguous block of memory (ie NumPy), without any copying or cloning. You can see the benchmarks for that feature here under "sqlite-vec static", and it's competitive with faiss/usearch/duckdb https://alexgarcia.xyz/blog/2024/sqlite-vec-stable-release/index.html#benchmarks https://alexgarcia.xyz/blog/2024/sqlite-vec-stable-release/i...
- rcarmo 2y agoGreat to see this. Seems simple enough, but I can't wait until ORMs like peewee incorporate support alongside things like FTS, etc. just for the sake of case of use.
- cyanydeez 2y agoWhich wasm sqlite project would it be compatible with?
- ncruces 2y agoIt can be statically compiled into the official SQLite Wasm builds: https://alexgarcia.xyz/sqlite-vec/wasm.html https://alexgarcia.xyz/sqlite-vec/wasm.html It can also be statically compiled into the Wasm used by my Go bindings.
- bambax 2y agoThank you for this, it's really super exciting! The link on See Installing sqlite-vec for more details. https://alexgarcia.xyz/sqlite-vec/installing.html https://alexgarcia.xyz/sqlite-vec/installing.html is a a 404 (the correct link is https://alexgarcia.xyz/sqlite-vec/installation.html https://alexgarcia.xyz/sqlite-vec/installation.html presumably). The datasette link https://datasette.io/plugins/datasette-sqlite-vec https://datasette.io/plugins/datasette-sqlite-vec is an error 500. On the releases page https://github.com/asg017/sqlite-vec/releases/tag/v0.1.0 https://github.com/asg017/sqlite-vec/releases/tag/v0.1.0 can you explain what is vec0.dll vs sqlite-vec-0.1.0-loadable-windows-x86_64.tar.gz, which also contains a similarly named vec0.dll but of a different size?
- alexgarcia-xyz 2y agowill fix up those links this weekend, thanks for pointing it out! the cvec0.all file can be ignored. i was debugging a issue and uploaded a mscv compiled version as that, but its not part of the official release. prefer the tar.gz version and let me know if it doesn't work
- bambax 2y agoThanks. Can't seem to make the loadable version work on Windows client (using .load and the latest x64 version of sqlite). On Windows 10 it says "Error: the specified module could not be found." On Windows 7 the error is more detailed and complains about missing libgcc_s_seh-1.dll which, according to a quick Google search, may or may not result from a compilation problem with MinGW...?