corehu
Арендовать GPU
← Все статьи
ЧЕРНОВИКРуководство

Выбор GPU для дообучения LLM (гид по VRAM)

Команда CoreHu·9 мин чтения

От 7B до 70B: считаем VRAM, необходимый для полного дообучения и LoRA; объясняем влияние batch size, длины последовательности и квантования на бюджет.

01

Почему VRAM решает?

При дообучении в памяти одновременно находятся веса модели, градиенты, состояние оптимизатора (для Adam — примерно двойной объём от весов) и активации. Если эта сумма не помещается в VRAM, обучение не начнётся; если помещается впритык, нагрузки на пределе проваливаются в свопинг, и эффективность GPU рушится.

Поэтому выбор GPU — это вопрос памяти раньше, чем вычислительной мощности: среднескоростная карта с правильным VRAM всегда эффективнее быстрой карты с недостаточным VRAM.

02

Реалистичные потребности по размеру модели

Значения ниже — практические диапазоны для обучения в bf16 и типичных длин последовательности; с ростом длины последовательности и batch size вы приближаетесь к верхней границе.

  • Полное дообучение 7B: веса ~14 ГБ + состояние Adam ~56 ГБ + градиенты ~14 ГБ → на практике 2 × 80 ГБ комфортно, 1 × 80 ГБ впритык.
  • Полное дообучение 13B: рекомендуется 2 × 80 ГБ.
  • Полное дообучение 34B: требуется класс 4 × 80 ГБ.
  • Полное дообучение 70B: класс 8 × 80 ГБ (A100/H100) и многокартный параллелизм обязательны.
  • LoRA/QLoRA: модель 7–13B возможна на одной карте 24–48 ГБ; для 70B QLoRA на одной карте 80 ГБ — распространённая практика.

03

Бюджет с LoRA и квантованием

LoRA замораживает матрицы весов и обучает только небольшие матрицы обновления низкого ранга; доля обучаемых параметров обычно в диапазоне 0,1–1%. Это устраняет большую часть состояния оптимизатора и памяти градиентов.

QLoRA идёт на шаг дальше: базовая модель квантуется в 4 бита (NF4), а вычисления избирательно выполняются с повышением до 16 бит. Это стандарт дообучения моделей класса 70B на одной карте для относительно небольших команд; потеря качества зависит от задачи и качества данных и всегда должна измеряться.

04

Влияние batch size и длины последовательности

Память активаций растёт примерно линейно с длиной последовательности, а в слоях внимания — квадратично. Увеличение последовательности с 2048 до 8192 токенов заметно повышает память обучения, не меняя весов модели.

Эффективный batch size = batch на карту × шаги накопления градиентов. Когда память не помещается, сначала снижайте длину последовательности и batch на карту, затем возвращайтесь к целевому эффективному batch через накопление градиентов.

05

Практические рекомендации по выбору

  • Класс 24 ГБ (напр. RTX 4090): дообучение 7–13B с QLoRA; идеально для быстрых экспериментов и цикла разработки.
  • Класс 48 ГБ (напр. L40S/A6000): полное дообучение 7B или QLoRA 13–34B.
  • Класс 80 ГБ (A100/H100): QLoRA 70B, полное дообучение 13B; стандарт на ноду для многокартных задач.
  • Если нужно мультикартное обучение, арендуйте не карты по отдельности, а одну ноду/кластер целиком; NVLink и малозадержная сеть критичны.

06

Чек-лист

  • Количество параметров модели и целевой метод (полное / LoRA / QLoRA).
  • Максимальная длина последовательности и целевой эффективный batch size.
  • Размер датасета и потребность в постоянном хранении на диске.
  • Измерьте реальное использование памяти короткой тестовой арендой; проверьте расчётную таблицу в поле.

Статьи на этой странице — примерный контент; до подключения CMS они помечены как неопубликованные черновики.