Hugging Face TransformersЩо нового в Hugging Face Transformers 5.20
Реліз Transformers 5.20 додає нові архітектури моделей, вбудоване квантування в експортерах і покращення розподіленого навчання FSDP та TP.
Реліз від 15 жовтня 2026 · оновлено 9 листопада 2026
Головне
- Додано нові архітектури: Muse Spark Open, Ling 3.0, Kolibri 1, MiniCPM-V 4.7, UnlimitedOcr та Beam
- Експортери отримали пряме квантування (PT2E, ONNX Runtime, NNCF) для Dynamo, ONNX, OpenVINO та ExecuTorch
- Підтримка збереження та завантаження чекпоїнтів моделей і оптимізаторів для FSDP × TP
- З `cache_utils.py` прибрано застарілі перевірки та методи для кешу
- Мінімальну версію бібліотеки `kernels` підвищено до 0.17.2
- Декодування зображень переведено на `torchcodec`
Коротко
Hugging Face Transformers 5.20 розширює список підтримуваних архітектур новими мультимодальними та мовними моделями, зокрема Muse Spark Open, Ling 3.0, Kolibri 1 та Beam. В експортерах зʼявилося уніфіковане квантування для Dynamo, ONNX, OpenVINO та ExecuTorch. Оновлення також містить покращення розподіленого навчання FSDP × TP, перехід декодування зображень на torchcodec та низку виправлень сумісності.
Нові можливості
Нові моделі
- Muse Spark Open: мультимодальна Mixture-of-Experts (MoE) модель від Meta з підтримкою вхідного тексту, зображень, аудіо та відео й генерацією тексту. Має 816 млрд загальних параметрів (42 млрд активних на токен), спільне для всіх модальностей контекстне вікно на 1 048 576 токенів і чекпоїнти у форматах BF16 та NVFP4.
- Ling 3.0 Flash: гібридна MoE-модель від InclusionAI, декодер якої групує пʼять шарів Kimi Delta Attention (KDA) з одним шаром Multi-head Latent Attention (MLA). Отримала нативну підтримку через
BailingHybridForCausalLMбез потреби уtrust_remote_code=True. - Kolibri 1: MoE-модель міркувань від Aleph Alpha для німецької та англійської мов. Містить 50 шарів, маршрутизує кожен токен до 6 із 384 експертів за допомогою sigmoid routing і має один спільний експерт; RoPE використовується лише в шарах зі sliding-window attention.
- MiniCPM-V 4.7: мультимодальна модель від OpenBMB, що поєднує енкодер SigLIP із мовною моделлю Qwen3.5. Отримала підтримку canvas M-RoPE, де токени розміщуються на 2D-полотні з координатами
(temporal, height, width). - UnlimitedOcr: OCR-модель на 3 млрд параметрів від Baidu з контекстом 32 768 токенів. Замінює шари уваги декодера на Reference Sliding Window Attention (R-SWA), забезпечуючи константний розмір KV-кешу під час декодування. Підтримує режими «gundam» (тайли 640x640) та «base» (1024x1024).
- UltraBERT: родина двонаправлених текстових енкодерів із підтримкою послідовностей до 32 768 токенів. Використовує RMSNorm, rotary embeddings, SwiGLU та чергування локальної й глобальної уваги. Представлені чекпоїнти UltraBERT-150M, UltraBERT-380M та UltraBERT-Embed-150M.
- MOSS-Transcribe-Diarize 0.9B: модель для транскрипції, діарізації та розпізнавання таймкодів у довгому аудіо для понад 50 мов на базі енкодера Whisper та Qwen3. Сегменти формуються у вигляді
[start][S01]text[end]. - Beam: модель масштабу frontier від Reflection AI, орієнтована на завдання програмування та роботу в ролі агента.
Експортери та квантування
- Пряме квантування під час експорту: новий уніфікований API інтегрує квантувальники PT2E, ONNX Runtime та NNCF. Підтримуються статичне й динамічне квантування, а також weight-only стиснення (INT8/INT4) для Dynamo, ONNX, OpenVINO та ExecuTorch із workflow калібрування.
Паралелізація
- FSDP × TP: реалізовано збереження та завантаження чекпоїнтів моделей і оптимізаторів між різними конфігураціями паралелізму.
- Звʼязані голови
lm_headу складених моделях отримали окремий план тензорного паралелізму (TP). - Прапорець
enable_expert_parallelзнову застосовує виключно план EP.
Робота з візуальними даними та я ядрами
- Декодування зображень: переведено на використання бібліотеки
torchcodec. - Резервні ядра для ROCm:
flash_attention_2перемикається на ядро AITER на платформі ROCm, якщо бібліотекаflash-attnне встановлена. - Злиті ядра для T5: маска
position_biasдля SDPA зроблена неперервною (contiguous).
Ламаючі зміни
- Регресія швидкості EP: під час інференсу з expert parallelism спостерігається тимчасова регресія швидкості виконання.
- Видалення застарілих методів кешу: з
cache_utils.pyприбрано застарілі перевірки й методи (це зачіпає моделі на кшталт minimax_m3_vl та pi0). Код, який їх викликав, має перейти на актуальний Cache API. - Видалення перехресних імпортів: прибрано випадкові імпорти з інших моделей у низці модулів (зокрема
embedding_gemma2,ijepa,lightglue). Сутності потрібно імпортувати з їхніх оригінальних модулів. - Підвищення вимог до
kernels: мінімальну версіюkernelsпіднято до0.17.2. Це додає підтримкуuse_fallback=KernelizeFallback.ALLдля відкату до базової реалізації в разі збою завантаження ядра. - Зміна ініціалізації конфігурацій через
SubConfigSpec: впровадженоSubConfigSpecдля централізованої ініціалізації вкладених конфігурацій зі значень полів датакласів замість створення екземплярів класу. Користувацькі конфігурації можуть потребувати оновлення. - Поведінка токенізаторів LUKE та mLUKE: спеціальні сутності (наприклад,
<ent>) тепер обробляються саме як спеціальні токени (не розбиваються, враховуютьskip_special_tokensі нормалізуються), зберігаючи стандартні пробіли regular-токенів під час декодування. Вихідні дані токенізації можуть відрізнятися від попередніх версій.
Виправлення та покращення
- Генерація та пайплайни:
- Виправлено роботу
generate()зі статичним кешем під час передавання входів із боку хоста та в умовах тензорного паралелізму. - Прискорено генерацію Whisper на TPU завдяки скороченню синхронізацій пристрою та перекомпіляцій; виправлено декодування таймкодів у батчах для тензорних і NumPy-входів.
- Очищено обробку аргументів генерації у pipelines від зайвих попереджень.
- Усунуто втрату початкового типу словника входів усередині
prepare_inputs_for_generationпід час викликуgenerate.
- Виправлено роботу
- Зір:
- Усунено появу хибних меж зображень у Pixtral Flash Attention після рефакторингу axial RoPE, які спричиняли помилки неправомірного доступу до памʼяті в CUDA.
- Ключові аргументи для обробки зображень та відео в Molmo2 приведені до стандартних конвенцій бібліотеки.
- Виправлено призначення зображень для моделі HunYuan-VL під час батчевої генерації.
- Розподілені обчислення та ядра:
- Виправлено завантаження TP на TPU завдяки переходу на API пристроїв
torch.accelerator. - Ядро rotary з Hugging Face Hub обмежено використанням виключно на етапі inference для CUDA через некоректні градієнти під час зворотного проходу.
- Додано вимогу
torch>=2.8для розподіленого чекпоїнтингу вfrom_pretrained, а роботуDtensorShardOperationскориговано для PyTorch 2.6 та 2.7. - Виправлено нульові градієнти експертів у форматі bfloat16 під час використання expert parallelism, коли
ep_size < fsdp_size. - Усунено зайве копіювання з хоста на пристрій у
eager_mask.
- Виправлено завантаження TP на TPU завдяки переходу на API пристроїв
Огляд підготовлено автоматично за офіційними release notes за допомогою ШІ та перевірено на відповідність джерелу. Точні формулювання дивіться в оригіналі. Як ми працюємо