Modern search engines combine multiple retrieval techniques: lexical search (BM25), semantic vector search, caching, and ranking.
I wanted to understand how these components interact, so I implemented a miniature search pipeline from scratch.
Key parts:
• Bloom filter to skip zero-result queries • LSM-tree backed inverted index • HNSW graph for semantic vector search • W-TinyLFU admission-aware caching • Reciprocal Rank Fusion to merge rankings
One interesting optimization was using skip pointers in the posting lists to reduce intersection complexity from O(n*m) to roughly O(n * sqrt(m)).
Another was using deterministic N-gram embeddings to avoid external embedding APIs.
Full writeup + code: https://github.com/AyushSuri8/nexus-search-engine
[link] [comments]




![Halpatiokee Park [Stuart, FL]](https://preview.redd.it/yc2jvtj3cr3h1.jpg?width=140&height=140&crop=1:1,smart&auto=webp&s=b2f1cd5287a887343d041998e03125d29890059e)










English (US) ·