Игорь Градов
Игорь Градов
5 мин
ai

Hugging Face проверит Transformers копиями моделей: ошибку UMT5 ловят за 13 секунд

Hugging Face предложила проверять библиотеку Transformers на крошечных копиях моделей после того, как ошибка с подглядыванием в правильный ответ почти два месяца жила в основном коде незамеченной.

Hugging Face проверит Transformers копиями моделей: ошибку UMT5 ловят за 13 секунд
Почему это важно

Ошибка не роняла программу и не выдавала предупреждений, она тихо портила обучение моделей T5 и UMT5. Теперь Hugging Face хочет ловить такие сбои до того, как правка попадёт в основной код, а не через недели после.

Transformers, это библиотека Hugging Face с открытым кодом, через которую разработчики загружают, запускают и дообучают нейросети. Она поддерживает больше 750 типов моделей. В блоге Hugging Face команда библиотеки разобрала свежий сбой и предложила новый стандарт проверок transformers-mic, и вокруг него стоит спорить.

Что случилось с UMT5 и почему этого никто не заметил?

30 июля 2026 года разработчики Transformers включили для T5 SDPA, ускоренный механизм внимания из фреймворка PyTorch. Внимание, это способ, которым модель решает, на какие слова в тексте смотреть.

Побочный эффект проявился в UMT5. Её декодер, часть модели, которая пишет ответ, получил доступ к будущим токенам, то есть к кусочкам текста, которые ему только предстояло угадать. На обучении модель могла подсмотреть правильный ответ, и ошибка провисела в основной ветке кода до исправления 28 сентября.

Тестов у библиотеки много: больше 88 000 проверок на обычных процессорах и больше 200 000 проверок на видеокартах в ежедневном прогоне. Но полные проверки на настоящих моделях гонять при каждой правке слишком дорого, нужны видеокарты весь день. Пока плановый прогон находит сбой, ошибка уже сидит в основном коде.

Показательная деталь: проверка «загрузили модель, прогнали один раз» эту ошибку пропустила бы. Команда прямо пишет, что обычный прогон UMT5 проходил без замечаний.

Аргументы за: копия весом 66 МБ ловит ошибку за 13 секунд

Идея Hugging Face простая: уменьшить модель, а не покупать видеокарты. Из настройки настоящей модели собирают фикстуру, маленькую копию с меньшим числом и меньшей шириной слоёв, но со всеми типами слоёв оригинала. Файлы, которые превращают текст в токены, копируют без изменений.

Цифры из материала:

  • фикстура UMT5 весит 66 МБ, исходная модель 1 227 МБ;
  • проверка запускается на дешёвом сервере без видеокарты;
  • очень большие модели, которые не помещаются на стандартные видеокарты команды, тоже проверяются через фикстуры.

Стандарт называется Model Integration Contract, или MIC, контракт интеграции модели. В нём три части:

  • фикстура, опубликованная один раз и закреплённая;
  • сценарий использования, исполняемый пример того, что люди делают с моделью, например генерация текста или шаг обучения;
  • эталоны, результаты этого сценария, проверенные человеком.

Контракт считается выполненным, если сценарий на фикстуре по-прежнему выдаёт эталон. Например, контракт для SmolLM продолжает фразу «Столица Франции это», сверяет ответ с записанным, проверяет ошибку на обучении и то, что шаг обучения действительно меняет веса.

Главный довод в пользу подхода дала сама история UMT5. Команда прогнала замороженные контракты по пяти месяцам изменений, и маленькая фикстура UMT5 флагнула сбой на каждом изменении с 30 июля по 28 сентября. Вероятности ответов разошлись с эталоном на 1,22, ошибка на обучении примерно на 0,20.

Затем исправление откатили на тестовой ветке. Проверка снова упала с теми же расхождениями, а сам шаг проверки занял 13,4 секунды на обычном процессоре.

Аргументы против: копия не заменяет оригинал

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

Второе слабое место: фикстура помогает, только если идёт по тому же пути в коде, что и настоящая модель. Контракт UMT5 поймал сбой потому, что использовал SDPA, путь по умолчанию. Вариант с обычным механизмом внимания ошибку пропустил.

Третье: уменьшать модели оказалось сложнее, чем казалось. Первый рецепт просто срезал размеры и слои, и на смешанных архитектурах это ломалось: если оставить два слоя с одним типом внимания, слои с другим типом исчезают. Сейчас рецепт из четырёх шагов:

  • уменьшить настройку, сохранив все типы слоёв;
  • не трогать обработку текста и файлы словаря;
  • собрать веса и проверить, что модель реагирует на разные входы;
  • заморозить результат и записать эталоны.

Четвёртое: эталоны для каждой платформы и точности вычислений проверяет человек. Это ручная работа, а transformers-mic пока только предложенный стандарт.

Фикстура помогает, только если проходит через тот же код, что и настоящая модель. : Команда Transformers, блог Hugging Face

Что делать с этим прямо сейчас, по ролям?

Тем, кто сам дообучает или запускает T5 и UMT5: если ошибка на обучении (loss) выглядела подозрительно низкой, проверьте, какую сборку Transformers вы ставили между 30 июля и 28 сентября 2026 года. Низкая ошибка в этот период могла означать, что модель подглядывала в ответ, а не училась.

Автору Дзена: это готовый сюжет о том, почему «работает без ошибок» не значит «работает правильно». Если вы пользуетесь готовыми сервисами, сбой вас напрямую не касается.

Маркетологу: если подрядчик дообучает для вас модель, спросите, какой версией библиотеки он пользуется и сверяет ли результат с эталоном.

Предпринимателю в РФ и СНГ: проблема касается самостоятельного запуска открытых моделей. Тем, кто подключает YandexGPT или GigaChat через готовый доступ, эта история напрямую не грозит.

Где подвох

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

Мнение редакции dzen.guru

На мой взгляд, Hugging Face признала полезную вещь: нейросеть может молча учиться неправильно, и обычные тесты этого не видят. Подход с маленькими копиями дешёвый и проверяемый, я бы ставил на него.

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

Дальше вопрос не в технологии, а в дисциплине: стандарт заработает, если авторы моделей начнут выкладывать контракты вместе с моделями. Если это случится, история с UMT5 станет последней ошибкой такого рода, которая два месяца прожила незамеченной.

Поделиться:TelegramVK
Игорь Градов
Игорь Градов

Основатель dzen.guru. Эксперт по монетизации и продвижению на Дзен. Автор курса «Старт на Дзен 2026».

Комментарии

Читайте также

ai

Разрезали снимок на фрагменты: мелкие дефекты почти вдвое точнее, крупные вдвое хуже

Студент РТУ МИРЭА Максим в продолжении своего разбора на Хабре проверил нарезку снимков на фрагменты на 1812 фото повреждённых машин: качество на мелких сколах…

5 мин
Не эмулятор PS4 на ПК, а рекомпилятор: The Last of Us идёт на Mac M1 при 20 FPS
ai

Не эмулятор PS4 на ПК, а рекомпилятор: The Last of Us идёт на Mac M1 при 20 FPS

Независимый разработчик выложил на GitHub прототип PS4Recomp, который переводит игры PS4 в родные приложения для Mac на Apple Silicon, и The Last of Us…

5 мин
NER для юристов без A100: Qwen 1.5B догнала Ministral 14B и работает в 2,2 раза быстрее
ai

NER для юристов без A100: Qwen 1.5B догнала Ministral 14B и работает в 2,2 раза быстрее

Команда Agentic Lab обучила Qwen2.5-1.5B извлекать сущности из судебных документов почти на уровне Ministral 3 14B, когда новая чат-модель заняла всю A100 и…

5 мин