LangChain has MultiQueryRetriever. LlamaIndex has SubQuestionQueryEngine. Every serious RAG framework decomposes user questions into multiple search queries before hitting the vector database.

Why? Because a single embedding compresses your entire question into one point in vector space. And one point can only land in one neighborhood.

Take this...