LLM от NVIDIA ускоряет Diffusion в 2,42 раза без дообучения: представлен Nemotron TwoTower

Nvidia Llm диффузия Twotower Nemotron инференс techtimes.com

Модель NVIDIA Nemotron TwoTower на основе диффузии достигает 2,42-кратного увеличения пропускной способности LLM без полного переобучения, сохраняя 98,7% качества авторегрессионного базиса путем разделения моделирования контекста и шумоподавления токенов на две специализированные башни, построенные на одном замороженном базисе. Веса и код обучения открыты.

Исследовательская группа NVIDIA в среду опубликовала открытые веса и код обучения для Nemotron-Labs-TwoTower — дискретной диффузионной языковой модели, которая генерирует текст в 2,42 раза быстрее стандартного авторегрессионного декодирования, сохраняя при этом 98,7 процента качества по базовым тестам, — и делает это без необходимости полного повторного предварительного обучения.

Второй факт важен не меньше, чем показатель пропускной способности. Доминирующей статьей расходов в разработке больших языковых моделей сегодня является предварительное обучение в масштабе — десятки триллионов токенов и месяцы времени работы GPU, необходимые для создания способной базовой модели с нуля. TwoTower демонстрирует, что лаборатория, располагающая существующим авторегрессионным чекпоинтом, может добавить к нему параллельную генерацию на основе диффузии, обучив лишь вторую сеть шумоподавления на малой части исходного бюджета данных. Архитектура не отбрасывает то, что модель уже выучила; она надстраивает возможность параллельной генерации поверх этого. Это смещает экономику перехода к диффузионным ЛМ с обрыва на плавный подъем.

Веса доступны в коллекции NVIDIA Nemotron TwoTower на Hugging Face под лицензией NVIDIA Nemotron Open Model License, которая разрешает коммерческое использование.

Одно узкое место, две башни

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

Дискретные диффузионные языковые модели решают эту проблему, заменяя фиксацию токенов по одному итеративным шумоподавлением блоков. Вместо выдачи токенов по порядку, диффузионная ЛМ начинает с блока маскированных или зашумленных позиций и уточняет их все параллельно за несколько шагов, фиксируя уверенные токены на ранних этапах и продолжая уточнять неуверенные. Результатом является фиксация нескольких токенов за один прямой проход, что и обеспечивает ускорение по времени работы по сравнению с авторегрессионным методом.

Однако предыдущие диффузионные ЛМ возлагали на одну сеть две конфликтующие задачи одновременно: представлять чистые контекстные токены, которые уже были зафиксированы, и шумоподавлять генерируемый зашумленный блок. Принуждение одной сети выполнять обе эти функции одновременно ограничивало ее эффективность в каждой из них.

Основной вклад TwoTower заключается в четком разделении этих обязанностей на две отдельные сети, построенные на одном и том же базисе: замороженная авторегрессионная контекстная башня и обученная диффузионная башня шумоподавления.

Как на самом деле работает архитектура

Обе башни имеют общую основу: базис Nemotron-3-Nano-30B-A3B — гибридная модель с 30 миллиардами параметров, которая чередует три типа слоев из 52 в общей сложности — 23 слоя Mamba-2, 6 слоев самовнимания и 23 слоя Mixture-of-Experts. Во время инференса только часть этих параметров активна для любого данного токена: приблизительно 3 миллиарда активных параметров на токен на башню, выбираемых механизмом маршрутизации среди 128 доступных экспертов, 6 из которых активируются на токен вместе с 2 общими экспертами.

Первая башня — контекстная AR-башня — работает точно так же, как стандартная авторегрессионная модель. Она обрабатывает промпт и все зафиксированные выходные токены причинно, слева направо, поддерживая многократно используемый ключ-значение кэш для слоев внимания и передавая скрытое состояние слоев Mamba-2 через позиции токенов. Она остается полностью замороженной на протяжении всего процесса обучения TwoTower.

Вторая башня — диффузионный шумоподавитель — это место, где происходит обучение. Она принимает зашумленный блок генерируемых токенов и уточняет их с помощью маскированной диффузионной цели, с двумя критическими архитектурными модификациями. Внутри каждого зашумленного блока она использует двунаправленное внимание — это означает, что каждая маскированная позиция может одновременно обращаться ко всем другим позициям в блоке, а не только смотреть влево. Между блоками и к промпту она остается причинной. И на каждом слое шумоподавитель получает обусловленность от соответствующего слоя замороженной контекстной башни через перекрестное внимание, наследуя богатое представление предыдущего контекста от AR-башни.

Небольшой дополнительный механизм — адаптивная нормализация слоев, обусловленная диффузионным временным шагом, добавляющий шумоподавителю примерно 1,5 миллиона параметров — позволяет каждому слою настраивать свое поведение в зависимости от того, насколько далеко в процессе шумоподавления находится текущий шаг. Полные архитектурные детали представлены в статье arXiv 2606.26493.

Практический результат: вместо фиксации одного токена за раз последовательно, TwoTower фиксирует несколько токенов за шаг уточнения в начале декодирования, что и является механизмом, стоящим за ускорением работы в 2,42 раза по сравнению с AR-базовым уровнем.

Стоимость обучения, которая делает это возможным

Башня шумоподавления обучалась на приблизительно 2,1 триллиона токенов. Это значимое число в двух направлениях. Оно достаточно велико, чтобы восстановить большую часть качества базиса в режиме не последовательной генерации. И оно составляет примерно 8 процентов от 25 триллионов токенов, использованных для предварительного обучения базовой модели.

Практический вывод: организации, которые уже инвестировали в предварительное обучение большой авторегрессионной модели, не нужно начинать все сначала, чтобы получить преимущества пропускной способности, основанные на диффузии. В разделе методов статьи прямо указано, что TwoTower — это общий подход, применимый к любой предварительно обученной авторегрессионной языковой модели, а выпущенный код обучения поддерживает адаптацию этого метода к другим базисным моделям.

Что на самом деле показывают тесты

Компромисс между качеством и пропускной способностью контролируется параметром уверенности $\gamma$, который определяет, сколько токенов фиксируется за шаг уточнения. При стандартной рабочей точке — пороге уверенности $\gamma = 0.8$ с размером блока 16, измеренном на двух GPU H100 в BF16, что дает показатель пропускной способности 2,42× — совокупное качество по тестам на знания, рассуждения и язык остается в пределах 1,3 процентных пункта от AR-базового уровня.

Результаты не однородны по типам задач, и разрывы соответствуют тому, что исследования диффузионных языковых моделей задокументировали. Задачи, которые требуют двунаправленного контекста и глобальной связности — здравый смысл и многоязычная оценка — восстанавливаются до уровня AR-базового уровня или немного превышают его. Задачи, которые зависят от строгого причинно-следственного рассуждения слева направо, затрагиваются сильнее: HumanEval, бенчмарк OpenAI из 164 задач по генерации кода на Python, падает с 79,27 до 75,58. Математические тесты показывают аналогичную умеренную деградацию.

Это известный недостаток параллельной блочной генерации: когда правильное значение токена сильно зависит от точного значения токенов, которые немедленно последуют за ним в том же блоке — как это часто бывает в коде и математике — двунаправленное шумоподавление внутри блока не является полной заменой строгому причинному обусловливанию. Компромисс реален и прозрачно отражен в статье.

Преодоление пропускной способности в 3× возможно за счет увеличения количества токенов, фиксируемых за шаг, но это сопряжено с большими потерями качества. Показатель 2,42× представляет собой сбалансированную стандартную рабочую точку.

Что требуется для запуска этой модели

Выпущенный чекпоинт содержит обе башни, что составляет примерно 60 миллиардов параметров и около 126 гигабайт памяти. Полное двухбашенное диффузионное декодирование требует два GPU с примерно 59 гигабайтами каждый в точности BF16 — как правило, два серверных GPU по 80 гигабайт, таких как NVIDIA H100 или A100.

Для команд без двухпроцессорной установки тот же чекпоинт поддерживает два резервных режима: режим имитации AR, предназначенный для тестирования совместимости и отладки, и стандартное AR-декодирование, которое работает на одном 80-гигабайтном GPU и соответствует производительности исходной авторегрессионной модели. Все три режима загружаются из одного и того же набора весов; переключение между ними требует только изменения конфигурации, а не другого файла модели. Модель загружается через стандартную библиотеку Hugging Face Transformers, при этом NVIDIA предоставляет вспомогательную функцию place_towers_on_devices для распределения двух башен по устройствам GPU.

Чем она пока не является

Выпущенный чекпоинт является базовой моделью. Она не прошла настройку на инструкции (instruction-tuned) и не была выровнена для использования в чате, в качестве помощника по кодированию или для безопасного развертывания. Создание производственной чат-модели или помощника по кодированию на основе TwoTower потребует последующих этапов тонкой настройки и выравнивания безопасности — той же работы, которая превратила базис Nemotron в варианты Nemotron, следующие инструкциям.

Статус невыровненной базовой модели является стандартной отправной точкой для подобных открытых исследовательских релизов и не умаляет архитектурного результата. Но он определяет разрыв между вкладом статьи — продемонстрированным подходом к высокопроизводительной диффузионной генерации на большом гибридном базисе — и развертываемым продуктом.

Авторы статьи — Фитсум Реда, Джон Камалу, Роджер Валлеф, Мостофа Патвары, Мохаммад Шоейби и Брайан Катанзаро — выпустили код обучения вместе с весами, предоставив другим исследовательским группам материалы, необходимые для адаптации подхода TwoTower к различным базовым моделям.


Часто задаваемые вопросы

Что такое диффузионная языковая модель и чем она отличается от стандартных LLM?

Стандартные большие языковые модели генерируют текст авторегрессионно, предсказывая один токен за раз слева направо. Диффузионная языковая модель заменяет этот последовательный процесс итеративным шумоподавлением: она начинает с блока маскированных или зашумленных позиций токенов и уточняет их все параллельно за несколько шагов, фиксируя уверенные предсказания на ранних этапах. Эта параллельная генерация позволяет диффузионным ЛМ производить несколько токенов за один прямой проход и достигать существенно более высокой пропускной способности, чем токен-за-токеном авторегрессионная генерация, ценой некоторой точности на задачах, требующих строгого последовательного рассуждения.

Почему диффузионные модели показывают худшие результаты на задачах, связанных с кодом и математикой?

Генерация кода и математики часто требует строгого последовательного обусловливания — правильное значение токена на позиции N критически зависит от того, что именно было зафиксировано на позициях N-1 и N-2. Когда диффузионная модель уточняет блок токенов параллельно, она использует двунаправленное внимание внутри блока, что позволяет каждому токену информировать все остальные токены. Этот двунаправленный контекст мощный для задач с требованиями к глобальной связности, но он не является полной заменой строгому обусловливанию слева направо, когда последовательности токенов жестко упорядочены. Для TwoTower это проявляется как падение на 3,7 пункта в HumanEval в стандартной рабочей точке — реальное ограничение, которое статья прозрачно отражает.

Может ли подход TwoTower работать с языковыми моделями, отличными от Nemotron?

По словам авторов статьи, да. В статье прямо указано, что TwoTower — это общий подход, применимый к любой предварительно обученной авторегрессионной языковой модели. Ключевое требование состоит в том, чтобы веса базовой модели могли быть дублированы в две башни: одна замораживается для моделирования контекста, другая обучается для шумоподавления. NVIDIA выпустила код обучения вместе с весами, который поддерживает адаптацию метода к другим базовым моделям.

Какое оборудование требуется Nemotron TwoTower для полного диффузионного декодирования?

Полный двухбашенный диффузионный режим требует два GPU с примерно 59 гигабайтами каждый в точности BF16 — как правило, два серверных GPU по 80 гигабайт, таких как NVIDIA H100 или A100. Тот же чекпоинт также поддерживает AR-декодирование на одном 80-гигабайтном GPU, предоставляя командам без двухпроцессорных установок доступ к модели в авторегрессионном режиме, в то время как полная диффузионная конфигурация остается рабочей нагрузкой для двух GPU.

Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.

Похожие новости: