Файнтюн Qwen2.5-7B на LoRA жрёт всю память, как влезть в 24гб 3090

Рейтинг: 20.8% · 3 голосов
Machine learning и deep learning: обучение и дообучение моделей, датасеты, PyTorch, TensorFlow, эксперименты, метрики, MLOps и аналитика данных.
Ответить
Аватара пользователя
partha
Сообщения: 16
Зарегистрирован: 11 май 2026, 08:40

Файнтюн Qwen2.5-7B на LoRA жрёт всю память, как влезть в 24гб 3090

Сообщение partha »

Файнтюн Qwen2.5-7B на LoRA не влезает в 24гб видеопамяти на 3090, ловлю CUDA out of memory сразу на первом шаге. Датасет инструкций примерно 40к примеров, max_seq_len поставил 2048. Запускаю через trl SFTTrainer, bf16, rank 16. Оно отжирает все 24 гига и падает. Что крутить чтобы влезть, кроме как урезать длину до 512? У кого реально заводилось на одной 3090, поделитесь конфигом.
👍3 ❤️ 🔥 😄 🤔
✔ Лучший ответ сформирован автоматически — nerd_max
короче собрал рабочий конфиг на своей 3090, делюсь чтобы тему закрыть. Qwen2.5-7B-Instruct, qlora 4bit nf4 + double quant, lora rank 32 alpha 64 dropout 0.05, target все линейные проекции включая mlp. gradient_checkpointing True, use_reentrant False (иначе ворнинги и иногда тише течёт память). optim paged_adamw_8bit, lr 1e-4 косинус с warmup 3%. per_device_batch 1, grad_accum 16, итого эффективны…
Перейти к ответу →
Аватара пользователя
torch123
Сообщения: 2
Зарегистрирован: 19 май 2026, 14:33

Re: Файнтюн Qwen2.5-7B на LoRA жрёт всю память, как влезть в 24гб 3090

Сообщение torch123 »

первое и главное, ты градиенты по optimizer чем считаешь? если adamw обычный, то он сам по себе на 7B сжирает кучу. ставь paged_adamw_8bit из bitsandbytes, сразу полегчает. и gradient_checkpointing включи, без него 2048 контекст ты не утянешь.
👍 ❤️ 🔥1 😄 🤔
Аватара пользователя
lena87
Сообщения: 18
Зарегистрирован: 11 май 2026, 04:24

Re: Файнтюн Qwen2.5-7B на LoRA жрёт всю память, как влезть в 24гб 3090

Сообщение lena87 »

qlora тебе в руки. грузи базу в 4bit через bnb, load_in_4bit=True, nf4, double_quant. на 3090 7B в qlora влезает с запасом даже на 4096 если checkpointing включён. у меня крутится 7B на 4090 при batch 4 и seq 2048, занимает 19-20гб. на 3090 поставь batch 1 и копи градиенты.
👍 ❤️1 🔥 😄 🤔1
Аватара пользователя
android_roman
Сообщения: 45
Зарегистрирован: 11 май 2026, 05:31

Re: Файнтюн Qwen2.5-7B на LoRA жрёт всю память, как влезть в 24гб 3090

Сообщение android_roman »

partha писал(а):max_seq_len поставил 2048
а ты уверен что тебе реально нужно 2048 на всех примерах? посчитай распределение длин токенов в датасете. у меня в инструкциях 90% укладывалось в 768, и я просто отрезал хвост в 1% длинных. эффект на качество ноль, а памяти и времени экономия огромная. народ зачем-то всегда лепит круглые степени двойки не глядя.
👍2 ❤️ 🔥 😄 🤔
Аватара пользователя
jpearce
Сообщения: 47
Зарегистрирован: 11 май 2026, 23:34

Re: Файнтюн Qwen2.5-7B на LoRA жрёт всю память, как влезть в 24гб 3090

Сообщение jpearce »

подниму, тоже мучаюсь
👍 ❤️ 🔥2 😄 🤔
Аватара пользователя
egor13
Сообщения: 8
Зарегистрирован: 11 май 2026, 12:43

Re: Файнтюн Qwen2.5-7B на LoRA жрёт всю память, как влезть в 24гб 3090

Сообщение egor13 »

lena87 писал(а):на 3090 7B в qlora влезает с запасом даже на 4096
влезать то влезает, но ты учти что qlora это не бесплатно по качеству. на ровном SFT разница с честным bf16 LoRA небольшая, согласен. но если у тебя датасет специфичный и ты гонишь много эпох, 4bit база местами начинает чудить, особенно на редких токенах и числах. я бы для прода честный lora в bf16 предпочёл, если задача позволяет. для эксперимента qlora ок.
👍2 ❤️1 🔥 😄 🤔1
Аватара пользователя
nerd_max
Сообщения: 34
Зарегистрирован: 11 май 2026, 14:33

Re: Файнтюн Qwen2.5-7B на LoRA жрёт всю память, как влезть в 24гб 3090

Сообщение nerd_max »

✔ Лучший ответ — сформирован автоматически
короче собрал рабочий конфиг на своей 3090, делюсь чтобы тему закрыть. Qwen2.5-7B-Instruct, qlora 4bit nf4 + double quant, lora rank 32 alpha 64 dropout 0.05, target все линейные проекции включая mlp. gradient_checkpointing True, use_reentrant False (иначе ворнинги и иногда тише течёт память). optim paged_adamw_8bit, lr 1e-4 косинус с warmup 3%. per_device_batch 1, grad_accum 16, итого эффективный батч 16. max_seq_len 1536, я померил датасет и больше реально не надо. bf16. Занимает примерно 21-22гб, оставляет воздух чтобы не падать на длинных примерах. 40к примеров 3 эпохи прогонялись часов за 6. flash_attention_2 поставь обязательно, без него и медленнее и память хуже. eval отключи во время трейна или делай раз в эпоху, иначе при eval подскакивает память и роняет. вот ровно на этом стабильно без OOM.
👍1 ❤️ 🔥 😄 🤔
Аватара пользователя
Kutz
Сообщения: 71
Зарегистрирован: 16 май 2026, 02:21

Re: Файнтюн Qwen2.5-7B на LoRA жрёт всю память, как влезть в 24гб 3090

Сообщение Kutz »

@torch123, flash attention 2 на тройке ставится норм? у меня на 3090 sm86 вечно сборка падает на компиляции. собирал из исходников или колесо нашёл готовое?
👍 ❤️ 🔥 😄 🤔
Ответить
Поделиться темой: ✈ Telegram VK

Вернуться в «Машинное обучение и Data Science»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость