Прототип понравился, запускать страшно
На демонстрации система ответила на десяток вопросов, и все ответы выглядели разумно. Никто не знает, что она скажет на необычную просьбу или когда ответа в базе нет.
Оценка качества LLM-системы отвечает на один вопрос: можно ли этому ответу доверять в вашей работе. Ответ даёт не впечатление от демонстрации, а тестовый набор из ваших реальных вопросов, понятные критерии «верно» и «опасно» и прогон, который повторяется при каждой смене модели, шаблона или индекса. Мы строим этот контур для вашей системы, будь она нашей, чужой или прототипом, и проверяем всё в вашей сети.
Набор строится из ваших вопросов, а не из чужихКритерии приёмки пишутся до первого замераПрогон остаётся у вас и запускается в сборке
На демонстрации система ответила на десяток вопросов, и все ответы выглядели разумно. Никто не знает, что она скажет на необычную просьбу или когда ответа в базе нет.
Поменяли шаблон запроса, модель или способ разбиения документов. Одни вопросы стали отвечаться лучше, другие хуже, и без набора для сравнения нельзя понять, что в сумме.
Меньшая модель в вашем контуре или более тяжёлая, один шаблон или другой. Решение принимается по цифрам на вашей выборке.
Служба безопасности, руководитель направления или заказчик просят показать, как проверялось качество. Нужен документ с набором, критериями и результатом.
Универсальной метрики «качество ответа» нет. Выбор зависит от того, что система делает. Устройство самой системы описано на странице разработки LLM-приложений.
Набор — главный актив оценки. Модели и шаблоны меняются, набор остаётся и растёт.
Одна строка — один случай: входной запрос, ожидаемый ответ или критерии хорошего ответа, категория, цена ошибки, источник случая и имя эксперта, который его проверил. Без категории и цены ошибки нельзя посчитать цифры, которые что-то значат для работы.
Рабочий набор открыт: на нём настраивают шаблоны, пороги и поиск. Контрольный закрыт и используется для финального замера и приёмки. Настройка по контрольному набору превращает его из измерения в подсказку. Поэтому после каждого финального замера часть контрольных случаев переходит в рабочий набор, а в контрольный добавляются новые.
Единого числа нет. Правило такое: в каждой категории должно быть достаточно случаев, чтобы отличить улучшение от случайного колебания. Категории с высокой ценой ошибки получают больше случаев, а не столько же, сколько остальные.
Способы не конкурируют, а делят работу. Дешёвые проверки отсеивают очевидное, дорогие проверяют то, что остальные не умеют.
Модель, которая оценивает ответы другой модели, полезна, пока известно, насколько она согласна с вашими экспертами. Порядок такой:
Если согласие судьи с экспертами недостаточно, судью не выбрасывают целиком: оставляют на тех критериях, где он согласен с людьми, а остальное проверяют правилами и вручную.
Не «девяносто процентов в среднем», а свой порог для каждой категории с учётом цены ошибки. Для справочных вопросов он мягче, для операций с деньгами и правами строже.
Есть ошибки, допустимое число которых ноль: показ чужих данных, выдуманная ссылка, исполнение действия без подтверждения. Один такой случай в контрольном наборе означает «не принято».
Система, которая отвечает на всё, хуже системы, которая честно говорит «в базе нет». Доля обоснованных отказов и доля необоснованных считаются раздельно.
Владелец процесса, а не разработчик. Он видит набор, цифры по категориям и разобранные ошибки, и сам решает, достаточно ли этого для запуска.
Ответ модели меняется не только от вашей правки. Поэтому прогон набора запускается автоматически при изменении шаблона, модели, индекса, порога и зависимостей. Результат сравнивается с прошлым прогоном попарно, по тем же случаям.
Языковая модель отвечает не всегда одинаково, и один прогон ничего не доказывает. Случаи прогоняем несколько раз и смотрим, насколько колеблется результат. Разница между двумя версиями считается значимой, только если она выходит за этот разброс. Смотрим не только среднее, но и список случаев, которые стали хуже: новая выдуманная ссылка перевешивает несколько улучшений.
Часть реальных ответов просматривает человек по выборке, оценки пользователей и правки операторов превращаются в новые случаи набора, а изменения в потоке запросов видны по доле отказов и неуверенных ответов. За самой моделью в работе следят отдельно, это описано на странице MLOps.
Цены совпадают со страницей «Тарифы». Цена называется по итогам обследования, остановиться можно после любой ступени: сделанное остаётся у вас по акту.
Что система делает, цена каждой ошибки, откуда берём случаи, образец набора, критерии приёмки и вилка бюджета. Вычитается из первого этапа, если продолжаете с нами.
Несколько LLM-систем или система, подключённая к учётным: схема источников случаев и общий набор правил оценки.
Рабочий и контрольный наборы для одной системы, правила проверки, замер по категориям с разбором ошибок и решение о продолжении.
Прогон в сборке, модель-судья с калибровкой, сравнение версий, отчёт по категориям, пополнение набора из ошибок эксплуатации.
Оценка в составе рабочей системы: регламент пополнения набора, просмотр выборки людьми, обучение ваших сотрудников, передача исходников.
Прогоны после смены моделей, пополнение набора, проверка судьи; плановые доработки с пакета на 60 000 ₽. Сверх пакета — 5 000 ₽ в час.
Выясняем, что система делает, какие ошибки дороги и что считается приемлемым. Собираем первые случаи из журналов и от экспертов.
Фиксируем категории, цену ошибки, обязательные нули и пороги.
Рабочий и контрольный наборы, проверки кодом, критерии для экспертов.
Прогоняем систему, считаем по категориям, разбираем каждую ошибку: поиск, шаблон, модель или данные.
Калибруем модель-судью по оценкам экспертов и встраиваем прогон в сборку вашей системы.
Финальный замер на контрольном наборе, протокол и решение.
Чем дороже ошибка, тем больше категорий и тем строже проверка.
Эталонные ответы и оценка контрольного набора занимают часы специалистов. Если их нет, срок растёт, а не цена исполнителя.
Оценка отвечает на вопрос «насколько хорошо работает». Как построить систему поиска и ответов по документам, описано на странице RAG-системы на заказ: там же свой блок про измерение поиска. Здесь оценка выделена в отдельную работу: она нужна и системам, построенным не нами.
За моделью в эксплуатации следит MLOps: дрейф, версии, откат, сигналы. Это отдельная услуга, но она использует тот же набор. Стойкость к подмене инструкций, утечкам и злоупотреблению действиями проверяет аудит безопасности ИИ, а подготовку и разметку данных для обучения описывает страница «Разметка данных для ИИ».
Практический порядок самостоятельной оценки разобран в статье «Как оценить качество LLM-системы».
Пошаговый порядок самостоятельной оценки: набор, критерии, способ оценки, разбор ошибок и регрессия.
Пять этапов и симптомы по этапам: помогает понять, в какой части системы искать причину плохого ответа.
Что проверить помимо качества ответов: данные, права, подмена инструкций, действия агента.
Сорок минут созвона: что система делает, какие ошибки вам дороги и есть ли журнал запросов. По итогам скажем, с какой ступени начинать и из чего будет состоять набор.
Обследование стоит 200 000 ₽ за одну систему (2–3 недели) и 350 000 ₽ при нескольких системах (3–4 недели); сумма вычитается из первого этапа, если продолжаете с нами. Лёгкий пилот с тестовыми наборами и первым замером — 150 000–400 000 ₽ за 2–8 недель, автоматический контур оценки — 400 000–1 200 000 ₽ за 2–3 месяца.
Да. Для оценки нужны доступ к системе и её журналам в вашем контуре, перечень задач и несколько часов ваших экспертов. Исходный код не обязателен.
Единого числа нет. В каждой категории должно хватать случаев, чтобы отличить улучшение от колебания, а категории с дорогой ошибкой получают больше. Размер определяем на обследовании по тому, как прыгают цифры при повторных прогонах.
После калибровки и для рабочих сравнений. Модель-судья сверяется с оценками ваших экспертов, смещения проверяются, а приёмка по контрольному набору остаётся за людьми. Если согласие судьи с экспертами по критерию низкое, этот критерий проверяется правилами или вручную.
Если настраивать систему по тем же вопросам, по которым её оценивают, цифры будут расти без реального улучшения. Контрольный набор закрыт до финальной проверки; после замера часть его случаев переходит в рабочий.
При каждом изменении модели, шаблона запроса, индекса, порога или зависимостей: это делает автоматический прогон в сборке. Кроме того, раз в период, согласованный на приёмке, набор пополняется из реальных ошибок и просматривается выборка ответов.
Частично. В набор входят провокации и вопросы на чужие данные, и один такой случай в контрольном наборе означает «не принято». Полная проверка защиты от подмены инструкций и утечек — отдельная работа: аудит безопасности ИИ; мы не атакуем боевые системы и не проводим аттестацию.
Мы в Ростове-на-Дону, работаем с заказчиками по всей России: удалённо и в вашем контуре. Доступ к системам и обследование согласуем на старте с вашей службой безопасности.