На датазавтраке обсуждали способы оценки качества RAG
Варианты:
* как понравится пользователям - так и хорошо (ненадежно, трудно использовать для итеративного улучшения)
* LLM арена между несколькими вариантами (медленная оценка, в остальном норм, если на это есть ресурсы и время)
* LLM как судья (нужен размеченный датасет, трудно добиться совпадения оценки с человеческой, постоянное переобучение под датасет)
* Измерение каждого отдельного этапа (ретривел, суммаризация, переформулировка) - красиво но обычно непонятно как сделать
Предлагал заменить бинарную оценку "нравится-не нравится" на оценку по нескольким критериям (полнота извлечения и что там еще конечный пользователь может оценить)
+ сохранять для всех неидеально оцененных запросов лог - что происходило в системе и с промптами на каждом этапе.
Затем разметчиком вручную размечать, на каком именно этапе произошла ошибка (с предположением что первая ошибка в пайплайне определяющая)
И затем выучить простую модель, которая по оценке из нескольких критериев подсвечивает ошибочный этап RAG
И так отлаживаться, по мере необходимости доразмечая логи исполнения запросов
Цель - связать оценочные критерии с этапами, чтобы постоянно улучшать и подкручивать систему
Post #1441
449
- 🔥 7
- ❤ 1