Большие языковые модели Granite 4.2: как они созданы
Авторы: команда Granite, IBM
Кратко: Granite 4.2 — наше первое семейство плотных LLM-моделей рассуждений с архитектурой только на основе декодера, выпущенное в трёх размерах: 3B, 8B и 30B. Каждая модель предварительно обучается с нуля примерно на 15 трлн токенов по пятифазной стратегии, расширяющей контекстное окно до 512 тыс. токенов, затем проходит supervised fine-tuning на данных с пошаговыми рассуждениями, рассуждениями и траекториями действий агентов, а после этого — постобучение с помощью многоэтапного конвейера обучения с подкреплением. Этот конвейер включает агентное RL, в рамках которого модели 8B и 30B учатся работать с инструментами внутри реальных изолированных сред. Все модели имеют переключатель режима рассуждений / без рассуждений, режим рассуждений с низкими усилиями, расходующий небольшой бюджет рассуждений на простые вопросы, и нативный вызов инструментов. Все модели Granite 4.2 выпущены под лицензией Apache 2.0.
Ссылки:
Обзор
Granite 4.2 — ориентированный на рассуждения релиз семейства языковых моделей Granite. Предыдущие версии Granite были сильными ассистентами, хорошо следовавшими инструкциям; Granite 4.2 добавляет явные рассуждения. Каждая модель может генерировать пошаговое рассуждение перед ответом и работать в режиме рассуждений или без рассуждений в зависимости от того, насколько тщательного обдумывания требует задача. Режим низких усилий занимает промежуточное положение: на простые вопросы выделяется небольшой бюджет рассуждений.
Три размера (3B, 8B и 30B) используют одинаковую архитектуру и один и тот же конвейер обучения (предобучение с нуля, SFT, затем многоэтапное RL), каждый в своём масштабе. Все три модели хорошо рассуждают и следуют инструкциям. Наиболее заметное различие в возможностях проявляется на этапе постобучения. Модели 8B и 30B дополнительно проходят этап агентного RL, который учит их работать как агенты: вызывать инструменты, редактировать и запускать код, управлять терминалом и искать информацию в интернете внутри реальных сред. Все модели поддерживают нативный вызов инструментов. При работе через совместимый с OpenAI endpoint (например, с помощью vLLM) модель выдаёт вызовы инструментов в формате вызова функций OpenAI и подключается к агентным системам без дополнительного связующего кода. Granite 4.2 также поддерживается в SGLang; готовый рецепт запуска приведён в кулинарной книге SGLang.
В оставшейся части статьи разбирается процесс создания: архитектура, предварительное обучение, supervised fine-tuning, многоэтапный конвейер RL и результаты.
Архитектура модели
Модели Granite 4.2 построены на плотной трансформерной архитектуре только на основе декодера со следующими основными компонентами:
- Внимание: Grouped Query Attention (GQA) с 40 головами внимания и 8 KV-головами
- Позиционные эмбеддинги: Rotary Position Embedding (RoPE) с θ = 10 000 000
- Прямое распространение: MLP с активацией SwiGLU
- Нормализация: RMSNorm (ε = 1e-5)
- Эмбеддинги: отдельные входные и выходные эмбеддинги (не связанные)
- Точность: bfloat16
| Компонент | Плотная 3B | Плотная 8B | Плотная 30B |
|---|---|---|---|
| Размер эмбеддинга | 2560 | 4096 | 4096 |
| Количество слоёв | 40 | 40 | 64 |
| Размер головы внимания | 64 | 128 | 128 |
| Количество голов внимания | 40 | 32 | 32 |
| Количество KV-голов | 8 | 8 | 8 |
| Скрытый размер MLP | 8192 | 12800 | 32768 |
| Активация MLP | SwiGLU | SwiGLU | SwiGLU |
| Длина последовательности | 131072 | 131072 | 131072 |
| Позиционные эмбеддинги | RoPE | RoPE | RoPE |
| # параметров | 3B | 8B | 30B |
Предварительное обучение
Granite 4.2 обучается с нуля примерно на 15 трлн токенов по пятифазной стратегии. Фазы 1–2 посвящены базовому предварительному обучению, фазы 3–4 выполняют промежуточное обучение с постепенным переходом к данным более высокого качества, а фаза 5 вводит обучение для длинного контекста и расширяет контекстное окно до 512 тыс. токенов. В каждой фазе используется собственная смесь данных и расписание скорости обучения, постепенно смещающееся от широких веб-данных к более отобранным высококачественным источникам.
Рецепт предварительного обучения в основном повторяет предыдущую версию; подробное описание смеси данных, расписания фаз и расширения длинного контекста см. в статье о Granite 4.1.
SFT: подготовка данных и контроль качества
Supervised fine-tuning (SFT) превращает базовую модель в надёжного ассистента, способного следовать инструкциям, рассуждать и использовать инструменты. Смесь данных SFT объединяет агентные (31,6%) и неагентные (68,4%) данные — всего примерно 7,2 млн образцов, или около 100 млрд токенов, из которых примерно 65 млрд используются для обучения.
Агентный корпус охватывает широкий спектр областей, включая разработку программного обеспечения (SWE, 69%), вызов инструментов (12,1%), работу с терминалом (8,0%), математику (3,5%), поиск (0,8%) и действия (0,2%). Эти образцы и траектории создаются с помощью разнообразных агентных каркасов и систем, включая OpenHands, OpenCode, Terminus-2, SWE-agent, OpenResearcher, MiniSWE, OpenSeeker, EnvScaler, Gemini CLI, Hermes, Codex и Goose. Агентные данные объединяют образцы из наборов данных с открытым исходным кодом и наших собственных синтетически сгенерированных RL-сред, охватывая различные сочетания агентов и систем.
Неагентный корпус состоит из нескольких основных категорий: следование инструкциям (18,8%), программирование (18,8%), математика (14,6%), многоязычные данные (7,0%), естественные науки (5,4%), рассуждения (3,0%) и безопасность (0,8%).
Контроль качества данных
До попадания образца в итоговую смесь SFT мы применяем несколько этапов контроля качества. Сначала данные из разных источников нормализуются и преобразуются в единый формат OpenAI Chat, благодаря чему структура диалогов и взаимодействие с инструментами становятся одинаковыми во всех наборах данных и системах.
Затем мы используем GPT-OSS-120B и Gemma 4 в качестве судей на базе LLM для оценки качества образцов. Образцы с низкими оценками удаляются, как и образцы, содержащие галлюцинации или выдуманную информацию, некорректные взаимодействия с инструментами либо вызовы функций, не определённых в соответствующем списке инструментов. Кроме того, при необходимости применяются целевые эвристические правила для отдельных наборов данных, чтобы дополнительно повысить качество и устранить известные источники шума.
Наконец, мы выполняем локальную и глобальную дедупликацию. Дедупликация основана на хешах SHA-256, вычисленных по совокупности полей tools и messages, что позволяет удалять дубликаты как внутри отдельных источников данных, так и во всей смеси SFT.
Параметры обучения SFT
Сначала весь корпус перемешивается глобально, чтобы уменьшить влияние порядка и обеспечить хорошее смешивание образцов из разных областей во время обучения. Затем перемешанный корпус разбивается на фрагменты .parquet одинакового размера, которые токенизируются с помощью токенизатора и шаблона чата модели и подготавливаются для крупномасштабного распределённого обучения.
Перед запуском финальных крупномасштабных прогонов мы настраиваем гиперпараметры на репрезентативных конфигурациях, перебирая расписания скорости обучения, начальные скорости обучения и коэффициенты разогрева, чтобы найти настройки, стабильно работающие для моделей разных размеров. Итоговая конфигурация обучения приведена ниже:
| Параметр | Значение |
|---|---|
| Вычислительные ресурсы | 32–128 узлов (в зависимости от размера модели), 4× Grace/GB200 на узел |
| Длина последовательности (упакованной) | 131 072 (128K) |
| Глобальный размер пакета | 128 |
| Скорость обучения | 1.0e-5, постоянная после разогрева; 3.0e-6 для фазы 2 |
| Разогрев LR | 2,5% от train_iters |
| Продолжительность обучения | ~2 эпохи |
| Параллелизм | TP=2, PP=1, CP=4 или CP=2 |
Фаза 2 SFT для модели 30B
Для модели 30B мы дополнительно выполняем второй этап SFT, специально ориентированный на агентное программирование. На этом этапе агентные данные, SWE-данные и данные по программированию увеличиваются в выборке, чтобы усилить их вклад в распределение обучения, а примерно 16% смеси сохраняется в качестве повторных данных из исходного корпуса SFT.
Затем модель 30B дообучается примерно ещё одну эпоху с более низкой скоростью обучения 3.0e-6. Этот целевой второй этап увеличивает представленность агентных траекторий программирования, не отбрасывая возможности, полученные на начальном этапе SFT.
Обучение с подкреплением: многоэтапный конвейер в нескольких средах
После SFT мы применяем многоэтапный конвейер обучения с подкреплением в нескольких средах. Вместо одного прохода RL мы запускаем цепочку специализированных этапов, охватывающих множество сред: математику, программирование, естественные науки, следование инструкциям, использование инструментов и структурированный вывод, а затем разработку программного обеспечения, работу с терминалом и веб-поиск. Каждый этап представляет собой отдельный прогон RL, нацеленный на одну способность и использующий контрольную точку предыдущего этапа в качестве начальной.
Рисунок 1. Поэтапная программа RL. Базовое RL (проверяемые награды + усилители навыков) выполняется для всех размеров; блок агентного RL (SWE → терминал → поиск) — только для 8B и 30B. Все модели завершают обучение с помощью RLHF. Каждый этап представляет собой отдельный прогон GRPO, начинающийся с предыдущей контрольной точки.
Методология обучения
На каждом этапе используется асинхронный GRPO (Group Relative Policy Optimization), поэтому генератор и обучающая часть цикла никогда не блокируют друг друга. Пул рабочих процессов генерации постоянно создаёт ответы и помещает завершённые траектории в общий буфер; когда буфер заполняется на полный шаг, обучающий процесс извлекает пакет, выполняет шаг оптимизатора и передаёт обновлённые параметры рабочим процессам генерации, не приостанавливая их. Обновление может произойти в середине развёртывания, из-за чего одна траектория оказывается собрана из двух соседних версий политики. Мы допускаем это, вместо того чтобы тратить ресурсы на предотвращение: рабочие процессы повторно используют существующий KV-кэш, не пересоздавая его после каждого обновления, а единственная защита — ограничение, не позволяющее им отставать от обучающего процесса более чем на одно обновление. Это ограничивает степень отклонения образца от текущей политики. Оставшееся несоответствие обрабатывается в целевой функции с помощью усечённой выборки по значимости, которая ограничивает отношение логарифмических вероятностей обучения и генерации фиксированным пределом, чтобы небольшое число устаревших токенов не могло доминировать в обновлении.
Преимущества вычисляются относительно группы с использованием исключающего собственного ответа базиса: каждый ответ сравнивается со средней наградой других образцов, сгенерированных для того же запроса, что устраняет необходимость в отдельной ценностной сети. Для конкретики рассмотрим RLVR, первый и самый продолжительный этап: на каждом шаге 256 запросов сопоставляются с 16 сгенерированными ответами для каждого, формируя пакет из 4096 примеров, который обучающий процесс обрабатывает одним шагом оптимизатора до начала следующего развёртывания. На последующих этапах этот механизм сохраняется без изменений, меняются только параметры каждого этапа, приведённые далее.
Конфигурация обучения RL
Во всех этапах конвейера используется общий набор гиперпараметров, что упрощает запуск и сравнение программы обучения. Несколько параметров фиксированы повсеместно:
| Параметр | Значение (общее для этапов) |
|---|---|
| Алгоритм | GRPO (без ценностной сети; преимущества относительно группы) |
| Стек обучения | NeMo-RL (Megatron-Core + vLLM) со средами NeMo-Gym |
| Ограничение отношения (мин. / макс.) | 0.2 / 0.28 |
| Размер микропакета | 1 |
| Параллелизм | тензорный параллелизм 2–4; без конвейерного и контекстного параллелизма |
От этапа к этапу меняется форма каждого запуска: количество запросов и генераций за шаг, длина контекста, наличие агентного цикла и сила возврата к эталонной политике. В таблице ниже приведены точные настройки для цепочки 30B по этапам:
| Этап | Запросов/шаг | Генераций/запрос | Макс. длина последовательности | Ходов развёртывания | KL | LR |
|---|---|---|---|---|---|---|
| RLVR (×3) | 256 | 16 | 64K | 1 | 0 | 5e-7 |
| Усилитель IF | 256 | 16 | 64K | 1 | 0 | 5e-7 |
| Усилитель программирования | 64 | 16 | 64K | 1 | 0.05 | 5e-7 |
| SWE 1 | 64 | 16 | 128K | 1 | 0.01 | 5e-7 |
| SWE 2 | 32 | 16 | 128K | 128 | 0 | 5e-7 |
| Терминал | 8 | 32 | 64K | 64 | 0.01 | 1e-6 |
| Поиск | 32 | 16 | 128K | 64 | 0.01 | 5e-7 |
| RLHF | 128 | 16 | 48K | 1 | 0.05 | 5e-7 |
Параметры показаны для модели 30B. Глобальный размер пакета = запросов/шаг × генераций/запрос (например, 256 × 16 = 4096 для RLVR). В моделях 3B и 8B используется тот же рецепт и гиперпараметры, но меньше этапов (см. раздел «Различия между тремя размерами»); меняется список этапов, а не параметры.
Расписание KL зависит от типа награды: свободное исследование используется там, где награда объективна и проверяема (RLVR и SWE 2 работают с KL 0), а близость к эталонной политике сохраняется там, где цель связана с предпочтениями, безопасностью или узким усилением навыка (RLHF и усилитель программирования используют KL 0,05). Столбец ходов развёртывания показывает, сколько взаимодействий со средой видит сам GRPO за одно развёртывание. Во всех случаях модель обучается на полных траекториях из реальной среды.
Поэтапная программа обучения
Каждый этап представляет собой отдельный запуск RL с единственной целью и собственным сигналом награды. После завершения политика экспортируется в формат Hugging Face и становится базовой моделью для следующего этапа, поэтому конвейер представляет собой последовательность запусков с тёплым стартом:
SFT ─▶ RLVR ─▶ Skill boosters ─▶ SWE agent ─▶ Terminal ─▶ Search ─▶ RLHF
└──────── foundational RL ────────┘ └──────── agentic RL (8B / 30B) ────────┘
Модели 8B и 30B проходят полный путь. Модель 3B использует сокращённый путь: базовое RL и выравнивание без агентного блока.
Сигналы награды
Этап определяется главным образом тем, как он вознаграждается. Во всём конвейере используются три типа награды, и один этап может применять более одного типа:
| Тип награды | Что измеряет | Используется в |
|---|---|---|
| Проверяемая | Точное совпадение, модульные тесты, проверка формата, основанные на правилах проверки эталонных данных | RLVR · усилители · SWE |
| Модель награды / судья LLM | Открытое качество, предпочтения, безопасность, правильность ответа | RLVR · поиск · RLHF |
| Агентный результат | Действительно ли модель решила задачу в реальной среде? | SWE · терминал · поиск |
Проверяемые награды объективны и труднее поддаются обходу, поэтому конвейер использует их на ранних этапах. Награды от судей и на основе предпочтений оценивают открытые качества, которые невозможно выразить одним проверяющим модулем. Награды за агентный результат наиболее разрежены: часто это всего один бит в конце длинной траектории использования инструментов.
Базовое RL: формирование навыков
RLVR: RL с проверяемой наградой
RLVR — базовый этап и самая широкая смесь данных в конвейере: единый смешанный набор, охватывающий множество проверяемых областей.
- Математика: пошаговые рассуждения с проверкой ответа в рамке, а также формальное доказательство в Lean
- Соревновательное программирование: решения проверяются скрытыми тестами в изолированной среде
- STEM / вопросы с множественным выбором по естественным наукам уровня магистратуры и общие знания
- Следование инструкциям: задачи со структурированным выводом и обратными инструкциями
- Вызов инструментов / функций: одношаговое использование инструментов
- Задачи на рассуждение и воздержание от ответа (понимание того, когда следует отказаться)
Для каждого типа задач используется собственный проверяющий модуль, поэтому награда привязана к конкретному примеру. RLVR выполняется два раунда для 3B и 8B и три раунда для 30B. Каждый раунд представляет собой новый запуск с тёплым стартом на перевзвешенной смеси общедоступных и отобранных внутри компании RL-данных.
Усилители навыков: целевые улучшения
После RLVR несколько коротких этапов-усилителей улучшают конкретные способности, которым полезно концентрированное обучение в следующих областях:
- Следование инструкциям (IF): многоходовой чат, inverse-IFEval, структурированный вывод
- Программирование: только соревновательное программирование
Усилители — это небольшие целевые запуски. Небольшой штраф KL удерживает модель близко к её текущему поведению, одновременно подталкивая один навык.
Агентное RL: обучение действиям (8B / 30B)
На агентных этапах модель учится действовать: вызывать инструменты, наблюдать результаты и повторять действия внутри реальной среды, получая награду в зависимости от того, была ли задача действительно решена. Эти этапы имеют одинаковую структуру: многоходовое использование инструментов, реальные (не симулированные) среды, разреженные награды за результат и GRPO с тёплым стартом от контрольной точки после усиления программирования. Они выполняются в порядке: SWE → терминал → поиск.
Рисунок 2. Три среды агентного RL. Каждая объединяет реальную систему и реальную среду с разреженной наградой, зависящей от результата. Модель 3B ни в одной из них не обучается.
- SWE-агент (разработка программного обеспечения). Каждая задача представляет собой реальный репозиторий в собственной изолированной среде. Работая через систему OpenHands, модель читает код, редактирует файлы и запускает набор тестов за множество внутренних ходов. Награда проверяема: проходят ли скрытые тесты? Задачи взяты из открытых наборов данных SWE, и каждый пример поддерживается образом контейнера для отдельного репозитория.
- Терминальный агент (терминал / операции с ОС). Многошаговые задачи в работающей оболочке, выполняемые через систему агентов Harbor / Terminus-2. Модель планирует последовательность команд, наблюдает их вывод и восстанавливается после ошибок. Награда назначается после успешного завершения задачи. Это единственный этап, на котором многоходовой агентный цикл запускается на уровне GRPO; развёртывания могут включать до 64 взаимодействий со средой.
- Поисковый агент (глубокое исследование). Модель отвечает на сложные многошаговые вопросы, используя вызовы инструментов живого веб-поиска внутри цикла браузерного агента: собирает доказательства на разных переходах, рассуждает над ними и формирует ответ. Поскольку правильность здесь носит открытый характер, итоговый ответ оценивается судьёй LLM.
Выравнивание: RLHF
Финальный этап для каждой модели — RLHF для человеческих предпочтений и безопасности. Он оптимизируется по генеративной модели награды (GenRM), учитывающей предпочтения, а также по награде за безопасность, охватывающей устойчивость к джейлбрейкам и уместные отказы. На этом этапе используется самый высокий штраф KL во всём конвейере, что выравнивает тон и безопасность, не разрушая возможности, сформированные на предыдущих этапах. Помимо выравнивания с человеческими предпочтениями и требованиями безопасности, на этом этапе также применяется штраф за длину рассуждений, чтобы не допускать чрезмерно многословного поведения, приобретённого ранее.
Различия между тремя размерами
Метод и инфраструктура одинаковы; различие заключается в том, насколько далеко по лестнице проходит каждая модель.
| Этап | 3B | 8B | 30B |
|---|---|---|---|
| RLVR (проверяемая награда) | ×2 | ×2 | ×3 |
| Усилители навыков | программирование | IF · GPQA · программирование | IF · программирование |
| SWE-агент | — | ✓ | ✓ |
| Терминальный агент | — | ✓ | ✓ |
| Поисковый агент | — | ✓ | ✓ |
| RLHF (предпочтения + безопасность) | ✓ | ✓ | ✓ |
3B — сильная модель базового RL; 8B и 30B дополнительно проходят блок агентного RL и учатся действовать с инструментами в реальных средах.
Инфраструктура агентного ИИ для масштабируемого RL
Обучение с подкреплением в таком масштабе требует инфраструктуры, способной одновременно поддерживать цикл обучения и множество работающих сред. Особенно важно это на агентных этапах, где каждый обучающий пример представляет собой многоходовое развёртывание, редактирующее код, запускающее команды или просматривающее интернет. RL для Granite 4.2 работает на двух компонентах с открытым исходным кодом: NeMo-RL на стороне обучения и NeMo-Gym на стороне развёртывания.
Рисунок 3. Система RL. NeMo-RL управляет циклом GRPO (обучающий бэкенд Megatron-Core, генерация через vLLM и Megatron-Bridge для преобразования весов HF⇄Megatron). NeMo-Gym координирует развёртывания и размещает инструменты, изолированные среды и вызовы наград/проверяющих модулей в виде подключаемых ресурсов.
Распределение обязанностей:
- NeMo-RL (сторона обучения). Megatron-Core — обучающий бэкенд; vLLM генерирует развёртывания; Megatron-Bridge преобразует веса между форматами Megatron и Hugging Face, поэтому каждый этап может экспортировать чистую контрольную точку HF для следующего.
- NeMo-Gym (сторона развёртывания). Он представляет каждую среду как набор ресурсов (проверяющих модулей, инструментов, изолированных сред и моделей награды) с единым интерфейсом. Это точка подключения агентных этапов: здесь присоединяются изолированные среды SWE-репозиториев, терминальная система и инструменты веб-поиска, а для обучающего цикла они выглядят так же, как простой математический проверяющий модуль.
Именно эта унификация делает описанную выше поэтапную программу практичной: основанный на правилах проверяющий модуль усилителя и полноценная изолированная среда SWE предоставляют GRPO одинаковый интерфейс.
Это разделение также физически делает возможным описанный выше асинхронный цикл обучения: генерация и обновления политики работают на отдельных пулах GPU, поэтому дорогостоящая инфраструктура генерации — включая работающие агентные среды — остаётся занятой, а не простаивает во время шагов оптимизатора.
Результаты
Granite 4.2 оценивалась по агентному программированию, общим агентным возможностям и использованию инструментов, рассуждениям, чату и следованию инструкциям, а также работе с длинным контекстом. Полная таблица результатов приведена ниже, за ней следуют графики с основными результатами для моделей разных размеров.
| Задача | Плотная 3B | Плотная 8B | Плотная 30B |
|---|---|---|---|
| Агентные возможности (программирование) | |||
| SWE Bench Multilingual | NA | 30.78 | 41.89 |
| SWE Bench Pro | NA | 19.11 | 33.29 |
| SWE Bench Verified | NA | 47.67 | 57.00 |
| Terminal-Bench 2.1 | NA | 20.56 | 29.24 |
| Агентные возможности (общие) | |||
| τ³-bench | 50.99 | 66.34 | 68.05 |
| BFCL (v4) | 52.41 | 50.29 | 61.39 |
| ProfBench | 32.10 | 41.20 | 42.90 |
| BirdBench | NA | 41.07 | 41.85 |
| GDPval | NA | 1189.00 | 1225.00 |
| Рассуждения | |||
| AIME25 | 78.33 | 86.67 | 89.17 |
| HMMT Feb25 | 66.67 | 78.33 | 89.17 |
| GPQA | 54.80 | 64.14 | 66.41 |
| LiveCodeBench v6 | 69.71 | 73.24 | 75.77 |
| SciCode | 24.11 | 36.09 | 38.76 |
| Чат и следование инструкциям | |||
| MMLU-Pro | 67.84 | 74.04 | 77.60 |
| MMLU-ProX lite (IBM) | 27.78 | 61.06 | 66.64 |
| Arena-Hard-V2 | 34.96 | 65.19 | 67.93 |
| IFBench (prompt) | 74.33 | 79.33 | 74.67 |
| Длинный контекст | |||
| RULER 64K | 67.52 | 80.99 | 89.96 |
| RULER 128K | 55.30 | 71.41 | 81.38 |
Поддерживаемые языки: английский, немецкий, испанский, французский, японский, португальский, арабский, чешский, итальянский, корейский, нидерландский и китайский.
На графиках ниже результаты представлены по отдельным областям возможностей.
Рисунок 4. Рассуждения (pass@1). Баллы стабильно растут с увеличением размера модели в математике (AIME25, HMMT), естественных науках (GPQA) и рассуждениях при программировании (LiveCodeBench, SciCode).
Рисунок 5. Доля успешного решения задач агентным программированием. Блок агентного RL обучается только для 8B и 30B; модель 30B лидирует во всех вариантах SWE-Bench и Terminal-Bench.
Рисунок 6. Общие агентные тесты и тесты использования инструментов для всех трёх размеров.
Квантизация
Мы также выпустили четыре квантованных варианта моделей Granite 4.2 для инференса с помощью vLLM. Модели преобразуются в FP8, NVFP4 и MXFP4 с использованием LLM Compressor, а также в формат GGUF с помощью фреймворка llama.cpp для развёртывания с уменьшенным потреблением памяти.
FP8
Версия FP8 квантуется с динамическими весами для каждого канала и активациями для каждого токена. Калибровка не используется.
FP4
Версии NVFP4 и MXFP4 квантуются с помощью GPTQ, откалиброванного на 2 тыс. образцов, взятых из набора данных SFT. Во время калибровки максимальная длина контекста составляет 2 тыс. токенов.
GGUF
Преобразование моделей Granite 4.2 в GGUF выполняется с помощью канонического инструмента llama.cpp, как описано в https://github.com/IBM/gguf#gguf-conversion--quantization.
Доступно несколько форматов GGUF:
- Q8_0
- Q6_K
- Q5_K_S
- Q5_K_M
- Q5_1
- Q5_0
- Q4_K_S
- Q4_K_M
- Q4_1
- Q4_0
- Q3_K_S
- Q3_K_M
- Q3_K_L
- Q2_K
Инфраструктура
Оборудование
Мы обучали языковые модели Granite 4.2 на кластере NVIDIA GB200 NVL72, размещённом в CoreWeave и включающем:
- домен NVLink с 72 GPU для высокоскоростной связи внутри стойки
- неблокируемую сеть Fat-Tree NDR InfiniBand со скоростью 400 Гбит/с для полнополосного соединения между стойками
- тысячи GPU, работающих на уровне кластера
Эта инфраструктура обеспечивает высокоскоростную связь с низкой задержкой, необходимую для эффективного крупномасштабного распределённого обучения.
Программный стек
Программный стек обучения упакован в образы контейнеров .sqsh, каждый из которых предоставляет воспроизводимую и переносимую среду запуска с совместимыми с SBSA целевыми объектами CUDA, колёсами Python для Linux aarch64 и зафиксированными бинарными файлами для конкретных GPU. Крупномасштабные прогоны SFT основаны на базовом образе NGC PyTorch (Ubuntu 22.04, CUDA 12.8, Python 3.12); стек RL работает в собственном контейнере NeMo-RL.
Начало работы (Transformers)
Устано
Переведено автоматически с английского. Оригинал статьи — по ссылке ниже.
← К новостям




