NVIDIA NeMo AutoModel ускоряет файнтюнинг MoE-трансформеров в 3,7 раза
NVIDIA выпустила NeMo AutoModel — надстройку над HuggingFace Transformers v5, которая ускоряет обучение MoE-моделей в 3,4-3,7 раза и экономит до 32% видеопамяти. Требуется лишь одна строчка импорта, API остаётся совместимым с HuggingFace. Библиотека добавляет Expert Parallelism, оптимизированные ядра и перекрытие коммуникаций с вычислениями.
Файнтюнинг MoE-моделей — узкое место индустрии: они эффективнее плотных, но сложнее в обучении. NeMo AutoModel снимает эту боль для open-source экосистемы, не заставляя переписывать код.
NVIDIA ускорила файнтюнинг трансформеров без смены API
NVIDIA представила NeMo AutoModel — открытую библиотеку для обучения больших языковых моделей, которая встраивается поверх HuggingFace Transformers v5 и обеспечивает 3,4-3,7-кратное ускорение файнтюнинга MoE-моделей при экономии видеопамяти на 29-32%.
Зачем это нужно
Mixture-of-Experts (MoE) — доминирующая архитектура для frontier-моделей, но маршрутизация токенов между сотнями экспертов, шардинг весов и перекрытие коммуникаций с вычислениями требуют специальной инфраструктуры. Transformers v5 заложил базу: поддержку экспертов, динамическую загрузку весов, распределённое выполнение. NeMo AutoModel надстраивается сверху, добавляя:
- Expert Parallelism (EP) — распределение экспертов по GPU
- DeepEP — перекрытие коммуникаций с вычислениями экспертов
- TransformerEngine kernels — оптимизированные ядра для внимания и линейных слоёв
Как это работает
NeMoAutoModelForCausalLM наследует AutoModelForCausalLM, поэтому весь существующий код остаётся рабочим. Для популярных архитектур (Qwen3, NVIDIA Nemotron, DeepSeek V3) библиотека поставляет hand-tuned реализации, для остальных откатывается на HF с патчингом Liger-ядер.
Достаточно одной строчки импорта:
from nemo_automodel import NeMoAutoModelForCausalLM
Для мультиузловой тренировки добавляется конфигурация distributed mesh:
dist_setup = create_distributed_setup_from_config({
"strategy": "fsdp2",
"ep_size": 8,
})
model = NeMoAutoModelForCausalLM.from_pretrained(
"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B-BF16",
distributed_setup=dist_setup,
)
Результаты
Nemotron 3 Ultra 550B A55B (16 нод, 128x H100): Transformers v5 просто не влезает в память на этом масштабе, NeMo AutoModel с EP позволяет запустить полный файнтюнинг.
30B MoE-модели (1 нода, 8x H100): ускорение в 3,4-3,7 раза против Transformers v5, экономия памяти 29-32%.
Библиотека использует обратимую конвертацию весов из v5 — фокусируется на переиспользуемых операциях вместо костылей под каждую модель. save_pretrained() выдаёт стандартные HF-чекпоинты, которые можно грузить в vLLM и SGLang.
Ключевые выводы
- NeMo AutoModel ускоряет файнтюнинг MoE-моделей в 3,4-3,7 раза с экономией 29-32% видеопамяти при полной совместимости с HuggingFace API
- Библиотека делает возможным полный файнтюнинг 550B-модели на 16 нодах (128 GPU), который в нативном Transformers v5 не влезает в память
- Интеграция достигается одной строкой импорта без изменения существующего кода — AutoModel наследует стандартные классы HF
- DeepEP перекрывает коммуникации с вычислениями экспертов — ключевая оптимизация, которой пока нет в Transformers v5
- Обратимая конвертация весов v5 позволяет NeMo AutoModel фокусироваться на переиспользуемых оптимизациях, а не поддержке форматов чекпоинтов
Автор: Анна Мельникова · Источник: HuggingFace Blog
Это правильная инженерия: NVIDIA не форкает HuggingFace, а надстраивается чистым наследованием. Одна строка импорта даёт трёхкратное ускорение и треть сэкономленной памяти — и это работает прямо сейчас, без переписывания пайплайнов.
Особенно впечатляет демонстрация 550B Nemotron Ultra на 16 нодах: нативный Transformers v5 туда просто не помещается, а AutoModel с Expert Parallelism делает полный файнтюнинг реальностью. Для практиков это значит, что фронтирные MoE перестают быть монополией closed-source провайдеров — open-source инфраструктура их догоняет. Правда, пока это работа NVIDIA для своего железа, но интеграция в экосистему HF делает оптимизации доступными всем.
Комментарии