Как оценивать 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-ботов, которые отвечают на вопросы на основе ваших данных.
