Recall@k и MRR для оценки поиска в RAG
Напишите retrieval_metrics(results, relevant, k).
results— словарьвопрос → список id найденных фрагментов по убыванию релевантности.relevant— словарьвопрос → множество id релевантных фрагментов. Оцениваются только вопросы изrelevant; если вопроса нет вresults, считайте выдачу пустой.- Recall@k вопроса — доля релевантных фрагментов, попавших в первые
kрезультатов. RR вопроса —1 / позицияпервого релевантного результата во всей выдаче (позиции с 1), или 0. - Верните кортеж
(средний recall@k, MRR)по вопросам, округлённых до 4 знаков. Если вопросов нет —(0.0, 0.0).
заготовка решения
def retrieval_metrics(results, relevant, k):
# ваш код
return None