Как оценивать RAG: метрики поиска, ответов и ошибок

Если RAG отвечает уверенно, это ещё не показывает, что он находит нужные документы и правильно их использует. Для оценки разделите три вопроса: нашёлся ли источник, подтверждает ли он ответ и решена ли задача пользователя. По одному среднему баллу причину ошибки обычно не определить.

Разберём проверку на маленькой базе поддержки. Такой стенд полезен перед сменой эмбеддингов, разбиения документов или модели: вы сравниваете варианты на одинаковых вопросах, а не на нескольких удачных диалогах.

Сначала подготовьте документы и ожидаемые ответы

Ниже вымышленная база. Каждая строка — отдельный документ. В реальной проверке храните версию файла и дату действия правила: иначе система может правильно процитировать устаревшую инструкцию.

IDСодержание документа
D1Тариф Start: не более 3 участников.
D2Тариф Team: не более 20 участников.
D3Возврат за подписку можно запросить в течение 14 дней после оплаты.
D4Для смены владельца пространства обратитесь в поддержку.
D5Экспорт отчёта доступен в CSV.
D6Удалённый отчёт можно восстановить в течение 7 дней.

Составьте вопросы до запуска системы. Для каждого укажите допустимые источники, краткий ожидаемый ответ и случаи, когда требуется уточнение. Не добавляйте правильный ответ в запрос к проверяемой системе.

ВопросЧто ожидаем
Сколько человек можно добавить в Start?D1, максимум 3
Поместятся ли 12 человек в Team?D2, да
Как вернуть оплату?D3, срок 14 дней
Как поменять владельца?D4, обращение в поддержку
В каком формате скачать отчёт?D5, CSV
Отчёт удалён вчера. Его можно вернуть?D6, да, срок 7 дней
Сколько пользователей допускается?Уточнить тариф; допустимы D1 и D2 с условиями
Есть ли интеграция с SAP?В базе нет ответа; не придумывать

Оцените поиск отдельно от генерации

Сначала сохраните top-k найденных документов без ответа модели. Для первых шести вопросов здесь достаточно одного источника. Если нужный документ попал в top-3 у пяти вопросов, доля попаданий равна 5/6, или 83,3%. Это иллюстрация расчёта, а не результат запуска конкретного поисковика.

Для вопросов с несколькими обязательными источниками считайте Recall@k: число найденных релевантных документов, делённое на число всех ожидаемых релевантных документов. Отдельно следите за позицией первого полезного результата. Высокая полнота с большим количеством шума может оказаться дорогой для следующего этапа.

Проверьте ответ по утверждениям

Если система нашла D1, но написала «в Start можно добавить 5 человек», поиск сработал, а ответ неверен. Если она написала «3 человека» без подтверждающего контекста, правильное число само по себе не доказывает надёжность процесса. Сохраняйте вопрос, найденные фрагменты, ответ и ссылки на источники.

  • Фактическая правильность: совпадает ли ответ с ожидаемым?
  • Обоснованность: подтверждается ли каждое существенное утверждение доступным контекстом?
  • Полнота: не потеряно ли важное условие, например тариф или срок?
  • Отказ и уточнение: распознаёт ли система недостаток данных?

Автоматический LLM-судья помогает разбирать большие выборки, но тоже ошибается. Сверяйте спорные оценки вручную и не подбирайте формулировку судьи так, чтобы новая система обязательно выиграла.

Сравнивайте изменения на одном наборе

Зафиксируйте версии документов, запросов и настроек. Меняйте по одному существенному компоненту, сохраняйте не только средний балл, но и регрессии по отдельным вопросам. Добавьте в отчёт задержку и стоимость. Восемь вопросов подходят для проверки механизма; для вывода о качестве рабочего продукта потребуется более широкая выборка его реальных сценариев.

Как перейти от разбора к практике

Если вы уже работаете с Python и API и хотите системно разбирать retrieval, векторные базы и качество ответов, посмотрите Vector DB & RAG Developer. Для первого знакомства с программированием этот маршрут будет преждевременным. Материал подготовлен Latorn; ссылка ведёт на наш платный курс. Перед покупкой сравните программу и требования со своей задачей.

Посмотреть программу курса. Для самостоятельной диагностики доступна подборка упражнений.

Если пока выбираете направление обучения, прочитайте разбор выбора курса и необходимой подготовки.

Источники и проверка

Примеры в статье авторские и учебные. Технические справочники: Ragas: виды метрик.

Продолжить на практике

  • Vector DB & RAG Developer ↗

    Практический курс по векторным базам данных и семантическому поиску. Вы развернёте Qdrant, Weaviate и FAISS, научитесь индексировать миллионы эмбеддингов, строить k-NN-поиск с фильтрами, объединять его с BM-25 и создавать RAG-ботов, которые отвечают на вопросы на основе ваших данных.