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.