Содержание
На приёмке деталь «почти как надо» пропускают, если эталонный калибр уже погнут или его каждый раз подтачивают под партию. Так же выглядит пилот с ИИ: две недели крутят чекпоинт и скорость обучения, а «правильный ответ» — папка из четырёхсот диалогов из ChatGPT без схемы, без владельца и без ответа, что считать годным в нашем домене. На демо всё звучит гладко. В пилоте юрист ловит выдуманную ссылку на регламент, оператор получает уверенный ответ по отменённой инструкции, а «плюс двенадцать процентов» никто не может повторить — потому что оценочный набор правили вместе с системной подсказкой.
Это не провал архитектуры. Это поломка инженерии данных: калибр смешали с партией, а новую машину купили раньше, чем починили линейку. В корпоративном и промышленном ИИ набор данных — не приложение к ноутбуку, а продукт с номером версии: контракт на вход и выход, владелец, манифест, люди у эталона и барьер перед релизом.
Ниже — опорный лонгрид серии о подготовке наборов для обучения и оценки. Разберём эталонные записи, редакторов эталонов, четыре семейства данных, петлю из эксплуатации обратно в набор, утечки между обучением и оценкой, параметры по задаче и домену. Материал дополняет, но не дублирует эталонный набор для оценки RAG, подготовку корпуса для RAG и промышленную инженерию RAG.
Ключевые выводы
Набор — продукт с версией. Схема, владелец, манифест (хэш + версия + правила разметки) и история в git или хранилище данных.
Обучение и оценка — разные контуры. Тренировочный корпус учит поведение; эталонный набор его измеряет. Смешивать без аудита утечек — подтачивать калибр под партию.
Сначала контракт задачи, потом объём и модель. Что на входе, что на выходе, когда отказ — до разговора о низкоранговой адаптации (LoRA, Low-Rank Adaptation) и размере чекпоинта.
Эталонная запись (golden-запись) — контракт на один пример: вход, ожидаемый результат или критерии приёмки, метаданные. Набор таких записей — эталонный набор.
Редакторы эталонов — доменные эксперты у калибра. Без них синтетика и краудсорсинг дают красивые числа и слабый прод.
Параметры зависят от задачи и домена: объём, единица разметки, «похожие, но неверные» примеры и пороги для классификации, дообучения с учителем (SFT, Supervised Fine-Tuning), поиска контекста и компьютерного зрения — разные.
Цикл не кончается релизом: провалы из прода попадают в буфер, проходят ревью и только потом — в эталон или в обучение.
Метрики без срезов врут. Среднее может скрыть провал на редком дорогом сегменте — устаревший регламент, чужой арендатор, плохой скан.
Выгрузка — ещё не приёмка
Собрать CSV или заказать разметку на бирже — всё равно что насыпать детали в ящик и назвать это контролем качества. Инженерия датасетов — повторяемый процесс с артефактами, без которых приёмка не работает:
| Артефакт | Что фиксирует | Без него |
|---|---|---|
| Схема | Поля записи, типы, обязательность | «Каждый файл свой формат» |
| Рубрика разметки | Правила «правильно / отказ / эскалация» | Спор на каждом ревью |
| Манифест | Версия, хэш, автор изменений, дата | Несравнимые метрики |
| Владелец | Кто утверждает эталон и обучающий корпус | Разметка «на кого повесили» |
| Стенд оценки | Прогон с фиксацией версии набора | Ручные прогоны в чате |
| Регрессионный барьер | Порог по срезам перед релизом | «В среднем стало лучше» |
Нет схемы, владельца эталона и версии — вы ещё экспериментируете с подсказкой модели. Так можно в день ноль. Так нельзя, когда пилот уже обещан бизнесу: калибр должен существовать до отчёта «стало лучше».
Новая машина не чинит кривой калибр
В корпоративных и промышленных проектах цена ошибки асимметрична. Неверный класс на демо-картинке — неприятно. Неверная трактовка пункта по охране труда — инцидент. Покупка «более умной» модели здесь похожа на замену станка: если эталон гнутый, новая машина будет штамповать ту же кривизну быстрее.
Поэтому вопрос «какую модель поставить» логично ставить после вопроса «какой контракт на вход и выход мы можем проверить на данных, похожих на эксплуатацию».
Три сигнала, что пора чинить калибр, а не крутить чекпоинт:
- Метрика скачет без воспроизводимости — в одном запросе на слияние (PR, pull request) меняли подсказку, набор и модель. «Плюс двенадцать процентов» нельзя привязать к одному изменению.
- Хорошие цифры на тесте, плохой пилот — обучающая выборка не похожа на реальный поток. Классика: MNIST против полевых бланков в разборе оптического распознавания рукописных цифр (OCR).
- Нет владельца разметки — «правильный ответ» определяет тот, кто последним смотрел в чат.
Плохой набор стоит дороже, чем кажется: переобучение на оценочной выборке, часы на GPU на шум вместо исправления поиска, невозможность откатить «набор v3», потеря доверия экспертов. Инженерия данных делает улучшения объяснимыми: версия, срез, барьер — артефакты, понятные и инженеру, и владельцу продукта.
Сначала договоритесь, что считать годным
До разметки контракт кладут в один документ (или в meta.yaml набора) — как допуск на чертеже до первой партии:
| Элемент | Вопрос | Пример |
|---|---|---|
| Вход | Что видит модель? | Вопрос + найденные фрагменты + язык |
| Выход | Формат ответа? | Markdown + ссылка на пункт; схема JSON |
| Отказ | Когда не отвечать? | Нет источника; вне списка контроля доступа (ACL, Access Control List); устаревшая версия |
| Эскалация | Когда к человеку? | Класс риска «высокий»; низкая уверенность |
| Язык | ru / en / mixed? | Ответ на языке вопроса |
| Источник истины | Что считать фактом? | ERP, СЭД, не чат |
Без этого два эксперта размечат один кейс по-разному, и низкое согласие разметчиков окажется отсутствием правил, а не «сложной задачей». Подход к оценке до эксплуатации — в материале про оценку LLM перед запуском; здесь фокус на данных, которые кормят этот контур.
Четыре ящика, которые нельзя смешивать
На одном складе могут стоять четыре ящика. Свалить их в один — получить «красивую» метрику и ложный релиз.
| Семейство | Назначение | Типичное использование | Риск при смешении |
|---|---|---|---|
| Тренировочный корпус | Научить паттерну | SFT, дообучение классификатора, пары «запрос — фрагмент» | Переобучение на оценке, запоминание эталонов |
| Данные предпочтений | Научить выбирать лучший ответ | Пары предпочтений, ранжирование | Стиль без фактов |
| Эталонный набор | Измерить поведение | Регрессии, непрерывная интеграция (CI, Continuous Integration), сравнение версий | Подгонка подсказки под видимые кейсы |
| Буфер сбора кейсов | Сырые провалы из прода | Очередь на ревью редактора | Оценка по неразмеченным кейсам |
Тренировочный корпус учит как отвечать: тон, формат, типичные паттерны. Для SFT это пары «инструкция → ответ»; для классификатора — «текст → метка». Он может быть большим и шумным на краях, но проходит статическую проверку: дедупликация, ACL, запрет явных дубликатов с оценочной выборкой.
Данные предпочтений нужны, когда важнее выбрать между двумя правдоподобными ответами: короче или полнее, с цитатой или без. Типичные форматы — прямая оптимизация предпочтений (DPO, Direct Preference Optimization) и пары для обучения с подкреплением от человека (RLHF, Reinforcement Learning from Human Feedback). Объём обычно меньше, чем у SFT; качество разметки критичнее.
Эталонный набор фиксирован и версионирован, часто меньше обучающего. Каждая golden-запись — образец для сравнения. Для RAG отдельно: эталонный набор для оценки.
Буфер сбора — сырой поток жалоб и ошибок. Это не отчётная метрика, пока редактор не продвинул запись в эталон или обучение. Соглашение об уровне сервиса (SLA, Service Level Agreement) на ревью зависит от риска: инцидент безопасности — часы, косметика — недели.
Один образец — один контракт
В экосистемах DeepEval и Confident AI golden-запись — предшественник тест-кейса: поля фиксируют до прогона; на оценке появляются фактический выход, контекст поиска, вызовы инструментов. В своём репозитории минимальный контракт в JSONL выглядит так:
{
"id": "reg-2026-0142",
"input": "Какой срок действия инструкции по работе на высоте?",
"expected_output": "Ответ со ссылкой на действующую редакцию И-ОТ-12 от 2024-03-01; если в корпусе только отменённая версия — отказ с указанием версии.",
"acceptance": "citation_required",
"metadata": {
"domain": "industrial_safety",
"risk_class": "high",
"language": "ru",
"source_ids": ["И-ОТ-12"],
"tags": ["height_work", "validity"]
},
"annotator": "editor:petrov",
"rubric_version": "ot-rubric-1.2",
"dataset_version": "golden-regulations-v3"
}
Поля acceptance и rubric_version связывают образец с правилами. Без них через полгода никто не объяснит, почему «годный» ответ внезапно стал другим — калибр сменили молча.
Кто отвечает за смысл «золота»
Термин редактор эталонов пришёл из инструментов оценки: экран, где эксперт заполняет поля и назначает ревью. На производстве важнее роль метролога у калибра, а не кнопка в интерфейсе.
| Обязанность | Зачем |
|---|---|
| Писать и обновлять рубрику | Единые правила «правильно / отказ / цитата» |
| Размечать редкие и опасные кейсы | Они ломают прод, не «средний» вопрос |
| Согласовывать спорные кейсы | Два разметчика не сошлись → третий эксперт + запись в манифест |
| Отклонять плохую синтетику | Парафраз без факта не попадает в эталон |
| Приоритизировать буфер | Риск важнее объёма |
Инженеры строят схему, валидацию, CI. Редактор эталонов отвечает за смысл «золота». Без этого — театр датасетов: файлы есть, доверия нет.
| Состояние | Кто видит | Можно ли в оценке |
|---|---|---|
| Черновик в буфере | Редакторы | Нет |
| На ревью | Редактор + ревьюер | Нет |
| Финализированный эталон | Вся команда | Да |
| Скрытая выборка (holdout) | Ограниченный круг | Да, редко и без итераций по ней |
Подробный процесс — в статье golden-editors-annotation-workflow-2026.
С линии обратно на стол приёмки
Петля живая: эксплуатация рождает новые провалы, документы и синтетика кормят корпус, люди у эталона решают, что войдёт в версию.
flowchart TB
subgraph sources [Источники]
prod[Трафик и логи]
docs[Документы и регламенты]
synth[Синтетика по рубрике]
end
subgraph human [Люди]
editors[Редакторы эталонов]
adjud[Согласование спорных кейсов]
end
subgraph artifacts [Артефакты]
buffer[Буфер сбора кейсов]
golden[Эталонный набор vN]
train[Тренировочный корпус]
pref[Пары предпочтений]
end
subgraph gates [Контроль]
eval[Стенд оценки]
ci[Регрессионный барьер]
end
prod --> buffer
docs --> train
synth --> train
buffer --> editors
editors --> adjud
adjud --> golden
adjud --> train
train --> eval
golden --> eval
eval --> ci
ci -->|pass| release[Релиз модели / промпта]
prod -->|новый провал| buffer
Буфер не равен эталону, пока нет рубрики и ревью. К каждому прогону в лог пишут версии набора, модели и подсказки. Скрытую выборку не открывают при каждой итерации — иначе линейку начнут подтачивать. Один эксперимент — одна переменная: не меняйте парсер, подсказку и набор в одном релизе.
Учить, мерить и прятать линейку
Три пула оценки путают чаще всего. Обучение — корпус для дообучения. Видимая оценка для разработки (dev) — то, на чём команда итерирует. Скрытая выборка (holdout) — редкая проверка перед релизом, которую нельзя «подогнать глазами».
flowchart LR
subgraph pools [Пулы данных]
train[Обучение / SFT]
dev[Dev — видимая оценка]
hold[Holdout — скрытая]
mine[Буфер сбора]
end
train -->|обучение| model[Модель / промпт]
dev -->|итерации| model
dev -->|метрики в CI| gate[Барьер]
hold -->|редкая проверка| gate
mine -->|после редакторов| dev
mine -->|после редакторов| hold
| Пул | Кто использует | Когда смотреть метрику |
|---|---|---|
| Обучение (train) | Обучение, аугментация | Не как финальный аргумент |
| Dev (видимая оценка) | Команда при разработке | Каждый PR / ночной прогон |
| Holdout (скрытая) | Техлид, управление данными | Перед крупным релизом |
| Буфер сбора | Редакторы | Не для метрик |
Утечки — это когда калибр и партия из одной стали: парафразы одного вопроса в обучении и оценке, примеры в запросе из эталона, дообучение на текстах, близких к оценке. Перед доверием баллу ищите близкие дубликаты между пулами. Отдельная статья: dataset-splits-leakage-2026.
Когда хватает поиска, а когда нет
Не каждый кривой ответ лечится дообучением. Иногда достаточно найти нужный документ и не врать.
| Ситуация | Часто достаточно | Когда нужно обучение / SFT |
|---|---|---|
| Факты в документах, редкие формулировки | RAG + подсказка | Стиль ответа, жёсткий формат JSON |
| Классификация на большом историческом логе | Базовая линия + признаки | Сложный язык, много классов |
| Узкий домен, мало данных | Подсказка + эталонная оценка | Тысячи размеченных пар с экспертами |
| Поведение «как бренд» | Системная инструкция | Тысячи согласованных пар + предпочтения |
Критерии — в главе о дообучении: без бизнес-причины корпус для SFT — дорогой способ запомнить шум.
Объём зависит от задачи, не от моды
Универсальных «десяти тысяч примеров» нет — у разных задач разная единица приёмки.
| Тип задачи | Единица разметки | Порядок объёма | На что смотреть первым |
|---|---|---|---|
| Классификация / извлечение | класс, фрагмент текста, JSON | 1k–50k | баланс, легко путаемые пары |
| Настройка инструкций / SFT | «инструкция → ответ» | 500–10k | шаблон, язык, отказы |
| Поиск / ранжирование | запрос–документ | тысячи пар | жёсткие негативы, ACL, версия |
| Генерация с фактами | вопрос + эталон + источник | сотни–тысячи | цитата, «не знаю» |
| Компьютерное зрение / OCR | изображение, рамка, последовательность | 5k–500k | условия съёмки, разрыв доменов |
| Предпочтения / DPO | пара A/B | 2k–20k | согласие разметчиков |
Особенно важны случаи «похоже, но неверно»: без них модель учится на лёгких примерах и падает на соседних разделах регламента. Доля кейсов с ожидаемым отказом — не ошибка разметки, а требование. Для ассистента по регламентам разумно 15–25% эталона с отказом или эскалацией.
Домен меняет дефицит
Полный разбор — в dataset-parameters-by-domain-2026. Сжатый ориентир: в каждом домене не хватает своего ресурса — цитаты, допуска, свежести API или качества канала.
| Домен | Особенность данных | Редактор эталонов | Типичная ошибка |
|---|---|---|---|
| Промышленность / ОТ | Версии регламентов, высокая цена ошибки | Инженер ОТ, методист | Ответ по отменённой инструкции |
| Финансы / соответствие требованиям | Запрет на совет без оговорок | Специалист + юрист | «Уверенный» вывод без источника |
| Код / репозиторий | Версии API, контекст файла | Старший разработчик | Устаревший фрагмент кода |
| Документы / OCR | Скан, таблица, колонтитул | Оператор + контроль качества | Мышление «как на MNIST» |
| Поддержка клиентов | Тон, эскалация | Супервизор | Переобучение на шаблоны |
Кто утверждает калибр
| Роль | Ответственность |
|---|---|
| Владелец продукта | Приоритет срезов, класс риска |
| Владелец эталонного набора | Версии эталона, скрытая выборка |
| Редактор эталонов | Рубрика, разметка, согласование |
| Инженер ML / платформы | Схема, стенд, CI, манифест |
| Безопасность и соответствие | ACL в метаданных, запрет утечки в обучающий корпус |
Запишите, кто утверждает перевод кейса из буфера в эталон и кто может менять рубрику без мажорной версии набора. Без владельцев калибр «плывёт» незаметно — и все спорят о модели.
Без номера версии метрика — другая линейка
Каждый релиз оценки привязывайте к манифесту — иначе сравниваете сентябрь с августом разными калибрами:
dataset_id: golden-regulations
version: v3.2.0
schema_version: 2
rubric_version: ot-rubric-1.2
content_hash: sha256:...
record_count: 142
holdout_count: 28
created_at: 2026-08-15
changelog: "Добавлены 12 кейсов устаревших редакций; исправлен id reg-0088"
В CI: валидация схемы, уникальность id, запрет пустого ожидаемого выхода без отказа, проверка что скрытая выборка не попала в обучающий корпус. Статья dataset-versioning-governance-2026 развернёт управление.
Считайте качество самого набора
Точность модели — не единственная шкала. Смотрите на сам артефакт «набор»:
| Метрика набора | Что показывает |
|---|---|
| Покрытие намерения / класса | Дыры в срезах |
| Доля отказов | Не учим только «отвечать любой ценой» |
| Стабильность среза при версии N→N+1 | Регрессия из-за данных, не модели |
| Согласие разметчиков | Качество рубрики |
| Возраст записей | Устаревшие эталоны |
| Доля из прода vs синтетики | Реалистичность распределения |
Организационные метрики — в оценке корпоративного ИИ; здесь — качество калибра, а не только станка.
Корпоративный пример: ассистент по регламентам
Промышленный холдинг запускает ассистента по внутренним регламентам.
Неделя 0 — контракт. Продукт и ОТ фиксируют: ответ только с цитатой; при конфликте версий — отказ; вопросы вне ОТ — отказ с маршрутом к HR/IT.
Недели 1–2 — эталон v0 (80 записей). Два инженера ОТ и методист размечают по рубрике. Видимая оценка — только для команды. Скрытая выборка: 20 записей у технического лида.
Недели 3–4 — базовая линия RAG. Индексация по контуру подготовки данных. На эталоне v0 срез «устаревшая версия» — 40% провалов. Вывод: не модель, а индекс без срока действия и отсутствие отказов в подсказке.
Недели 5–8 — корпус SFT (600 пар). Только после фикса поиска. Пары «вопрос → ответ с пунктом». Обучение не пересекается со скрытой выборкой.
Постоянно — буфер. Два финализированных эталона в неделю из пилота. Ежеквартально — пересмотр рубрики и мажорная версия набора.
Через квартал отчёт воспроизводим: версия эталона, манифест индекса, модель — и видно, что подняло срез «устаревший регламент». Калибр остался тем же инструментом; меняли то, что им измеряли.
Промышленный пример: полевые бланки и OCR
В разборе OCR рукописных цифр параметры диктует среда: не глиф 28×28, а фото с перспективой; не одна цифра, а последовательность в ячейке; разметка из базы, а не армия разметчиков. Тот же закон для языковых моделей: канал, шум и постановка в наборе важнее размера чекпоинта. Калибр должен отражать цех, а не учебный стенд.
Связь с RAG-кластером и книгой
| Вопрос | Где углубиться |
|---|---|
| Оценка RAG в проде | rag-golden-dataset-eval-2026 |
| Загрузка PDF/OCR | rag-document-ingestion-2026 |
| Вся цепочка RAG | production-rag-engineering-2026 |
| Нужно ли дообучение | when-fine-tuning-is-needed |
| Метрики на уровне предприятия | evaluating-enterprise-ai |
Эта серия не заменяет RAG-кластер: она закрывает обучение, разметку, редакторов эталонов и управление данными там, где одного индекса недостаточно.
Где ломают линейку
Один файл на обучение и тест — без аудита дубликатов и парафраз. Эталон без версии — метрики месяца назад несравнимы. Синтетика вместо экспертов на редких кейсах размножает правдоподобный шум. Нет отказов в эталоне — модель учится угадывать. Пустые метаданные — регрессии по арендатору и риску невидимы. Дообучение до исправления поиска — SFT запоминает ошибки извлечения. Разметка без рубрики — бесконечные споры и низкое согласие.
Что сделать сегодня
- Нарисуйте четыре семейства и выпишите, где данные лежат сейчас.
- Назначьте владельца эталонного набора и зафиксируйте одну golden-запись (JSON выше).
- Проведите поиск утечки между обучением, видимой оценкой и отчётной оценкой.
- Добавьте пять кейсов с ожидаемым отказом до смены модели.
- Запишите манифест v0.1.0 даже для тридцати записей — привычка версий с первого дня.
Почините калибр до покупки нового станка: иначе следующий «плюс двенадцать процентов» снова нельзя будет повторить.
Часто задаваемые вопросы (FAQ)
Чем эталонный набор для обучения отличается от эталонного набора для оценки?
Для оценки набор фиксирован и версионирован — вы измеряете систему, не обучаете на нём (если только осознанно и без утечки). Тренировочный корпус меняется чаще, может быть шире и шумнее. Один формат JSONL — разные политики доступа и барьеры.
Сколько эталонных записей нужно для старта?
Для регрессионного барьера в CI часто хватает 50–150 хорошо стратифицированных кейсов; для скрытой выборки — ещё 20–50, которые команда не «подгоняет» глазами. Лучше 80 записей, согласованных экспертами, чем 800 синтетических без редактора.
Можно ли размечать эталон с помощью LLM?
Как черновик и для ускорения очереди — да. Как единственный редактор для домена с высоким риском — нет. Финализированный эталон проходит рубрику человека; LLM-судья — отдельный контур с калибровкой.
Нужен ли отдельный набор для RAG и для SFT?
Часто да. Оценка RAG проверяет поиск и генерацию. Корпус SFT учит формулировки и формат. Пересечение по тексту вопросов — кандидат на утечку; проверяйте дедупликацию.
Git подходит для хранения наборов?
Для сотен–нескольких тысяч текстовых записей в JSONL — да: сравнение версий, проверка в PR, теги. Для больших медиа — объектное хранилище + манифест в git. Не редактируйте эталон «на месте» без версии.
Дальше в серии
- Golden-записи и редакторы эталонов — рубрика, согласование, очередь ревью (
golden-editors-annotation-workflow-2026). - Обучение / оценка / holdout и утечки (
dataset-splits-leakage-2026). - JSONL, шарды и путь к GPU (
jsonl-shards-large-datasets-2026). - SFT и данные предпочтений (
sft-dataset-design-2026,preference-dataset-rlhf-2026). - Параметры по домену (
dataset-parameters-by-domain-2026).
Каталог серии: docs/ml-datasets/README.md в репозитории проекта.



Комментарии