Качество дообученной модели: метрики, LLM-as-judge, эксперты

Метрики на эталонном наборе растут, а качество ответов в работе падает — знакомо? Мы настраиваем контур оценки дообученной модели под ключ: автотесты, эталонные данные и разбор спорных случаев экспертами на каждом релизе. Это сокращает число откатов и время приёмки почти вдвое.
Часто задаваемые вопросы

Оценка качества дообученной модели: почему метрики врут

Отложенная выборка и живой трафик расходятся почти всегда. На фиксированном наборе модель отвечает по шаблону, который мы сами заложили в него при разметке, а в продакшене приходят короткие запросы без контекста, опечатки, смешанные языки и многоходовые диалоги. Метрика на отложенном наборе показывает, насколько модель повторила разметчика, а не насколько она полезна пользователю.

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

Мы смотрим на качество по слоям: автоматические метрики на отложенном наборе, оценка LLM-as-judge с размеченными эталонами, ручная экспертиза на спорных примерах. Дополнительно гоняем модель в теневом режиме на реальном потоке и сравниваем с текущим релизом по сегментам — по сценариям, длине диалога, доле отказов и обрывов.

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

Что меняется, когда оценка идёт на каждом релизе

Срок проверки перед выпуском — дни вместо недель

Когда набор проверок и метрик зафиксирован, он не собирается заново под каждый релиз. Прогон идёт по одному сценарию на одних данных, а расхождение с предыдущей версией видно в отчёте сразу. Срок проверки перед выпуском сокращается с недель до одного-двух дней — одинаково для дообученной модели и для правки инструкций к ней.

Доля ложных выпусков падает

Метрика на отложенной выборке, оценка моделью-судьёй и слепая проверка экспертами дают три независимых сигнала. Если хотя бы один не проходит порог, релиз не уходит к пользователям — решение становится числовым, а не «вроде стало лучше». Откатов после выката становится кратно меньше: регрессии ловятся до выпуска, а не по жалобам в поддержку.

Единые правила приёмки вместо договорённостей на словах

Порог приёмки фиксируется заранее: какая метрика, на какой выборке, с каким допуском. Единые правила приёмки снимают зависимость от того, кто сегодня проверяет и насколько оптимистичен его отчёт. Спор о вкусах заменяется разбором отклонений по цифрам.

Регулярная оценка релизов накапливает историю

Каждый прогон оставляет срез: версия модели, состав данных, значения метрик. Через несколько релизов видно, какие правки реально двигают качество, а какие — шум. Следующий цикл оценки идёт быстрее, потому что проверяем то, что уже показало эффект.

Варианты проверки релиза: автотесты, эталонный набор, эксперты

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

Подход Когда подходит Ограничения
Автоматические метрики (точное совпадение, формат, F1) Извлечение полей, классификация, вызов инструментов, проверка схемы ответа Не видит смысловых ошибок при корректной форме; на открытых ответах почти неинформативны
Судья-контур на языковой модели Свободные ответы: тон, полнота, следование инструкции; прогон на сотнях кейсов Наследует смещения и слепые зоны модели; требует калибровки по экспертным оценкам
Экспертная разметка Эталон для спорных случаев, калибровка судьи, ответы с высокой ценой ошибки Медленно, зависит от согласия между экспертами, тяжело покрыть весь объём
Комбинация слоёв Релизный контроль: дешёвый слой на каждое изменение, дорогой — на границах Нужны хранение эталонов, инфраструктура прогонов и разбор расхождений

Как слои сочетаются

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

От аудита до передачи: как строится контур проверки

Контур проверки собирается так, чтобы решение о приёмке опиралось на повторяемое измерение, а не на впечатление от удачного демо. Порядок работ одинаков для любой задачи — меняются метрики, рубрики и пороги, но последовательность сохраняется: сначала описываем, как качество оценивают сейчас, потом фиксируем эталон и только затем автоматизируем.

  1. Аудит процесса. Разбираем, как принимаются решения о качестве сегодня: где оценка идёт глазами, где по одному показанному примеру, какие дефекты не фиксируются вообще. На выходе — карта мест, где вердикт не воспроизводится.
  2. Эталонный набор. Собираем выборку, покрывающую частые сценарии, редкие и пограничные случаи. Набор версионируется вместе с моделью — без него сравнение релизов между собой невозможно.
  3. Разметка и согласование экспертов. Два-три профильных специалиста размечают примеры независимо, спорные случаи разбираются отдельно, доля совпадений считается до старта работ. Если эксперты не сходятся между собой, автоматическая оценка не даст опоры.
  4. Автоматическая проверка. Добавляем детерминированные правила и проверку второй моделью: судья получает эталон ответа, рубрику и требования к формату. Судья калибруется на разметке экспертов, и при расхождении выше заданного уровня рубрика переписывается, а не подгоняется результат.
  5. Калибровка порогов. Для каждого класса ошибок задаём предел отдельно: пропуск критичного дефекта не компенсируется ростом средней оценки. Пороги фиксируются до прогона.
  6. Регрессионный прогон. Дообученная и базовая модели прогоняются на одном наборе, разница считается по каждой метрике отдельно. Улучшением считается только то, что подтверждено на эталоне.
  7. Регламент приёмки и передача. Отдаём документ с составом набора, рубриками, порогами и процедурой их пересмотра, а также права на прогоны.

После передачи заказчик запускает проверку сам и видит отклонение до выката. Объём эталона и пороги пересматриваются по мере появления новых сценариев.

Набор метрик, эталонные данные и регламент приёмки

Мы сдаём не только дообученную модель, но и контур её оценки: после передачи команда заказчика может прогнать новую версию на своих данных и получить тот же вердикт, что и мы. Все определения, конфигурации и правила доступа фиксируются в документах, которые не нужно восстанавливать по переписке — их достаточно открыть и выполнить.

  • Реестр метрик — таблица, где для каждой метрики указаны определение, способ расчёта, срез данных, порог приёмки и владелец. Расхождения в трактовке закрываются до старта оценки, а не после спорного релиза.
  • Размеченный эталонный набор — стратифицированная отложенная выборка: редкие классы и пограничные случаи представлены явно, каждый пример размечен двумя экспертами, спорные разобраны арбитром, согласие разметчиков зафиксировано числом.
  • Отчёт о калибровке автоматического судьи — насколько машинная оценка совпадает с экспертной: согласие по классам, доля расхождений, систематическое смещение в пользу длинных или уверенных ответов.
  • Политика доступа к данным — кто и на каком основании видит эталон, что обезличивается, как ведётся журнал обращений. Отдельно закрываем риск обучения на проверочной выборке.
  • Регламент приёмки — какие метрики и на каких порогах должны сойтись, что делаем при провале одной из них и в каких случаях версия отклоняется целиком.
  • Документация контура — схема прогона, словарь метрик, инструкция разметчика и чек-лист запуска: оценку воспроизводит инженер, не участвовавший в разработке.
  • Конфигурации и запуск оценки — единый прогон на обезличенном срезе даёт отчёт в фиксированном формате, поэтому результаты двух версий сравниваются построчно.

Кейс: метрики релиза до и после внедрения

Клиент — служба поддержки с базой знаний на несколько тысяч статей, поверх которой работает дообученная модель. Отвечает она не «вообще», а по конкретным документам, и каждый релиз — новая ветка дообучения. Оценивать качество приходилось выборочно и уже после выката: воспроизводимого набора проверок не было.

До внедрения эксперт разбирал вручную около двухсот диалогов на релиз — это два рабочих дня и меньше пяти процентов покрытия. Остальное проверялось по ощущению, спорные ответы оценивались «на глаз», и четыре релиза из десяти возвращались на доработку уже после запуска, когда ошибку видели пользователи.

Как построили замеры

Собрали эталонный набор из шести сотен размеченных диалогов: вопрос, правильный ответ по базе, чего в ответе быть не должно. На нём считаем три вещи — попадание в факт из документа, отсутствие выдуманных деталей, полноту ответа. Прогон автоматизировали через Ragas, а первичную разметку спорных случаев отдали LLM-as-judge: эксперт разбирает не весь релиз, а только расхождения с оценкой модели, их остаётся около десяти процентов.

Что стало: проверка релиза занимает три-четыре часа вместо двух дней, покрытие — все сто процентов диалогов из эталонного набора. Возвраты на доработку сократились с четырёх релизов до одного из десяти, а регресс по прошлым сценариям видно ещё до выката. Набор версионируется вместе с моделью, поэтому две ветки дообучения сравниваются на одних и тех же примерах.

Чем отличается онлайн-контроль от проверки на эталонном наборе?

Эталонный набор — это зафиксированный срез запросов с разметкой, который прогоняют до выкатки. Он отвечает на вопрос «не сломали ли то, что уже работало», и даёт сравнивать версии модели между собой на неизменных данных. Онлайн-контроль отвечает на другой вопрос: после релиза и поведение пользователей, и входные данные уже не те, что были при подготовке дообучения.

Контур На что отвечает Чего не ловит
Эталонный набор Регресс: сломалось ли то, что работало Сдвиг входных данных после выкатки
Онлайн-контроль Дрейф: распределение запросов, отказы, формат ответа Причинность — сигнал есть, причина неясна

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

Дальше контуры стыкуются: разобранные случаи после экспертной разметки пополняют эталонный набор, поэтому он растёт вместе с продуктом, а не устаревает. Первую линию оценки держит LLM-as-judge на попарном сравнении версий, вторую — эксперты на выборке; расчёт метрик и хранение прогонов закрывает Ragas.

Если оставить только один контур, получаются два предсказуемых сбоя: набор незаметно превращается в музей прошлого продукта, а онлайн-сигнал — в поток жалоб, который не к чему привязать.

Частые технические вопросы о контуре проверки

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

Какой объём эталонного набора считаем достаточным?

Ориентир — от 30-50 примеров на каждый значимый сценарий, редкие классы добираем отдельно, иначе метрика по ним скачет от итерации к итерации. Набор версионируем и фиксируем контрольной суммой, чтобы сравнение прогонов оставалось корректным.

Можно ли разметить выборку без профильных экспертов?

Формальные критерии — да: письменная инструкция, два разметчика и третий голос при расхождении. Предметные требования так не закрыть — небольшая экспертная калибровка задаёт эталон, дальше объём добирает модель-судья под контролем согласия с экспертом.

Что делать с шумом в выборке?

Стратифицируем набор по сценариям и убираем почти одинаковые примеры — они перекашивают долю успеха. Пограничные случаи выносим в отдельный слой: усреднённая метрика без разброса по подгруппам не показывает, где модель ломается.

Можно ли переиспользовать метрики из других проектов?

Каркас переносится: проверки формата, полноты ответа и отказов от предметной области не зависят. Пересобираем эталонные примеры, критерии и порог срабатывания под конкретную задачу.

Как в проверке участвует заказчик?

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

Обсудим задачу: что прислать, чтобы мы вернулись с планом

Чтобы обсудить задачу предметно и вернуться с планом работ, а не с общими соображениями, нужен минимум входных данных для оценки — то, что уже есть у вас на руках. По логам пилота видно, где модель ошибается чаще всего, а по эталонным ответам — какой уровень качества считается приемлемым. Опишите задачу в свободной форме: этого достаточно, чтобы начать.

  • эталонный набор: 200–500 реальных запросов с ответами и разметкой «верно / неверно» — на нём калибруем автоматическую оценку второй моделью и меряем точность дообучения;
  • логи пилота: сырые диалоги, версии подсказок и ответы модели в том виде, в котором их видели пользователи;
  • критерии приёмки: какие ошибки критичны, какие допустимы и в какой доле случаев;
  • описание домена и сценариев: кому отвечает модель, на какие вопросы и что в ответах запрещено;
  • ориентир для сравнения: метрики базовой модели или предыдущей версии дообучения;
  • ограничения по данным и доступам: где лежат данные, нужна ли обезличка, можно ли привлекать внешних экспертов-разметчиков;
  • примеры спорных ответов: 10–20 случаев без единого мнения — они задают границу разметки.

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

Направления AI-разработки

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1542
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1394
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1369
  • Разработка логотипа компании B2B Advance
    Разработка логотипа компании B2B Advance
    816
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1142