I'm working on a RAG pipeline using a vector database to search over a Q&A dataset. I'm using embedding-based dense retrieval to fetch relevant answers to user queries.
The issue I'm facing is that when a user query contains multiple intents, the retriever only returns results for one of the intents, often ignoring the others.
For example: If the query is:
"What is the salary of a data scientist, and how do I become one?" My retriever typically only returns results for either the salary part or the "how to become" part, but not both.
I know it's possible to use an LLM to decompose the query into separate single-intent sub-queries and retrieve for each, but that can be computationally expensive and not ideal for my use case.