
Коротко о главномРазвернутьСвернуть
- Библиотека получила рабочий пример обучения Qwen3-8B на последовательности из 1 048 576 токенов за шаг на одном узле с восемью H100.
- Такой объём сопоставим с книгой, которую модель обрабатывает целиком, а не отдельными фрагментами.
- Разработчики перевели проекцию lm_head для chunked_nll с FP32 на BF16 и тензорные ядра.
10 сентября Hugging Face выпустила TRL 1.13. Библиотека получила рабочий пример обучения Qwen3-8B на последовательности из 1 048 576 токенов за шаг на одном узле с восемью H100. Такой объём сопоставим с книгой, которую модель обрабатывает целиком, а не отдельными фрагментами.
Что изменилось под капотом
Разработчики перевели проекцию lm_head для chunked_nll с FP32 на BF16 и тензорные ядра. Раньше операция без пользы создавала тяжёлую копию весов и выполнялась по более медленному пути. В тестах авторов изменение ускорило отдельный расчёт в шесть раз, а пропускная способность обучения разных моделей выросла в 1,2–1,69 раза.
Обновление важно разработчикам, которые дообучают языковые модели через SFT, DPO, KTO, GRPO и дистилляцию. В trl.losses перенесли исходный код fused linear losses из Liger-Kernel. При этом для режима use_liger_kernel по-прежнему требуется установленный liger-kernel. Также добавили поддержку vLLM 0.28.0 и изменили поведение синхронизации весов vLLM: при несовместимости она завершается ошибкой, а не зависает.
Кому нужно проверить совместимость
Из TRL удалены PPOTrainer, PPOConfig и модели-обёртки с value head. Активных пользователей это почти не затронет: импорт PPOTrainer перестал работать ещё в версии 1.10, поэтому проекты с PPO уже должны быть закреплены на старом выпуске.
Перед обновлением также стоит проверить зависимости: теперь нужны peft версии 0.13.0 или новее и deepspeed не ниже 0.18.6. Кроме того, разработчики прекратили поддержку vLLM 0.19.0.


