Датасет — это обещание

То, что вы кладёте в датасет, — это и есть обещание, каким станет модель. Форматы, реалистичные размеры и чтение отчёта качества до того, как вы потратите хоть одну эпоху на грязные данные.
Чьё-то дообучение не падало из-за неправильного dropout. Много чьих падало из-за датасета из двадцати почти одинаковых примеров и одного сорокатысячесимвольного романа. Это короткая и категоричная версия того, что мы поняли, строя блок Dataset и его отчёт качества, — плюс ментальная модель, которая расставляет всё по местам: датасет — это обещание. Каждый пример говорит модели «отвечай так». Если примеры противоречат друг другу или тому, чего вы на самом деле хотите, модель честно сдержит это сломанное обещание.
Три формата — три намерения
- Чат —
{"messages":[{"role":"user","content":"..."},{"role":"assistant","content":"..."}]}. Рекомендуемый формат по умолчанию. Обучаются только реплики ассистента: модель учит ответы, а не вопросы. - Промпт / ответ —
{"prompt":"...","completion":"..."}. Для задач преобразования: почини текст, классифицируй, расшифруй аббревиатуру. - Свободный текст —
{"text":"..."}или любая строка. Для переноса стиля на сырых текстах. Структура не навязывается; последовательность — целиком ваша забота.
Формат — не техническая мелочь: он определяет, какое обещание вы даёте. Чат учит модель отвечать кому-то. Промпт/ответ учит выполнять конкретное преобразование. Свободный текст учит звучать. Сваленные бездумно в один датасет, они смешиваются в обещание, которое модель не сможет сдержать, — поэтому отчёт качества показывает mix форматов до обучения.
Какой размер? Меньше, чем кажется
Интернет намекает, что нужны тысячи примеров. С LoRA это просто неправда. Двадцати до нескольких сотен хорошо выбранных примеров хватает, чтобы заметно сдвинуть тон и формат — в этом вся привлекательность метода. Наш демо-датасет — тридцать шесть чат-примеров вымышленного саппорт-агента интернет-провайдера, и к концу обучения модель подписывала каждый ответ тем же знаком и отвечала тем же сухим дружелюбным голосом. Дело не в объёме. Последовательность: примеры согласны, кто говорит. Покрытие: ситуации, которые вы хотите закрыть. Честность: ответы, отражающие то, что вы хотите, а не то, что вам хотелось бы говорить.
Читаем отчёт качества
Нажмите Проверить качество — отчёт даст факты; четыре из них заслуживают первого взгляда.
- Дубликаты — самый быстрый путь к модели, которая говорит одну фразу идеально и всегда. Дедуплицируйте до обучения.
- Гистограмма длин — примеры длиннее
maxlenобрезаются. Если ваши данные живут на дальнем конце графика, поднимите maxlen или режьте примеры. - Языковой mix — определённые языки, включая персидский и эмодзи. Неожиданный язык обычно означает ошибку вставки.
- Mix форматов — что распарсилось как чат, что как промпт/ответ, что откатилось в свободный текст. Тихие откаты — источник сюрпризов обучения.
Eval-сплит: сдержите обещание перед собой
Поставьте eval_pct между 10 и 20 — и чистейшие примеры станут вашими доказательствами. Экран сравнения меряет перплексию на данных, которых модель никогда не видела, — единственный честный способ понять, что настройка легла. Нулевой сплит соблазняет — больше данных! — но оставляет вас наедине с ощущением. Весь смысл упражнения — заменить ощущения числами, и это самое дешёвое число в меню.