Человек читает про LoRA, видит, что порог входа упал, и решает: «дообучу модель под себя». Дальше он тратит неделю на сбор датасета, вечер на установку зависимостей, ещё день на то, чтобы понять, почему обучение падает с ошибкой про версию библиотеки, — и получает модель, которая отвечает примерно как раньше, только хуже держит темы, которых не было в его данных.
Это не редкий исход. Это типичный исход, когда инструмент выбран до постановки задачи.
#Короткий ответ
Большинству тех, кто думает, что им нужно дообучение, нужен другой инструмент: системный промпт, поиск по своим документам (RAG) или базовая модель побольше. Дообучение решает ровно одну задачу хорошо — устойчиво сдвинуть манеру ответа: тон, формат, длину, степень прямоты. Всё остальное — знания, свежие факты, доступ к вашим файлам, качество рассуждений — оно решает плохо, дорого или вообще не решает.
Правило, которое стоит применить до того, как вы откроете терминал:
Если задачу можно сформулировать словами в системном промпте и проверить за десять минут — дообучение вам не нужно. Если её решает подстановка вашего документа в контекст — тем более.
#Пять признаков, что дообучение будет потерей недели
Проверьте свою задачу по списку. Совпал хотя бы один пункт — начинайте не с обучения.
- Вы хотите, чтобы модель «знала» ваши документы. Дообучение не является способом загрузить в модель базу знаний. Веса — плохое хранилище фактов: они не обновляются точечно, из них нельзя удалить один факт, и модель начинает уверенно путать похожие записи. Нужен поиск по документам с подстановкой в контекст; разбор различий — в статье RAG или fine-tune: что выбрать.
- Вы хотите, чтобы модель стала умнее. Способность рассуждать закладывается на этапе предобучения базовой модели. LoRA на нескольких сотнях примеров её не добавляет — и при неаккуратных настройках отбирает. Если нужен более сильный интеллект, меняется база, а не количество эпох.
- Вы ещё ни разу не переписывали системный промпт. Это первый и самый дешёвый рычаг. Пока вы не попробовали внятную инструкцию с примерами желаемого ответа, вы не знаете, чего не хватает. Что в неё писать и чего не писать — в отдельном разборе системного промпта для личного ИИ.
- У вас меньше сотни примеров, которые вы готовы назвать эталонными. Не «сохранённых диалогов», а именно ответов, которые вы перечитали и подтвердили. Сколько нужно под разные цели — в статье сколько примеров нужно для дообучения.
- Вам нужен результат в ближайшие дни. Дообучение — итеративный цикл: собрать, обучить, проверить, найти брак, доработать данные, обучить снова. Первая попытка почти никогда не последняя, и это не пессимизм, а нормальный режим работы.
#Таблица: симптом и правильный инструмент
Слева — как задачу обычно формулируют вслух. Справа — что на самом деле её закрывает.
| Что вы хотите | Что реально нужно | Почему не fine-tune |
|---|---|---|
| «Пусть отвечает короче и по делу» | Системный промпт | Меняется одной строкой, проверяется сразу |
| «Пусть знает мои проекты и заметки» | Поиск по документам (RAG) | Веса не обновляются точечно, факт из них не удалить |
| «Пусть не выдумывает цифры» | RAG + требование ссылки на источник | Дообучение усиливает уверенность, а не точность |
| «Пусть решает сложные задачи» | База побольше или рассуждающая модель | Интеллект приходит из предобучения |
| «Пусть говорит на моём жаргоне» | Промпт со словарём терминов | Работает, пока терминов десятки, а не сотни |
| «Пусть звучит как я, всегда, без напоминаний» | Дообучение | Единственный случай, где оно оправдано |
| «Пусть выдаёт строгий JSON» | Ограниченная генерация или промпт с примерами | Дообучение под формат работает, но это стрельба из пушки |
Вывод из таблицы: единственная строка, где дообучение — правильный ответ, это устойчивый личный стиль. Всё остальное закрывается инструментами, которые дешевле в разы и проверяются за вечер.
#Почему промпт проигрывает не так часто, как кажется
Главный аргумент против промпта звучит так: «инструкции раздувают контекст, и модель про них забывает». Это верное наблюдение, но у него есть граница.
Промпт действительно перестаёт держать поведение, когда: инструкция разрослась до полутора-двух тысяч токенов и начинает конфликтовать сама с собой; нужное поведение должно проявляться в каждом ответе на протяжении длинного диалога; или модель слишком мала, чтобы удерживать много одновременных требований. Компактная модель на пару миллиардов параметров обычно выполняет две-три инструкции из семи — и вот здесь дообучение начинает окупаться.
Но если у вас модель среднего размера и промпт на двести токенов, который вы ни разу не дорабатывали после первой версии, — упирается не промпт, а его качество.
#Сколько стоит ошибиться с выбором
Дообучение не бесплатно, даже когда видеокарта своя. Считать надо не только машинное время:
- Сбор и вычитка датасета. Это ручная работа, и её нельзя делегировать модели, ради стиля которой вы всё затеяли.
- Настройка окружения. Тяжёлые пакеты, версии, совместимость с вашей картой. Один вечер в лучшем случае.
- Неудачные запуски. Первый прогон почти всегда либо переобучен, либо не сдвинул стиль. Как это считать в деньгах при аренде — в разборе стоимости аренды видеокарты для дообучения.
- Проверка результата. Без слепого сравнения с базовой моделью вы не узнаете, стало лучше или вам так кажется.
Для сравнения: переписать системный промпт и проверить его на десяти своих вопросах — это тридцать-сорок минут, и результат виден сразу.
#Где интуиция подводит
Заблуждение первое: «дообучу — и не придётся писать длинные промпты». Отчасти да, но системный промпт после дообучения никуда не девается: в нашем собственном пайплайне «второй копии» модель после обучения всё равно запускается с SYSTEM-блоком, который задаёт тот же характер. Обучение закрепляет поведение, промпт его называет; работают они вместе.
Заблуждение второе: «мои данные уникальны, значит, дообучение обязательно». Уникальность данных — это аргумент за поиск по ним, а не за вшивание их в веса. Уникальный стиль — аргумент за дообучение. Разница между «у меня особые данные» и «у меня особая манера» решает всё.
Заблуждение третье: «раз оно у меня уже собирается автоматически, надо использовать». Накопленный датасет — не повод обучать. Он повод сначала посмотреть, что в нём: если это в основном ответы облачной модели, которые вам понравились на первый взгляд, вы обучите компактную модель имитировать чужую манеру, а не свою.
Заблуждение четвёртое: «сначала обучу, потом посмотрю». Обратный порядок дешевле: зафиксируйте десять вопросов и свои эталонные ответы на них, прогоните на базовой модели с промптом, и вы получите точную картину разрыва. Если разрыв в тоне — обучение поможет. Если в фактах или в логике — не поможет.
#Что делать вместо дообучения: порядок действий
- Напишите нормальный системный промпт — с двумя-тремя примерами желаемого ответа прямо в тексте. Проверьте на десяти своих задачах.
- Подключите поиск по своим документам, если вопросы касаются ваших материалов.
- Смените базовую модель на более крупную и повторите шаг 1. Часто на этом всё и заканчивается.
- Соберите разрыв в письменном виде: что именно в ответах вас не устраивает после шагов 1–3. Если формулировки получаются вида «слишком вежливо», «слишком длинно», «не так расставляет акценты» — вот теперь дообучение оправдано, и маршрут описан в статье про свою модель и дообучение.
#Частые вопросы
#Как понять, что дообучение мне всё-таки нужно?
По одному признаку: вы можете назвать, чем ответ модели отличается от вашего, но не можете сформулировать это инструкцией так, чтобы модель выполняла её стабильно. Это и есть зона дообучения — устойчивое поведение, которое плохо описывается словами. Если разрыв формулируется одной фразой и модель ей следует — вам хватило промпта.
#Можно ли совмещать дообучение и поиск по документам?
Да, и это самая разумная комбинация: дообучение задаёт манеру, поиск поставляет факты. Они не конкуренты и работают на разных уровнях. Ошибка — пытаться закрыть фактическую часть дообучением, а стилевую промптом; получается наоборот дороже и хуже.
#Дообучение уменьшит галлюцинации?
Скорее наоборот. Обучение на небольшом наборе своих примеров делает модель увереннее в своей манере, но не точнее в фактах, и уверенная неправда читается убедительнее неуверенной. Против выдумок работает подстановка проверяемых источников, а не изменение весов.
#Стоит ли дообучать, если модель просто плохо говорит по-русски?
Нет. Качество языка — свойство базовой модели и её словаря; небольшим адаптером его не починить, а попытка обычно ломает то, что работало. Правильный ход — выбрать базу, у которой русский был в предобучении в достаточном объёме.
#Я всё равно хочу попробовать ради интереса. Это плохо?
Нет, если вы честно называете цель «научиться», а не «решить задачу». В учебном режиме берите самую маленькую базу и пару сотен примеров: цикл будет быстрым, и вы увидите весь механизм. Плохо — когда рабочая задача горит, а вы вместо неё осваиваете обучение.
#Вывод
Дообучение — узкий инструмент с высокой ценой входа. Оно оправдано, когда вам нужен устойчивый личный стиль и вы уже упёрлись в потолок промпта. Если задача про знания, про свежие факты, про доступ к файлам или про «пусть будет умнее» — вы возьмёте не тот инструмент и потеряете неделю.
Проверка занимает вечер: напишите промпт, подключите поиск по документам, попробуйте базу побольше. Если после этого вы всё ещё можете назвать разрыв — обучайте. Если разрыв исчез — вы только что сэкономили себе неделю.