Unsloth: дообучение LLM на одной видеокарте
Unsloth ускоряет LoRA/QLoRA дообучение за счёт переписанных Triton-ядер: заявляет ~2x скорости и ~70% меньше VRAM без потери качества. 7B-модель влезает в 8 ГБ.
Стандартный HF-пайплайн QLoRA на 7B-модели с трудом влезает в 24 ГБ видеопамяти и учится медленно. Итерация превращается в ожидание: поменял гиперпараметр - иди пить кофе. Unsloth переписывает attention и cross-entropy на рукописные Triton-ядра, убирая лишние чтения и записи памяти. Заявленный эффект - примерно в 2 раза быстрее и около 70% меньше VRAM по сравнению со стандартным HF + QLoRA пайплайном. Без потери качества, по словам разработчиков.
Как это работает
pip install unsloth - и вы в привычном TRL/SFT-цикле, только быстрее. FastLanguageModel.from_pretrained с load_in_4bit=True поднимает модель для QLoRA. Поддерживаются LoRA и QLoRA, SFT, RL-методы семейства GRPO, vision-модели, TTS. Отдельный бонус - прямой экспорт в GGUF: дообучили, сконвертировали, скормили Ollama или llama.cpp. Никаких промежуточных конвертеров. Для старта есть поддерживаемые ноутбуки под Colab и Kaggle: можно начать вообще без своей GPU, на бесплатном тарифе.
Скорость и память
Порог входа - первое, что меняет дело. 7B QLoRA реально учится на 8 ГБ VRAM, то есть на потребительской карте, которая уже стоит в системнике. Второе - скорость итерации: часы превращаются в минуты на небольших датасетах. Это меняет сам процесс - гиперпараметры начинают перебирать, а не гадать. Ядро бесплатно под Apache-2.0, так что платите только за электричество.
Подводные камни
"2x/70%" - собственные замеры разработчиков. Они зависят от модели, GPU и конфига - воспринимайте как класс улучшения, а не как контракт. Это в первую очередь NVIDIA-инструмент: поддержка AMD и Intel существует, но свою железку сверьте с докой, прежде чем рассчитывать. Платный Pro-тариф добавляет multi-GPU, full-parameter обучение и ускоренные ядра: бесплатное ядро - про одну GPU. Apple Silicon не поддерживается вообще.
Кому подходит
Дообучение LoRA/QLoRA на одной GPU: свои данные, свой стиль, свой домен. Распределённое обучение на кластере - это территория DeepSpeed. Managed-облако без своей GPU - смотрите в сторону Tinker. Полный файнтюн 70B+ - тоже не сюда. А если тюните на одной карте и упираетесь в память или время - начните с Unsloth, прежде чем арендовать вторую.