Back to Projects
Hybrid Semantic Vector Search
Dense embeddings and LLM intent recognition search engine
Problem Keyword-based search engines (like BM25) fail when users query using synonyms, natural language questions, or when they express implicit intents.
Solution Designed a hybrid search engine combining vector embeddings (\`paraphrase-MiniLM\`) and Elasticsearch BM25 search. Integrated an LLM-based query intent classifier that reads queries and dynamically adjusts the weights of vector vs. keyword scores.
Challenges * **Vocabulary Mismatch**: Users searching for "automobile coverage" instead of "car insurance". * **Solution**: Dense embeddings easily captured semantic similarity. * **Latency & Payload**: Running transformers for every query can choke servers. * **Solution**: Quantized embeddings and optimized Elasticsearch indexes.
Results * Instantaneous semantic matching. * Relevance scores (NDCG@10) increased significantly. * High intent routing accuracy.
System Architecture
[User Query] ──> [LLM Intent Router] ── (adjust weights) ──> [Elasticsearch Hybrid Search] ──> [Results]
│
└──> [paraphrase-MiniLM Embeddings] ───────────┘
Business Results
↳Instant vector similarity search (<15ms latency)
↳Substantially reduced empty search results pages
↳Dynamic intent recognition for targeted ranking
Technology Stack
paraphrase-MiniLMLLMsElasticsearchTransformersPythonSQL