
Hybrid search in .NET with Qdrant, BM25 and Ollama
==Hybrid search== in .NET: **dense** vectors and **BM25** keywords fused into *one ranking* with **Reciprocal Rank Fusion**. One Qdrant collection with *two named vectors*, local embeddings via *Ollama* and *Microsoft.Extensions.AI*, and a **Minimal API** that compares the three modes — *dense*, *keyword*, *hybrid* — over the same knowledge base. Then the level-up: a **RAG** endpoint that sends the retrieved documents to a local LLM, a **semantic cache** of the answers on Qdrant, **Redis** for output caching and **MongoDB** with a generic repository and pagination. Bonus: the AI provider becomes an *appsettings* switch — Ollama or any **OpenAI-compatible** endpoint — plus a hard look at **Microsoft Agent Framework**.






