novocayn
Show HN: I built a vector store from scratch (and you can too)
I wrote a hybrid vector store from scratch in Go. Supports hybrid retrieval over BM25, Flat, HNSW, IVF, PQ and IVFPQ Index with Quantization, Pre-Filtering, Reranking, Reciprocal Rank Fusion, Soft Deletes, Index Rebuilds and much much more.It's called Comet. Built for hackers, not hyperscalers. It's tiny enough to fit in your head, and good enough to blow it :DIt packs everything you need to...
Show HN: I wrote a VectorDB in Go, built for Hackers, not Hyperscalers
If you notice there are vv obvious optimizations we could make. I’m planning to collect them and put a these as code challenges for readers, and building string-based queries would make a great one :)
Ohh boi, that’s exactly how the movie "Her" started! XD
Should a multi-part blog would've been better?
Is vibe-commented a thing yet? :D
Wanted to give fellow readers a good on-ramp for understanding the FTS internals. Figured leaning into readability wouldn’t hurt
For me this makes the structure super easy to grok at a glance
https://github.com/wizenheimer/blaze/blob/27d6f9b3cd228f5865...
That said, totally fair read on the comments. Curious if they helped/landed the way I intended. or if a multi-part blog series would’ve worked better :)
When you think OP vibe-coded the project but can’t prove it yet
I intended this to be an easy on-ramp for folks who want to get a feel for how FTS engines work under the hood :)
It ended up being a clean, reusable component, so I decided to carve it out into a standalone project
The README is mostly notes from my Notion pages, glad you found it interesting!
One’s for browsing HN at work, the other’s for home, and the third one has a username I'm not too fond of.
I’ll stick to this one :) I might have some karma on the older ones, but honestly, HN is just as fun from everywhere