Что такое LoRA в AI?
LoRA расшифровывается как Low-Rank Adaptation. Это параметрически эффективный метод дообучения, сохраняющий исходные веса предобученной модели замороженными и обучающий значительно меньшие низкоранговые матрицы выбранных слоёв. Эти обновления можно сохранить как адаптер и позже применить к совместимой базе.

Эта страница посвящена адаптации моделей AI. LoRa со строчной «a» также называет технологию дальней радиосвязи. Она не связана с адаптерами LoRA для языковых моделей или генерации изображений.
Основная идея без алгебраического тумана
Обычное полное дообучение может обновлять многие или все параметры модели. LoRA предполагает, что полезное изменение для конкретной задачи часто можно представить с гораздо меньшим числом степеней свободы. Вместо полной матрицы обновления она выражает обновление произведением двух более тонких матриц ранга r.
Эффективный вес сочетает замороженный базовый вес с масштабированным низкоранговым обновлением:
W′ = W + (B × A) · scale
Если выбранный ранг намного меньше исходных размеров, матрицы A и B содержат значительно меньше обучаемых параметров, чем полное обновление. Это снижает память обучения и создаёт компактный адаптер. Большую часть работы по-прежнему выполняет базовая модель.
Модель LoRA, адаптер LoRA и веса LoRA
Эти выражения используют неточно, поэтому полезно их различать:
- Метод LoRA: метод низкоранговой адаптации при дообучении.
- Адаптер LoRA: обученное обновление и конфигурация для применения к совместимой базе.
- Веса LoRA: обучаемые значения тензоров этого адаптера.
- «Модель LoRA»: распространённое сокращение для адаптера или сочетания базы с адаптером. Оно неоднозначно; уточните, какой артефакт имеется.
Загруженный файл LoRA обычно не содержит полную базовую модель. Поэтому интерфейс просит выбрать чекпойнт, а затем применить одну или несколько LoRAs.
Чему может обучиться LoRA?
В языковых моделях адаптер может специализировать поведение для предметной области, задачи или стиля инструкций. В диффузионных моделях LoRAs часто используются для визуальных стилей, персонажей, субъектов, продуктов, понятий или небольших изменений поведения. Возможности адаптера определяются целевыми модулями, рангом, набором данных и процедурой обучения.
LoRA не гарантирует качество или точность. Компактный адаптер может переобучиться, конфликтовать с базой, непредсказуемо реагировать на разную силу или зависеть от триггерных токенов и предобработки. Считайте карточку модели и контекст обучения рабочими метаданными, а не украшением.
Как адаптер используется при выводе
Совместимый фреймворк загружает базу, читает конфигурацию адаптера и применяет его тензоры к целевым модулям. Некоторые среды сохраняют обновление отдельно для включения, взвешивания или выгрузки. Другие могут объединить обновление в производную копию для развёртывания.
Объединение не делает исходный адаптер автономным. Если нужно менять силу, комбинировать адаптеры или воспроизводить результирующий файл, сохраняйте необъединённый адаптер, точную базу и рецепт. Руководство по чекпойнтам и LoRA сопоставляет эти различия восстановления.
LoRA, QLoRA и полное дообучение
LoRA описывает низкоранговое обновление. QLoRA объединяет обучение LoRA с квантованной замороженной базой и дополнительными методами экономии памяти. Финальным результатом всё равно может быть адаптер, поэтому имя файла может не раскрывать способ обучения. Сравнение методов — в материале LoRA и QLoRA.
Полное дообучение обновляет гораздо большую часть модели и может давать иную ёмкость и рабочие компромиссы, но создаёт больше состояния и требует больше ресурсов. Выбор зависит от задачи, оборудования, оценки и развёртывания, а не от предположения, что один метод всегда более «профессионален».
Почему библиотеки LoRA всё равно становятся большими
Один адаптер компактен относительно базы, но коллекции растут из-за вариантов, рангов, эпох, сил, повторных загрузок и нескольких совместимых семейств баз. Базовые чекпойнты, VAEs, кодировщики, предварительные изображения и результаты обучения часто намного больше любого адаптера. Поэтому папка маленьких файлов может зависеть от гораздо более крупного набора моделей.
Используйте руководство по организации одной базовой модели с несколькими адаптерами и практический процесс освобождения места LoRA без изменения весов. Цель — связное восстанавливаемое семейство, а не самый маленький каталог любой ценой.
Что архивировать вместе с LoRA?
Как минимум сохраняйте веса адаптера, его конфигурацию и точный идентификатор базовой модели. Если база частная, локально изменённая или может исчезнуть, храните и её. Для воспроизводимости сохраняйте важные триггерные токены, конфигурацию обучения, ссылку на набор данных, лицензию или условия использования и контрольные суммы.
Tensor Archive сохраняет выбранные локальные семейства тензоров и проверяет точное восстановление. Он не воссоздаёт отсутствующую базу, не придумывает метаданные адаптера и не доказывает совместимость одноимённых архитектур.
Источники
- LoRA: Low-Rank Adaptation of Large Language Models — исходная статья, определившая замороженные предобученные веса и обучаемое низкоранговое разложение.
- Hugging Face PEFT: LoRA — текущие понятия конфигурации, ранга, масштаба и целевых модулей.
- Формат чекпойнта Hugging Face PEFT — что сохраняют чекпойнты адаптеров и как ссылаются на базовую модель.
- Diffusers: загрузка адаптеров — применение, взвешивание, выгрузка и объединение адаптеров LoRA.