Install any skill in seconds. Free to start, no credit card required.
Get Started Free →qdrant/qdrant-relevance-feedback
Expanding the candidate pool via relevance feedback, as an alternative to reranking when a dense retriever is too weak.
Passed 21 of 22 test cases with the skill, and 14 of 22 without it.
and 11 more in the full report
8 fixed14 passed either way0 still failing1 broke
Tokens, turns and time describe resource use, not a dollar price.
This benchmark measured an earlier version of the skill.
One of 7 test cases the skill fixed. Same model, same prompt, with and without the skill.
We store sparse BM25 vectors in a Qdrant collection named `text_sparse`. We want to apply Qdrant Relevance Feedback queries to this sparse vector handle to improve BM25 recall. What is the syntax for configuring `RelevanceFeedbackQuery` on sparse vectors?
| Checked | Without skill | With skill |
|---|---|---|
| The response states that relevance feedback queries are not supported on sparse vectors. | Missed | Passed |
The instructions your model reads when the skill loads.
Reranking reorders documents that have already been retrieved. Qdrant's Relevance Feedback (RF) instead modifies the vector search process itself based on a small amount of reranker feedback, distilling reranker (feedback model) knowledge into the search step. This allows RF to surface documents that the initial ANN search did not score highly enough.
The RF is intended for tasks where relevance correlates with similarity in vector space. It is available as of Qdrant 1.17.
Read this whole skill before implementing: pick the usage pattern that matches the user's goal, and check the What NOT to Do list.
A relevance feedback query takes the query (target), a few seed documents (feedback) scored by a feedback model (3-5 seeds is enough), and formula weights for the naive strategy. See Relevance Feedback for the request format.
The formula weights MUST be trained once per general search use case (your dataset, dense retriever, and feedback model). If you do not train them, results will at best be random and will not align with your data distribution or model behavior. Training is lightweight because the formula itself is simple.
During search, it scores each candidate by combining similarity to the original query, similarity to highly rated seed documents and dissimilarity to poorly rated ones.
A feedback model is any model that can produce a float relevance score for (query, document) pairs. Higher scores must always mean higher relevance.
Examples: a cross-encoder, embedding similarity (for example, cosine similarity between query and document embeddings, or max_sim for late interaction models), an LLM-based scorer, a custom ranker.
The feedback model used during training and inference MUST be the same model. Formula weights during training are calibrated to that model's score distribution. If you switch feedback models, you must retrain.
What is a Good Feedback Model:
Use when: setting up RF for a new use case — a new collection, feedback model, or embedding model powering ANN search.
RF uses a weighted formula that combines the original query vector with feedback signals.
For the currently available naive strategy, the learned weights control:
a — how much to trust the original ANN query-document similarityb — how strongly differences in feedback scores matterc — how strongly to follow the feedback direction (toward relevant documents and away from irrelevant ones)These weights must be learned from your data before use. You cannot safely use arbitrary values.
test cases passed, vs 14 / 22 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.