<!-- llms-explorer concept facts · https://llms-explorer.com/tree/per-query-fusion-weighting/ · pack 2026-10-15 · ~914 tokens -->

# Per-query fusion weighting

> Depth-first rabbithole dossier for Per-query fusion weighting; source-anchored research pack.

Parent: [Atlas Hybrid Fusion and BM25 Diagnostics](https://llms-explorer.com/tree/mongodb-atlas-hybrid-fusion-bm25-frontier-20261001/) · 4 facets · 7 facts · page: https://llms-explorer.com/tree/per-query-fusion-weighting/

## Definitions

- [low] In Atlas Hybrid Fusion, the `weight` parameter is an optional Double that multiplies the `score` expression by a number after normalization. Sources: https://www.mongodb.com/docs/manual/reference/operator/aggregation/score.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/per-query-fusion-weighting-8fac0bce1e/rabbithole-synthesis.md#core`
- [high] This is not Weaviate. In Elastic's linear retriever, each retriever's `weight` multiplies its scores, must be >= 0 and defaults to 1.0. In Azure AI Search, the vector weighting multiplier defaults to 1.0 (no weighting) and is applied to the initial score before RRF scoring. Sources: https://www.elastic.co/docs/reference/elasticsearch/rest-apis/retrievers/linear-retriever, https://learn.microsoft.com/azure/search/hybrid-search-ranking — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/per-query-fusion-weighting-8fac0bce1e/rabbithole-synthesis.md#core`

## How it works

- [medium] In Atlas Hybrid Fusion, the `scoreDetails` option defaults to `false` and, when enabled, breaks down scoring factors to analyze why a document matched a query and received its score. Sources: https://www.mongodb.com/docs/search/query/score/get-details.md, https://www.mongodb.com/docs/manual/reference/operator/aggregation/score.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/per-query-fusion-weighting-8fac0bce1e/rabbithole-synthesis.md#core`

## Comparisons and alternatives

- [low] MongoDB recommends weighing lexical and vector queries on a per-query basis rather than using static weights for all queries to improve result relevance. Sources: https://www.mongodb.com/docs/vector-search/hybrid-search/hybrid-search-overview.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/per-query-fusion-weighting-8fac0bce1e/rabbithole-synthesis.md#patterns`

## Facts and statements

- [medium] In Atlas Hybrid Fusion, pipeline weights default to `1` if unspecified, must be non-negative numbers (whole or decimal), and can be `0`. Sources: https://www.mongodb.com/docs/manual/reference/operator/aggregation/scoreFusion.md, https://www.mongodb.com/docs/manual/reference/operator/aggregation/rankFusion.md, https://www.mongodb.com/docs/vector-search/hybrid-search/hybrid-search-overview.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/per-query-fusion-weighting-8fac0bce1e/rabbithole-synthesis.md#core`
- [low] The weighted reciprocal rank score in Atlas Hybrid Fusion is calculated using the formula: weight x reciprocal rank. Sources: https://www.mongodb.com/docs/vector-search/hybrid-search/vector-search-with-full-text-search.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/per-query-fusion-weighting-8fac0bce1e/rabbithole-synthesis.md#core`
- [low] Calibrating weights per query at production scale is considered not practical. Sources: https://redis.io/blog/reciprocal-rank-fusion/ — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/per-query-fusion-weighting-8fac0bce1e/rabbithole-synthesis.md#antipatterns`

## Related concepts

- fusion — is a part of Per-query fusion weighting
- Per-query — is a part of Per-query fusion weighting
- weighting — is a part of Per-query fusion weighting
