Member Junction
    Preparing search index...
    • Compute Reciprocal Rank Fusion across multiple ranked result lists, with optional per-list weights.

      Unweighted formula: FusedScore(d) = Σ_i 1 / (k + rank_i(d)) Weighted formula: FusedScore(d) = Σ_i w_i / (k + rank_i(d))

      where rank_i(d) is the 1-based rank of document d in list i, k is a smoothing constant (default 60, per the original paper), and w_i is the optional weight for list i (default 1.0).

      Documents not present in a list receive no contribution from that list (they are simply absent, not penalized).

      Parameters

      • rankedLists: ScoredCandidate[][]

        Arrays of candidates, each sorted by descending relevance. Each list represents results from one retrieval method.

      • Optionalk: number

        Smoothing constant. Higher values reduce the influence of top-ranked positions. Default: 60 (the standard value from the RRF paper and used by Azure AI Search, OpenSearch, and Elasticsearch).

      • Optionalweights: number[]

        Optional per-list weights aligned by index with rankedLists. Lists with no entry in the array fall back to a weight of 1.0. A weight of 0 suppresses that list's contribution entirely. Omitting the parameter is equivalent to all-ones (canonical RRF).

      Returns ScoredCandidate[]

      Fused candidates sorted by descending RRF score.