LoRA: как дообучить нейросеть без изменения всех весов

LoRA — метод адаптации нейросети, при котором базовые веса замораживают, а изменения обучают в небольших низкоранговых матрицах. Это снижает требования к памяти и упрощает хранение нескольких адаптеров. Сначала докажите, что задачу нельзя решить промптом или RAG, затем отделите тестовую выборку и ср

22 октября 2026 16 мин чтения
База остаётся, адаптер учится
База остаётся, адаптер учится

Коротко. LoRA — метод адаптации нейросети, при котором базовые веса замораживают, а изменения обучают в небольших низкоранговых матрицах. Это снижает требования к памяти и упрощает хранение нескольких адаптеров. Сначала докажите, что задачу нельзя решить промптом или RAG, затем отделите тестовую выборку и сравните адаптер с базовой моделью.

При полном дообучении меняются миллионы или миллиарды параметров. LoRA добавляет небольшие обучаемые матрицы к выбранным слоям, а базовую модель оставляет неизменной. В результате один набор весов можно сочетать с несколькими компактными адаптерами.

Метод не загружает в модель новые документы как справочник и не гарантирует точные факты. Для меняющихся знаний чаще подходит RAG. LoRA разумна для поведения, формата, стиля или устойчивого доменного паттерна.

ЭлементНазначениеКонтроль
ПромптПравило поведенияБез обучения
RAGМеняющиеся знанияВнешний индекс
LoRAУстойчивая адаптацияНужны примеры
Полный fine-tuningГлубокое изменениеДороже

Метод описан в первичной работе LoRA: Low-Rank Adaptation of Large Language Models. Параметры конкретной реализации проверяйте в документации выбранного фреймворка.

Проверьте необходимость обучения

Сначала очертите рабочий объект: задача, которую не закрывает хороший промпт. LoRA уменьшает число обучаемых параметров, но не отменяет требования к данным и проверке. Ошибка «LoRA используют ради модного метода» здесь означает, что действие «сравнить с zero-shot и few-shot» запускают без исходного доказательства «базовая линия».

  • Рабочее действие: сравнить с zero-shot и few-shot.
  • Сохраняемый артефакт: базовая линия.
  • Контрольная ситуация: формат ответа стабилен после примеров без обучения.
  • Показатель решения: выигрыш над baseline.

До настройки сохраните базовая линия для объекта «задача, которую не закрывает хороший промпт». Затем выполните «сравнить с zero-shot и few-shot» и разберите случай «формат ответа стабилен после примеров без обучения». Этап «Проверьте необходимость обучения» принят, если ML-инженер подтверждает показатель «выигрыш над baseline», а риск «LoRA используют ради модного метода» не проявляется на пограничной выборке.

За этот участок отвечает ML-инженер. В журнале он связывает объект «задача, которую не закрывает хороший промпт» с артефактом «базовая линия», записывает версию входных данных, условия запуска и принятое решение. Если показатель «выигрыш над baseline» улучшается ценой нового риска «LoRA используют ради модного метода», изменение не выпускают, пока не появится защитная метрика и план отката. Практический шаг «сравнить с zero-shot и few-shot» должен воспроизводиться на примере «формат ответа стабилен после примеров без обучения».

Разберите пример отдельно: формат ответа стабилен после примеров без обучения. Полезно попросить второго специалиста повторить шаг «сравнить с zero-shot и few-shot» без устного объяснения. Если он получает другой вывод, документация неполна. Если одинаковый — контроль можно включать в регрессионный набор и повторять после смены модели, данных, кода или назначения системы. Для объекта «задача, которую не закрывает хороший промпт» владелец «ML-инженер» сверяет артефакт «базовая линия» с метрикой «выигрыш над baseline».

Отделите знания от поведения

Этап «Отделите знания от поведения» рассматривает меняющиеся факты и устойчивый способ ответа. LoRA уменьшает число обучаемых параметров, но не отменяет требования к данным и проверке. Сбой возникает, когда в адаптер зашивают свежий каталог; поэтому сначала готовят карта требований, а затем выполняют «решить, нужен RAG или изменение поведения».

  • Рабочее действие: решить, нужен RAG или изменение поведения.
  • Сохраняемый артефакт: карта требований.
  • Контрольная ситуация: цены остаются во внешней базе, стиль — в адаптере.
  • Показатель решения: число фактов, требующих обновления.

Раздел «Отделите знания от поведения» проверяют обратным порядком: сначала фиксируют риск «в адаптер зашивают свежий каталог», затем воспроизводят «цены остаются во внешней базе, стиль — в адаптере» и только после этого выполняют «решить, нужен RAG или изменение поведения». Вывод опирается на карта требований; метрику «число фактов, требующих обновления» подписывает архитектор.

За этот участок отвечает архитектор. В журнале он связывает объект «меняющиеся факты и устойчивый способ ответа» с артефактом «карта требований», записывает версию входных данных, условия запуска и принятое решение. Если показатель «число фактов, требующих обновления» улучшается ценой нового риска «в адаптер зашивают свежий каталог», изменение не выпускают, пока не появится защитная метрика и план отката. Практический шаг «решить, нужен RAG или изменение поведения» должен воспроизводиться на примере «цены остаются во внешней базе, стиль — в адаптере».

Разберите пример отдельно: цены остаются во внешней базе, стиль — в адаптере. Полезно попросить второго специалиста повторить шаг «решить, нужен RAG или изменение поведения» без устного объяснения. Если он получает другой вывод, документация неполна. Если одинаковый — контроль можно включать в регрессионный набор и повторять после смены модели, данных, кода или назначения системы. Для объекта «меняющиеся факты и устойчивый способ ответа» владелец «архитектор» сверяет артефакт «карта требований» с метрикой «число фактов, требующих обновления».

Подготовьте примеры

Для раздела «Подготовьте примеры» рабочая граница — качественные пары вход—выход. Риск формулируется как «массовые слабые примеры размножают ошибку». LoRA уменьшает число обучаемых параметров, но не отменяет требования к данным и проверке. Проверяемый ход — очистить и разметить небольшой набор, результат фиксируется в артефакте «паспорт датасета».

  • Рабочее действие: очистить и разметить небольшой набор.
  • Сохраняемый артефакт: паспорт датасета.
  • Контрольная ситуация: каждый ответ проверен предметным экспертом.
  • Показатель решения: доля принятых примеров.

Для объекта «качественные пары вход—выход» соберите обычный, крайний и ошибочный вход. Действие «очистить и разметить небольшой набор» должно дать проверяемый паспорт датасета. В сценарии «каждый ответ проверен предметным экспертом» роль владелец данных принимает решение по значению «доля принятых примеров» и отдельно записывает, возник ли риск «массовые слабые примеры размножают ошибку».

За этот участок отвечает владелец данных. В журнале он связывает объект «качественные пары вход—выход» с артефактом «паспорт датасета», записывает версию входных данных, условия запуска и принятое решение. Если показатель «доля принятых примеров» улучшается ценой нового риска «массовые слабые примеры размножают ошибку», изменение не выпускают, пока не появится защитная метрика и план отката. Практический шаг «очистить и разметить небольшой набор» должен воспроизводиться на примере «каждый ответ проверен предметным экспертом».

Разберите пример отдельно: каждый ответ проверен предметным экспертом. Полезно попросить второго специалиста повторить шаг «очистить и разметить небольшой набор» без устного объяснения. Если он получает другой вывод, документация неполна. Если одинаковый — контроль можно включать в регрессионный набор и повторять после смены модели, данных, кода или назначения системы. Для объекта «качественные пары вход—выход» владелец «владелец данных» сверяет артефакт «паспорт датасета» с метрикой «доля принятых примеров».

Заморозьте тест

Исходная точка пункта «Заморозьте тест»: примеры, не участвующие в обучении. До изменения сохраните хеш тестовой выборки. Если сразу перейти к шагу «отложить реальные пограничные случаи», может проявиться ошибка «качество проверяют на знакомых данных». LoRA уменьшает число обучаемых параметров, но не отменяет требования к данным и проверке.

  • Рабочее действие: отложить реальные пограничные случаи.
  • Сохраняемый артефакт: хеш тестовой выборки.
  • Контрольная ситуация: редкий формат остаётся только для оценки.
  • Показатель решения: разрыв train и test.

Приёмка этапа «Заморозьте тест» начинается с независимого повтора. Второй специалист получает хеш тестовой выборки, применяет «отложить реальные пограничные случаи» к контуру «примеры, не участвующие в обучении» и сверяет «разрыв train и test». Случай «редкий формат остаётся только для оценки» считается обязательным; ошибка «качество проверяют на знакомых данных» останавливает выпуск.

За этот участок отвечает специалист качества. В журнале он связывает объект «примеры, не участвующие в обучении» с артефактом «хеш тестовой выборки», записывает версию входных данных, условия запуска и принятое решение. Если показатель «разрыв train и test» улучшается ценой нового риска «качество проверяют на знакомых данных», изменение не выпускают, пока не появится защитная метрика и план отката. Практический шаг «отложить реальные пограничные случаи» должен воспроизводиться на примере «редкий формат остаётся только для оценки».

Разберите пример отдельно: редкий формат остаётся только для оценки. Полезно попросить второго специалиста повторить шаг «отложить реальные пограничные случаи» без устного объяснения. Если он получает другой вывод, документация неполна. Если одинаковый — контроль можно включать в регрессионный набор и повторять после смены модели, данных, кода или назначения системы. Для объекта «примеры, не участвующие в обучении» владелец «специалист качества» сверяет артефакт «хеш тестовой выборки» с метрикой «разрыв train и test».

Выберите точки адаптации

В задаче «Выберите точки адаптации» ожидаемый объект — слои и модули базовой модели. LoRA уменьшает число обучаемых параметров, но не отменяет требования к данным и проверке. Команда отдельно записывает опасение «адаптер подключают везде без измерения», выполняет «начать с документированной конфигурации» и оставляет спецификация target modules для повторной проверки.

  • Рабочее действие: начать с документированной конфигурации.
  • Сохраняемый артефакт: спецификация target modules.
  • Контрольная ситуация: внимание адаптируется, остальные веса неизменны.
  • Показатель решения: качество на параметр.

Не демонстрируйте раздел «Выберите точки адаптации» на одном удобном примере. Возьмите «внимание адаптируется, остальные веса неизменны», сохраните спецификация target modules и попросите роль исследователь выполнить «начать с документированной конфигурации». Решение по объекту «слои и модули базовой модели» принимают по метрике «качество на параметр», учитывая риск «адаптер подключают везде без измерения».

За этот участок отвечает исследователь. В журнале он связывает объект «слои и модули базовой модели» с артефактом «спецификация target modules», записывает версию входных данных, условия запуска и принятое решение. Если показатель «качество на параметр» улучшается ценой нового риска «адаптер подключают везде без измерения», изменение не выпускают, пока не появится защитная метрика и план отката. Практический шаг «начать с документированной конфигурации» должен воспроизводиться на примере «внимание адаптируется, остальные веса неизменны».

Разберите пример отдельно: внимание адаптируется, остальные веса неизменны. Полезно попросить второго специалиста повторить шаг «начать с документированной конфигурации» без устного объяснения. Если он получает другой вывод, документация неполна. Если одинаковый — контроль можно включать в регрессионный набор и повторять после смены модели, данных, кода или назначения системы. Для объекта «слои и модули базовой модели» владелец «исследователь» сверяет артефакт «спецификация target modules» с метрикой «качество на параметр».

Настройте ранг

Эксперимент «Настройте ранг» ограничьте контуром «ёмкость низкорангового изменения». Главная ловушка: высокий ранг увеличивают без проверки. Действие «сравнить несколько значений» допустимо после фиксации материала «серия экспериментов». LoRA уменьшает число обучаемых параметров, но не отменяет требования к данным и проверке.

  • Рабочее действие: сравнить несколько значений.
  • Сохраняемый артефакт: серия экспериментов.
  • Контрольная ситуация: малый ранг уже удерживает нужный формат.
  • Показатель решения: метрика при разных рангах.

Эксперимент для «Настройте ранг» замораживают до изменения: объект «ёмкость низкорангового изменения», пример «малый ранг уже удерживает нужный формат», ожидаемый показатель «метрика при разных рангах». После шага «сравнить несколько значений» должен появиться серия экспериментов. Ответственный ML-инженер отклоняет вариант, если сохраняется риск «высокий ранг увеличивают без проверки».

За этот участок отвечает ML-инженер. В журнале он связывает объект «ёмкость низкорангового изменения» с артефактом «серия экспериментов», записывает версию входных данных, условия запуска и принятое решение. Если показатель «метрика при разных рангах» улучшается ценой нового риска «высокий ранг увеличивают без проверки», изменение не выпускают, пока не появится защитная метрика и план отката. Практический шаг «сравнить несколько значений» должен воспроизводиться на примере «малый ранг уже удерживает нужный формат».

Разберите пример отдельно: малый ранг уже удерживает нужный формат. Полезно попросить второго специалиста повторить шаг «сравнить несколько значений» без устного объяснения. Если он получает другой вывод, документация неполна. Если одинаковый — контроль можно включать в регрессионный набор и повторять после смены модели, данных, кода или назначения системы. Для объекта «ёмкость низкорангового изменения» владелец «ML-инженер» сверяет артефакт «серия экспериментов» с метрикой «метрика при разных рангах».

Контролируйте переобучение

На собственном материале проверьте расхождение обучения и проверки. LoRA уменьшает число обучаемых параметров, но не отменяет требования к данным и проверке. Если возникает «адаптер повторяет формулировки датасета», вернитесь к шагу «следить за loss и независимыми примерами» и пересоберите кривые обучения, не меняя одновременно остальные условия.

  • Рабочее действие: следить за loss и независимыми примерами.
  • Сохраняемый артефакт: кривые обучения.
  • Контрольная ситуация: модель копирует тренировочный ответ вместо решения.
  • Показатель решения: качество на отложенной выборке.

В разделе «Контролируйте переобучение» сравните две версии на одинаковом входе «модель копирует тренировочный ответ вместо решения». Свидетельство кривые обучения связывает объект «расхождение обучения и проверки» с действием «следить за loss и независимыми примерами». Итоговый показатель — «качество на отложенной выборке»; владелец аналитик отдельно проверяет ошибку «адаптер повторяет формулировки датасета».

За этот участок отвечает аналитик. В журнале он связывает объект «расхождение обучения и проверки» с артефактом «кривые обучения», записывает версию входных данных, условия запуска и принятое решение. Если показатель «качество на отложенной выборке» улучшается ценой нового риска «адаптер повторяет формулировки датасета», изменение не выпускают, пока не появится защитная метрика и план отката. Практический шаг «следить за loss и независимыми примерами» должен воспроизводиться на примере «модель копирует тренировочный ответ вместо решения».

Разберите пример отдельно: модель копирует тренировочный ответ вместо решения. Полезно попросить второго специалиста повторить шаг «следить за loss и независимыми примерами» без устного объяснения. Если он получает другой вывод, документация неполна. Если одинаковый — контроль можно включать в регрессионный набор и повторять после смены модели, данных, кода или назначения системы. Для объекта «расхождение обучения и проверки» владелец «аналитик» сверяет артефакт «кривые обучения» с метрикой «качество на отложенной выборке».

Сравните с базовой моделью

Владельца для этапа «Сравните с базовой моделью» назначают до работы с объектом «одинаковые запросы и параметры генерации». LoRA уменьшает число обучаемых параметров, но не отменяет требования к данным и проверке. Он не допускает ошибку «результат меняют вместе с температурой», требует выполнить «провести парный слепой тест» и принять таблица ответов.

  • Рабочее действие: провести парный слепой тест.
  • Сохраняемый артефакт: таблица ответов.
  • Контрольная ситуация: эксперт не знает, где подключён адаптер.
  • Показатель решения: предпочтение и число ошибок.

Для решения по этапу «Сравните с базовой моделью» недостаточно слов автора. Сначала роль редактор получает таблица ответов, затем повторяет «провести парный слепой тест» и проверяет объект «одинаковые запросы и параметры генерации» на ситуации «эксперт не знает, где подключён адаптер». Метрика «предпочтение и число ошибок» принимается только без проявления риска «результат меняют вместе с температурой».

За этот участок отвечает редактор. В журнале он связывает объект «одинаковые запросы и параметры генерации» с артефактом «таблица ответов», записывает версию входных данных, условия запуска и принятое решение. Если показатель «предпочтение и число ошибок» улучшается ценой нового риска «результат меняют вместе с температурой», изменение не выпускают, пока не появится защитная метрика и план отката. Практический шаг «провести парный слепой тест» должен воспроизводиться на примере «эксперт не знает, где подключён адаптер».

Разберите пример отдельно: эксперт не знает, где подключён адаптер. Полезно попросить второго специалиста повторить шаг «провести парный слепой тест» без устного объяснения. Если он получает другой вывод, документация неполна. Если одинаковый — контроль можно включать в регрессионный набор и повторять после смены модели, данных, кода или назначения системы. Для объекта «одинаковые запросы и параметры генерации» владелец «редактор» сверяет артефакт «таблица ответов» с метрикой «предпочтение и число ошибок».

Версионируйте адаптер

Контрольный пример раздела «Версионируйте адаптер» должен раскрывать база, LoRA, данные и конфигурация. Риск — адаптер подключается к несовместимой базе. LoRA уменьшает число обучаемых параметров, но не отменяет требования к данным и проверке. Пример проходит действие «хранить манифест совместимости», после чего команда получает карточка релиза.

  • Рабочее действие: хранить манифест совместимости.
  • Сохраняемый артефакт: карточка релиза.
  • Контрольная ситуация: адаптер версии A работает только с точной базой B.
  • Показатель решения: число ошибок загрузки.

Контроль «Версионируйте адаптер» включите в регрессионный набор. Он хранит карточка релиза, вход «адаптер версии A работает только с точной базой B» и ожидаемую величину «число ошибок загрузки». При повторе действия «хранить манифест совместимости» специалист инженер платформы должен подтвердить объект «база, LoRA, данные и конфигурация» и отсутствие сбоя «адаптер подключается к несовместимой базе».

За этот участок отвечает инженер платформы. В журнале он связывает объект «база, LoRA, данные и конфигурация» с артефактом «карточка релиза», записывает версию входных данных, условия запуска и принятое решение. Если показатель «число ошибок загрузки» улучшается ценой нового риска «адаптер подключается к несовместимой базе», изменение не выпускают, пока не появится защитная метрика и план отката. Практический шаг «хранить манифест совместимости» должен воспроизводиться на примере «адаптер версии A работает только с точной базой B».

Разберите пример отдельно: адаптер версии A работает только с точной базой B. Полезно попросить второго специалиста повторить шаг «хранить манифест совместимости» без устного объяснения. Если он получает другой вывод, документация неполна. Если одинаковый — контроль можно включать в регрессионный набор и повторять после смены модели, данных, кода или назначения системы. Для объекта «база, LoRA, данные и конфигурация» владелец «инженер платформы» сверяет артефакт «карточка релиза» с метрикой «число ошибок загрузки».

Планируйте откат

Свяжите пункт «Планируйте откат» с решением человека о контуре «быстрое отключение адаптера». LoRA уменьшает число обучаемых параметров, но не отменяет требования к данным и проверке. Без шага «сохранить базовый маршрут» и артефакта «процедура переключения» нельзя исключить ошибку «ошибка остаётся в проде до нового обучения».

  • Рабочее действие: сохранить базовый маршрут.
  • Сохраняемый артефакт: процедура переключения.
  • Контрольная ситуация: при деградации сервис возвращается к проверенной модели.
  • Показатель решения: время отката.

Перед закрытием пункта «Планируйте откат» воспроизведите цепочку: быстрое отключение адаптера; сохранить базовый маршрут; процедура переключения. На примере «при деградации сервис возвращается к проверенной модели» измерьте «время отката». Роль дежурная команда выбирает запуск, исправление или отказ, если обнаруживается риск «ошибка остаётся в проде до нового обучения».

За этот участок отвечает дежурная команда. В журнале он связывает объект «быстрое отключение адаптера» с артефактом «процедура переключения», записывает версию входных данных, условия запуска и принятое решение. Если показатель «время отката» улучшается ценой нового риска «ошибка остаётся в проде до нового обучения», изменение не выпускают, пока не появится защитная метрика и план отката. Практический шаг «сохранить базовый маршрут» должен воспроизводиться на примере «при деградации сервис возвращается к проверенной модели».

Разберите пример отдельно: при деградации сервис возвращается к проверенной модели. Полезно попросить второго специалиста повторить шаг «сохранить базовый маршрут» без устного объяснения. Если он получает другой вывод, документация неполна. Если одинаковый — контроль можно включать в регрессионный набор и повторять после смены модели, данных, кода или назначения системы. Для объекта «быстрое отключение адаптера» владелец «дежурная команда» сверяет артефакт «процедура переключения» с метрикой «время отката».

Матрица приёмки

ЭтапДоказательствоВладелец
Проверьте необходимость обучениябазовая линияML-инженер
Отделите знания от поведениякарта требованийархитектор
Подготовьте примерыпаспорт датасетавладелец данных
Заморозьте тестхеш тестовой выборкиспециалист качества
Выберите точки адаптацииспецификация target modulesисследователь
Настройте рангсерия экспериментовML-инженер

Что изучить дальше

Чек-лист запуска

  • Определена одна задача и единица результата.
  • Собрана неизменная тестовая выборка.
  • Есть базовая линия без новой технологии.
  • Основная и защитная метрики записаны заранее.
  • Версии данных, модели и настроек связаны.
  • Пограничные и ошибочные случаи проверены отдельно.
  • Назначены владелец решения и владелец риска.
  • Есть условие остановки и рабочий откат.

Остался вопрос по теме статьи? Напишите его в предложку блога — отвечаю лично: задать вопрос в MAX. Частые вопросы разбираю отдельными статьями и присылаю ссылку тому, кто спросил.

Статья помогла?
Николай Шаповалов Николай Шаповалов Основатель Tapbox, делает сервисы для MAX Канал автора в MAX

Читайте дальше