Эфир 18.11 · Поток 318 ноября в 19:00 МСК — бесплатный практический эфир по ИИ-агентам · Живой Поток 3 стартует 23.11Эфир 18 ноября →Поток 3 (23.11)
ИнфраструктураОткрытые веса · В работуKDnuggets→ оригинал

Пять способов дообучить LLM без дорогого кластера: LoRA, QLoRA, Unsloth, DPO и GPU

Полное дообучение LLM упирается в память: веса, градиенты и состояние оптимизатора забивают видеокарту раньше, чем начнётся обучение. KDnuggets собрал пять приёмов, которые это обходят: LoRA, QLoRA, Unsloth, DPO и подбор GPU под задачу. Идея простая: учим малую часть параметров, сжимаем базовую модель и не платим за лишнее железо. Для каждого приёма в статье есть рабочий код.

AI-обработка оригинала KDnuggets; редакция Hamidun News
Пять способов дообучить LLM без дорогого кластера: LoRA, QLoRA, Unsloth, DPO и GPU
Источник: KDnuggets. Коллаж: Hamidun News.
Слушать статью
Паспорт материала и цифры
ПараметрДанные
ПервоисточникKDnuggets ↗
Главный редактор
Ключевой факт #1LoRA учит маленькие адаптеры, а не все веса модели
Ключевой факт #2QLoRA хранит базовую модель в 4 битах и экономит VRAM
Ключевой факт #3DPO заменяет сложный RLHF простой парной оптимизацией

Типичная история: команда решает дообучить открытую модель под свою задачу, смотрит на цены облачных GPU и откладывает идею до лучших времён. Зря. Большая часть счёта берётся не из честной необходимости, а из привычки делать всё «по-взрослому»: обновлять все веса, держать модель в полной точности и арендовать самую мощную карту. KDnuggets разобрал пять приёмов, которые эту привычку ломают. Вот что за ними стоит и как это применять.

Откуда берётся счёт

При полном дообучении в памяти живёт не только сама модель. Рядом лежат градиенты и состояние оптимизатора (у Adam это ещё два числа на каждый параметр). Грубая прикидка: для модели на 7 млрд параметров нужно больше 100 ГБ видеопамяти. Это уже несколько дорогих карт, а не одна.

Все пять приёмов бьют в одно из трёх мест: сколько параметров мы обучаем, в какой точности храним модель и за какое железо платим.

Пять приёмов по порядку

1. LoRA. Вместо обновления всех весов мы замораживаем модель и добавляем к слоям маленькие обучаемые матрицы-адаптеры. Обучается доля процента параметров, градиенты и состояние оптимизатора считаются только для них. Результат — адаптер на десятки мегабайт, который можно хранить отдельно и подключать к базовой модели. Под каждого клиента или задачу — свой файл, а не копия модели на 14 ГБ.

2. QLoRA. Тот же LoRA, но замороженная базовая модель сжата до 4 бит. Адаптеры при этом обучаются в более высокой точности. Именно этот трюк позволил дообучать модели на одной потребительской или недорогой серверной карте. Цена вопроса — немного медленнее шаг обучения и небольшой риск потери качества, поэтому результат стоит сверять на своей валидации.

3. Unsloth. Это не новый алгоритм, а оптимизированная реализация: переписанные ядра и более экономное обращение с памятью. Для практика важно, что она ложится поверх привычного стека (Hugging Face, PEFT, TRL) и даёт выигрыш по скорости и VRAM без смены метода. Это самый дешёвый по трудозатратам шаг: поменять импорт и замерить.

4. DPO. Если нужно не научить модель новому, а подправить поведение (тон, формат, отказы, стиль), классический RLHF с отдельной reward-моделью — перебор. DPO обучается на парах «хороший ответ / плохой ответ» напрямую, без reward-модели и цикла с генерацией. Меньше компонентов, меньше памяти, меньше мест для поломки. Данные для него собрать проще, чем кажется: достаточно логов, где пользователь выбрал один из двух вариантов.

5. Правильный размер GPU. Самый скучный и самый денежный пункт. Для QLoRA на модели класса 7–8B часто хватает карты на 24 ГБ, а арендовать топовый ускоритель «на всякий случай» значит платить в несколько раз больше за простаивающую память. Сначала замерьте пик памяти на малом батче, потом подбирайте карту. Помогают gradient checkpointing, накопление градиентов и короткие контексты в обучающих примерах.

Ограничения и что делать

Ни один из этих приёмов не заменит качественные данные. Тысяча чистых, подобранных примеров обычно полезнее, чем сотня тысяч мусора, и дешёвый метод на плохом датасете даст дёшево плохую модель. Кроме того, LoRA и QLoRA хуже подходят, когда модели нужно глубоко изменить знания или язык; для лёгкой адаптации под домен и формат они работают отлично.

Практический порядок действий такой:

  • Начните с QLoRA на небольшой модели и одной карте, подключив Unsloth, если он поддерживает вашу архитектуру.
  • Сразу заведите валидацию на своих задачах и сравнивайте с базовой моделью и с промптингом: иногда дообучение вообще не нужно.
  • Если нужно подправить манеру ответов, добавьте DPO поверх обученного адаптера.
  • Подбирайте GPU по замеренной памяти, а не по прайс-листу провайдера.

Важная оговорка: мы описываем подходы по анонсу статьи KDnuggets, а конкретные цифры по скорости и памяти зависят от модели, длины контекста и версий библиотек. Проверяйте их на своём железе, прежде чем строить на них бюджет.

Сюжет

Вопросы и ответы по материалу

Что известно по теме: откуда берётся счёт?

При полном дообучении в памяти живёт не только сама модель. Рядом лежат градиенты и состояние оптимизатора (у Adam это ещё два числа на каждый параметр). Грубая прикидка: для модели на 7 млрд параметров нужно больше 100 ГБ видеопамяти. Это уже несколько дорогих карт, а не одна. Все пять приёмов бьют в одно из трёх мест: сколько параметров мы обучаем, в какой точности храним модель и за какое железо платим.

Что известно по теме: пять приёмов по порядку?

1. LoRA. Вместо обновления всех весов мы замораживаем модель и добавляем к слоям маленькие обучаемые матрицы-адаптеры. Обучается доля процента параметров, градиенты и состояние оптимизатора считаются только для них. Результат — адаптер на десятки мегабайт, который можно хранить отдельно и подключать к базовой модели. Под каждого клиента или задачу — свой файл, а не копия модели на 14 ГБ. 2. QLoRA. Тот же LoRA, но замороженная базовая модель сжата до 4 бит. Адаптеры при этом обучаются в более высокой точности.

Что известно по теме: ограничения и что делать?

Ни один из этих приёмов не заменит качественные данные. Тысяча чистых, подобранных примеров обычно полезнее, чем сотня тысяч мусора, и дешёвый метод на плохом датасете даст дёшево плохую модель. Кроме того, LoRA и QLoRA хуже подходят, когда модели нужно глубоко изменить знания или язык; для лёгкой адаптации под домен и формат они работают отлично. Практический порядок действий такой: Начните с QLoRA на небольшой модели и одной карте, подключив Unsloth, если он поддерживает вашу архитектуру.

ЖХ
Жемал Хамидун — CPO Alpina Digital, продакт-менеджер AlpinaGPT. Делает AI-продукты с 2019 года. Hamidun News — pet project, который вырос в production-агрегатор с 6000+ читателей.
✦ Единое AI-пространство · Nomad

Протестируйте новые LLM и мультимодальные модели в одном окне

Платформа Nomad AI (nomadnet.ai) даёт прямой доступ к Claude Opus 5.5, GPT-6, Gemini 3.1, DeepSeek и автономным агентам без VPN, зарубежных карт и зоопарка подписок.

Открыть Nomad AI →Автономный Nomad Agent
Что вы думаете?
Загружаем комментарии…