ERNIE 4.5 (Baidu): конспект ключевых идей техотчёта
Конспект ERNIE 4.5 от Baidu по официальному описанию в репозитории модели: гетерогенная мультимодальная MoE до 424 млрд параметров, изоляция маршрутизации по модальностям, FP8 и иерархическая балансировка при обучении, «сверточное кодовое» квантование до 2 бит, разделение prefill/decode, пост-трейнинг SFT, DPO и UPO. О техотчёте ERNIE 5.0 — честно о том, что проверить не удалось.
Коротко
Заголовок раздела «Коротко»- ERNIE 4.5 (по-китайски «Вэньсинь» 4.5, июнь 2025) — семейство из 10 моделей под Apache-2.0: MoE с 47 млрд и 3 млрд активных параметров (крупнейшая — 424 млрд всего), плюс плотная модель на 0,3 млрд. Есть текстовые и мультимодальные (текст, картинки, видео) версии, базовые и дообученные.
- Главная архитектурная идея — гетерогенная мультимодальная MoE: часть параметров общая для текста и изображений, часть — своя у каждой модальности; маршрутизация изолирована по модальностям.
- Инфраструктура: гетерогенный гибридный параллелизм, иерархическая балансировка нагрузки, экспертный параллелизм внутри узла, обучение в FP8; 47% MFU при предобучении крупнейшей текстовой модели.
- Инференс: квантование весов до 4 и даже 2 бит «без потерь» (по заявлению авторов), разделение prefill и decode с динамическим переключением ролей.
- Пост-трейнинг по модальностям: SFT, DPO и собственный вариант RL — UPO (Unified Preference Optimization).
- Всё обучено и разворачивается на PaddlePaddle (по-китайски «Фэйцзян»), а не на PyTorch: инструменты — ERNIEKit (обучение) и FastDeploy (инференс).
Как читать вместе с курсом
Заголовок раздела «Как читать вместе с курсом»Это отчёт уровня 🔴: читайте после модулей о MoE (5.3) и эффективном обучении (5.4), а мультимодальную часть — после 9.1.1. Полезно сравнить с DeepSeek-V3 (наш разбор в китайском треке): те же задачи — MoE, FP8, балансировка, разделение prefill/decode, — но другие решения и другой фреймворк.
1. Семейство моделей
Заголовок раздела «1. Семейство моделей»| Категория | Модели | Вход → выход | Контекст |
|---|---|---|---|
| Языковые (LLM) | ERNIE-4.5-300B-A47B (+ Base), ERNIE-4.5-21B-A3B (+ Base) | текст → текст | 128K |
| Мультимодальные (VLM) | ERNIE-4.5-VL-424B-A47B (+ Base), ERNIE-4.5-VL-28B-A3B (+ Base) | текст, изображения, видео → текст | 128K |
| Плотная | ERNIE-4.5-0.3B (+ Base) | текст → текст | 128K |
Имена читаются как у Qwen: 300B-A47B — 300 млрд параметров всего, 47 млрд активных на токен. Позже вышли рассуждающие
версии ERNIE-4.5-21B-A3B-Thinking и ERNIE-4.5-VL-28B-A3B-Thinking (по журналу изменений ERNIEKit).
2. Гетерогенная мультимодальная MoE
Заголовок раздела «2. Гетерогенная мультимодальная MoE»Задача: обучить модель сразу на тексте и изображениях так, чтобы одна модальность не мешала другой. Наивный вариант — одна MoE на всё — рискует тем, что визуальные токены «займут» экспертов и текстовое качество просядет.
Решение ERNIE 4.5 (по README):
- гетерогенная структура MoE — есть параметры, общие для модальностей, и есть параметры, выделенные под каждую модальность;
- изоляция маршрутизации по модальностям (modality-isolated routing) — текстовые токены выбирают среди «своих» экспертов, визуальные — среди своих;
- ортогональная потеря маршрутизатора (router orthogonal loss) — штраф, который подталкивает маршрутизаторы разделять экспертов, а не выбирать одних и тех же;
- мультимодальная потеря балансировки токенов (multimodal token-balanced loss) — учитывает, что токенов разных модальностей в батче разное число.
flowchart TD
T["текстовые токены"] --> RT{"маршрутизатор<br/>текста"}
V["визуальные токены"] --> RV{"маршрутизатор<br/>изображений"}
RT --> ET["эксперты текста"]
RV --> EV["эксперты изображений"]
T --> S["общие параметры<br/>(внимание и др.)"]
V --> SЗаявленный результат: мультимодальное понимание улучшается без потери, а иногда и с выигрышем на чисто текстовых задачах.
3. Инфраструктура обучения
Заголовок раздела «3. Инфраструктура обучения»- Гетерогенный гибридный параллелизм и иерархическая балансировка нагрузки — комбинация видов параллелизма, подобранная под разнородные (текстовые и визуальные) части модели; балансировка на нескольких уровнях.
- Экспертный параллелизм внутри узла (intra-node expert parallelism) — эксперты раскладываются по GPU одного сервера, где связь быстрая, чтобы all-to-all не шёл через медленную межузловую сеть. Сравните с урезанной связью H800 у DeepSeek — та же логика «не гонять данные по медленному каналу» (урок 5.4.3).
- Экономный по памяти конвейерный график, обучение в FP8 (FP8FP8 (8-битное число с плавающей точкой)EN FP8 (8-bit floating point)Два варианта: E4M3 (точнее, максимум 448) и E5M2 (грубее, максимум 57 344). Требует масштабирования тензоров. DeepSeek-V3 обучалась в FP8 с поблочными масштабами.) и точечный пересчёт активаций (чекпойнтингперевычисление активаций (activation checkpointing)EN activation checkpointing (recomputation)Не хранить часть активаций прямого прохода, а пересчитать их при обратном. Экономит память ценой дополнительных вычислений. только там, где выгодно).
- Итог: 47% MFU (утилизация FLOPs моделиутилизация FLOPs модели (MFU)EN model FLOPs utilization (MFU)Доля пиковой производительности железа, которая уходит на полезные вычисления модели. Для больших распределённых обучений типичны 30–50 %. — доля теоретической производительности GPU, которая реально идёт на полезные вычисления модели) при предобучении крупнейшей языковой модели. Авторы подают это как один из главных результатов инфраструктуры: у MoE обычно теряется много времени на обмен между GPU.
4. Инференс
Заголовок раздела «4. Инференс»- Совместная работа нескольких экспертов в параллели (multi-expert parallel collaboration) — способ распределять экспертов при инференсе.
- Квантование «сверточным кодом» (convolutional code quantization) — алгоритм, которым авторы получают 4-битное
и 2-битное квантование весов «без потерь» (их формулировка). Схема обозначений в README:
WxAxCx— точность весов (W), активаций (A) и KV-кэша (C). Например,W4A16C16— 4-битные веса, 16-битные активации и кэш; для ERNIE-4.5-300B-A47B заявлен и вариант 2 бит. Что такое квантование и почему 2 бита — экстремально мало — в уроке 7.2.1. - Разделение prefill и decode с динамическим переключением ролей (PD-дезагрегацияPD-дезагрегация (раздельные prefill и decode)EN prefill-decode disaggregationPrefill и decode выполняются на разных группах GPU, а KV-кэш передаётся между ними по сети. Так фазы не мешают друг другу. Mooncake (Kimi), DistServe, инференс DeepSeek-V3.) — серверы, которые делают prefill, и серверы, которые делают decode, могут меняться ролями по нагрузке.
5. Пост-трейнинг
Заголовок раздела «5. Пост-трейнинг»Каждую модальность дообучают отдельно:
- языковые модели — под общее понимание и генерацию текста;
- мультимодальные — под понимание «зрение + язык», с режимами размышления и без (как гибридное мышление Qwen3);
- методы: SFT, DPO (урок 6.3.3) и собственный модифицированный RL — UPO (Unified Preference Optimization). Подробности UPO в README не раскрыты.
6. Результаты (заявления Baidu)
Заголовок раздела «6. Результаты (заявления Baidu)»- ERNIE-4.5-300B-A47B-Base обгоняет DeepSeek-V3-671B-A37B-Base на 22 из 28 бенчмарков.
- ERNIE-4.5-21B-A3B-Base, будучи примерно на 30% меньше Qwen3-30B-A3B-Base по общему числу параметров, обгоняет её на нескольких тестах математики и рассуждений (BBH, CMATH).
- ERNIE-4.5-300B-A47B после дообучения — сильнейшие результаты на IFEval, Multi-IF, SimpleQA, ChineseSimpleQA (следование инструкциям и фактические знания).
- ERNIE-4.5-VL-424B-A47B в режиме размышления сокращает отставание от OpenAI o1 или обходит его на MathVista, MMMU, VisualPuzzle; 28B-A3B сопоставима с Qwen2.5-VL-7B и 32B или лучше их на большинстве тестов.
Как к этому относиться — урок 7.3.1 о ловушках бенчмарков: сравнения выбраны авторами и на момент выпуска (середина 2025 года).
7. Инструменты: ERNIEKit и FastDeploy
Заголовок раздела «7. Инструменты: ERNIEKit и FastDeploy»| Инструмент | Что умеет (по README) |
|---|---|
| ERNIEKit | предобучение, полное SFT, DPO, LoRA-варианты SFT и DPO, обучение с учётом квантования (QAT), PTQ (в работе); командная строка erniekit train <config.yaml> и веб-интерфейс |
| FastDeploy | инференс LLM и VLM на PaddlePaddle: разделение prefill/decode с многоуровневой балансировкой, много форматов квантования, OpenAI-совместимый сервер, совместимость с интерфейсом vLLM |
Минимальный пример из README — SFT самой маленькой модели:
huggingface-cli download baidu/ERNIE-4.5-0.3B-Paddle --local-dir baidu/ERNIE-4.5-0.3B-Paddleerniekit train examples/configs/ERNIE-4.5-0.3B/sft/run_sft_8k.yaml # SFT с длиной 8KЧто сделать руками
Заголовок раздела «Что сделать руками»- Сравните таблицу «что общее, что раздельное» у ERNIE 4.5 и у DeepSeekMoE (общие эксперты, урок 5.3.2). Чем «общие параметры для всех модальностей» похожи на «общих экспертов для всех токенов»?
- Посчитайте размер весов ERNIE-4.5-300B-A47B в форматах BF16, W4 и W2 (байт на параметр: 2; 0,5; 0,25). Сколько ваших карт по 32 ГБ понадобится в каждом случае только под веса?
- Объясните своими словами, зачем изолировать маршрутизацию по модальностям, на примере: в батче 90% визуальных токенов и 10% текстовых.
Словарик
Заголовок раздела «Словарик»| English | Русский |
|---|---|
| heterogeneous MoE | гетерогенная MoE |
| modality-isolated routing | изолированная по модальностям маршрутизация |
| hierarchical load balancing | иерархическая балансировка нагрузки |
| MFU (model FLOPs utilization) | доля полезно использованной вычислительной мощности |
| PD disaggregation | разделение prefill и decode |
| convolutional code quantization | квантование «сверточным кодом» |
- Репозиторий и описание ERNIE 4.5: github.com/PaddlePaddle/ERNIE (Apache-2.0).
- Техотчёт ERNIE 4.5 (PDF): ernie.baidu.com/blog/publication/ERNIE_Technical_Report.pdf.
- ERNIE 5.0: arXiv:2602.04705 — конспект появится, когда текст станет доступен для проверки.