rerank_mmr
rerank_mmr(query_emb, candidate_indices, embeddings_normed, top_k, lam=0.5)Maximal Marginal Relevance re-ranking.
Iteratively selects candidates that maximize
lam * sim(query, doc) - (1-lam) * max_sim(doc, already_selected)
Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| query_emb | (d,) normalized query embedding. | required | |
| candidate_indices | 1-D array of candidate point indices. | required | |
| embeddings_normed | (n, d) L2-normalized embedding matrix. | required | |
| top_k | Number of results to return. | required | |
| lam | Relevance-diversity tradeoff (1 = pure relevance). | 0.5 |
Returns
| Name | Type | Description |
|---|---|---|
| np.ndarray of selected point indices. |