Дообучение, LoRA и QLoRA: когда менять параметры модели
Fine-tuning продолжает обучение предобученной модели на целевом наборе. Он подходит для устойчивой адаптации поведения, формата и доменного распределения, но требует данных,…
Краткий ответ
Fine-tuning продолжает обучение предобученной модели на целевом наборе. Он подходит для устойчивой адаптации поведения, формата и доменного распределения, но требует данных, вычислений и оценки.
Fine-tuning продолжает обучение предобученной модели на целевом наборе. Он подходит для устойчивой адаптации поведения, формата и доменного распределения, но требует данных, вычислений и оценки. Для часто меняющихся фактов обычно лучше retrieval, чем попытка «записать» каждое обновление в веса.
Полный fine-tuning и SFT
При полном fine-tuning обновляются все или большинство параметров. Это гибко, но дорого по памяти: нужно хранить веса, градиенты и состояния оптимизатора. Маленький или узкий датасет может вызвать переобучение и ухудшить общие способности.
Supervised fine-tuning использует демонстрации желаемых ответов. Он может быть полным или параметрически эффективным. Важно разделять метод данных SFT и способ обновления параметров.
Как работает LoRA
LoRA замораживает базовую матрицу весов и добавляет обучаемое низкоранговое обновление, представленное произведением двух меньших матриц. Число обучаемых параметров заметно сокращается. Адаптер можно хранить отдельно и подключать к одной базовой модели.
Низкий rank — гиперпараметр, а не обещание бесплатного качества. Выбор слоёв, learning rate, длина примеров и качество датасета влияют на результат. Несколько адаптеров также могут конфликтовать при наивном объединении.
Что добавляет QLoRA
QLoRA хранит замороженную базовую модель в низкой разрядности и проводит градиент к LoRA-адаптерам. Это уменьшает память и делает адаптацию крупных моделей доступнее. Квантование базы и обучение адаптеров — разные операции: сами градиенты и вычисления не обязаны быть четырёхбитными целиком.
Снижение памяти не отменяет стоимость подготовки данных и оценки. Результат может хорошо имитировать стиль примеров, но уверенно ошибаться в редких случаях.
Когда fine-tuning не нужен
- Правила и документы меняются каждую неделю — используйте RAG.
- Нужно строго проверить JSON — используйте schema-constrained decoding и валидацию.
- Требуется один новый факт — передайте его в контексте или инструменте.
- Проблема вызвана неверной бизнес-логикой — исправьте оркестратор.
- Нет качественной обучающей и тестовой выборки — сначала определите критерий.
Fine-tuning оправдан, когда большой поток однотипных запросов требует устойчивого поведения, prompting слишком дорог или нестабилен, а метрики показывают выигрыш.
Данные и защита от деградации
Разделите train, validation и test до эксперимента. Удалите дубли между ними, включите отрицательные и пограничные примеры. Сравнивайте с базовой моделью на доменной задаче и на общих safety/regression тестах.
Не используйте реальные пользовательские диалоги без правового основания, минимизации и контроля доступа. Адаптер способен запоминать редкие последовательности так же, как другое обучение.
Упражнение: выбрать способ адаптации
Для трёх требований выберите prompt, RAG или LoRA: новый фирменный тон ответов; актуальные цены из каталога; строгий расчёт налога. Обоснуйте выбор.
Ожидаемая логика: стиль может стать кандидатом на SFT/LoRA после baseline с prompt; цены требуют источника данных; налог лучше вычислять детерминированным сервисом. Затем придумайте тест, который покажет, что выбранный способ действительно лучше.
Частые вопросы
LoRA добавляет знания без риска забывания?
Адаптер меняет поведение модели и может влиять на общие способности. Риск обычно меньше и управление удобнее, но регрессионные тесты всё равно обязательны.
QLoRA всегда даёт качество полного fine-tuning?
Исходная работа показала сильные результаты на исследованных моделях и задачах, но это не универсальная гарантия. Домен, данные, rank и квантование могут изменить вывод.
Можно обучить модель на ответах другой модели?
Можно создавать синтетические данные, но ошибки и стилевые смещения учителя переходят ученику. Нужны фильтрация, лицензирование, независимая проверка и доля человечески подтверждённых примеров.
Что важно запомнить
- Fine-tuning меняет параметры, тогда как RAG меняет контекст.
- LoRA обучает низкоранговые обновления при замороженной базе.
- QLoRA экономит память, сочетая квантованную базу с обучаемыми адаптерами.
- Решение об адаптации принимают по метрикам и стоимости, а не по модности метода.
https://yadro-code.ru/lessons/without-university/generative-ai-foundations/generative-ai-12