Оценка качества поиска

Оценка качества поиска — это практика измерения стадии извлечения в RAG-системе по её собственным критериям: вернулись ли нужные фрагменты и оказались ли они близко к верху выдачи, — отдельно от оценки ответа, который модель затем написала. В этом разделении весь смысл. Когда RAG-приложение даёт неверный ответ, причины бывают двух совершенно разных типов: нужная информация вообще не была извлечена, либо она была извлечена, а модель её проигнорировала или неверно прочитала. Исправления у них противоположные, а сквозная оценка ответа их различить не может, поэтому команды, измеряющие только финальный вывод, в итоге правят промпты, чтобы залечить проблему нарезки на фрагменты. Основные измерения — recall@k, precision@k и метрика, чувствительная к рангу, например средний обратный ранг или нормированный DCG. Recall@k спрашивает, встречаются ли где-либо в топ-k результатах фрагменты, необходимые для ответа, и именно эта метрика задаёт потолок для всей системы: информация, которая не попала в контекстное окно, не может быть использована, какой бы хорошей ни была модель. Precision@k спрашивает, какая доля вернувшегося действительно релевантна, и это важно, потому что нерелевантный контекст не бесплатен: он расходует бюджет, размывает внимание и даёт модели материал, на котором она уверенно ошибётся. Метрики, чувствительные к рангу, важны там, где реально прочитаны будут лишь первые несколько фрагментов. Всё это требует размеченного набора: вопросов в паре с фрагментами, которые действительно на них отвечают, собранных из реальных пользовательских запросов, а не придуманных. Пятидесяти или нескольких сотен хорошо подобранных примеров обычно достаточно, чтобы ловить регрессии, и построение этого набора — как раз та часть, которую команды пропускают и о которой позже жалеют. Такая оценка превращает изменения в поиске из предмета спора в предмет решения, потому что размер фрагмента, перекрытие, модель эмбеддингов, вес гибридного поиска и реранкер — это всё ручки, эффект которых без неё невидим. Практическое замечание: держите оценочный набор в системе контроля версий рядом с кодом и перезапускайте его в CI при любом изменении нарезки, эмбеддингов или поискового запроса, и всегда фиксируйте, какая модель эмбеддингов построила индекс, — векторы разных моделей несопоставимы, поэтому незаметное обновление модели обесценивает и индекс, и все измеренные по нему числа.

Похожие термины

Ещё термины: MLOps-процессы