THREADQA
    THREADQA
    Главная
    Курсы
    Java QA AutomationNEW
    Новый курс · уже можно купить
    Python QA Automation
    Pytest, Playwright, Docker
    iOS QA Automation
    XCTest, XCUITest, Fastlane
    Все курсы
    Сравнить Java / Python / iOS
    Практика
    Мок собеседование
    Тренировка перед реальным интервью
    XPath Practice Hub
    Тренажёр XPath-запросов
    Roadmap
    Путь QA-инженера
    Тренажёры
    SQL, Git, Docker, Linux, тест-дизайн
    QA игры
    8 мини-игр для тестировщика
    XPath Dinner
    Практика XPath в игровом формате
    Каталог инструментов
    Инструменты тестирования и сравнения
    Глоссарий ИИ-тестирования
    LLM, RAG, метрики, evals
    С чего начать
    Блог
    FAQ
    Для компаний
    1. Домой
    2. Глоссарий тестирования ИИ
    3. MRR
    RAG и поиск

    MRRчто это и как применять в тестировании ИИ

    Также: Mean Reciprocal Rank, средний обратный ранг

    MRR (Mean Reciprocal Rank, средний обратный ранг) — метрика поиска, равная среднему значению 1/позиция первого нужного результата в выдаче. Если нужный чанк первый, вклад равен 1, если второй, то 0,5, если нужного нет, то 0. Метрика показывает, насколько высоко в выдаче стоит нужное.

    Автор: Олег Пендрак · Обновлено 19 сентября 2026 г.

    Как это работает

    В отличие от hit rate, MRR учитывает позицию: два поиска с одинаковым hit rate могут сильно различаться, если у одного нужный чанк всегда первый, а у другого пятый. Позиция важна, потому что модель лучше использует информацию в начале контекста.

    MRR не учитывает, сколько нужных чанков найдено, поэтому её дополняют recall@k. Значение лежит от 0 до 1.

    Формула
    MRR = (1/|Q|) × Σ 1/rank_i,   rank_i — позиция первого нужного результата (для ненайденного вклад 0)

    Пример

    MRR в pytest
    1def test_mrr():
    2    rr = []
    3    for case in CASES:
    4        pos = positions(case)               # позиции нужных чанков, с 1
    5        rr.append(1 / min(pos) if pos else 0)
    6    assert sum(rr) / len(rr) >= 0.70

    Как применять в тестировании ИИ

    Используйте MRR вместе с hit rate и recall: hit rate показывает, находится ли нужное, а MRR — насколько высоко. Падение MRR при стабильном hit rate указывает, что нужный чанк сместился ниже в выдаче.

    Типичные ошибки

    • Смотреть только MRR и не проверять recall для вопросов с несколькими нужными чанками.
    • Не фиксировать k, по которому считают метрику, и сравнивать несопоставимые прогоны.
    • Подгонять индекс под набор без закрытой части вопросов.

    Частые вопросы

    Как считается MRR?

    Для каждого вопроса берут 1/позиция первого нужного результата (0, если нужного нет) и усредняют по всем вопросам. Например, позиции 1, 2 и 5 дают среднее (1 + 0,5 + 0,2) / 3 ≈ 0,57.

    Чем MRR отличается от hit rate?

    Hit rate только проверяет, попал ли нужный чанк в top-k. MRR дополнительно учитывает, на каком месте он стоит: чем выше, тем лучше значение.

    На странице

    • Как это работает
    • Пример
    • В тестировании ИИ
    • Типичные ошибки
    • Частые вопросы

    Читайте в блоге

    • Тестирование RAG: как понять, что сломалось — поиск или генерация

    Связанные термины

    • Hit rate@k
    • Context recall
    • Top-k в поиске (RAG)
    Все термины глоссария
    THREADQAПлатформа QA Automation

    О платформе

    Обучаем автоматизации тестирования на Java, Python и iOS. Практические курсы, roadmap, тренажёры и персональные мок-интервью.

    Онлайн 24/7

    Курсы

    • Java QA AutomationNEW
    • Python QA Automation
    • iOS QA Automation
    • Про ThreadQA

    Услуги

    • Мок-собеседования

    Инструменты

    • Roadmap QA
    • Тренажёры
    • QA игры
    • Тренажёр XPath
    • XPath Diner
    • Каталог инструментов
    • Глоссарий ИИ-тестирования

    Контакты

    • Email
      info@threadqa.ru
    • Telegram
      @penolegrus
    Публичная офертаПолитика конфиденциальностиУсловия использования
    © 2026·ThreadQA LMS·Все права защищены