Repolode
huggingface

huggingface/trl

Библиотека Hugging Face для пост-тренинга языковых трансформеров: SFT, GRPO, DPO, KTO и обучение reward-моделей.

Звёзды
19,561
Форки
3,086
Открытые issues
289
Последний коммит
4 часа назад

Что это?

TRL — библиотека для пост-тренинга foundation-моделей. Она включает такие методы, как Supervised Fine-Tuning (SFT), Group Relative Policy Optimization (GRPO), Direct Preference Optimization (DPO), Kahneman-Tversky Optimization (KTO) и обучение reward-моделей. Для каждого метода предусмотрен отдельный класс trainer, например SFTTrainer, GRPOTrainer, DPOTrainer, KTOTrainer и RewardTrainer, который оборачивает trainer из Hugging Face Transformers.

TRL построена на экосистеме Transformers и использует Accelerate для масштабирования обучения от одной GPU до многонодовых кластеров с DDP, DeepSpeed ZeRO и FSDP. Библиотека интегрируется с PEFT, чтобы использовать квантование и обучать модели с LoRA/QLoRA на доступном оборудовании, а также с Unsloth для применения оптимизированных ядер. Интерфейс командной строки позволяет запускать SFT, DPO и KTO без написания кода.

В проекте также есть экспериментальный раздел trl.experimental с функциями, которые могут измениться без предупреждения. В последних обновлениях добавлена поддержка обучения на GPU AMD Instinct через ROCm и на AWS Trainium через TorchNeuron.

Ключевые возможности

  • 01Классы trainer для SFT, GRPO, DPO, KTO и обучения reward-моделей.
  • 02Обучение на нескольких GPU и узлах с помощью Accelerate, DeepSpeed и FSDP.
  • 03Поддержка LoRA и QLoRA через PEFT для обучения при ограниченном объёме памяти.
  • 04Интерфейс командной строки для запуска SFT, DPO и KTO без написания кода.
  • 05Интеграция с Hugging Face Transformers и датасетами из Hub.

Сценарии использования

  • Дообучение open-weight LLM на датасетах с инструкциями или диалогами с помощью SFT.
  • Выравнивание модели по парам предпочтений людей с помощью DPO.
  • Обучение модели с вознаграждениями для reinforcement learning с помощью GRPO.
  • Обучение reward-модели для оценки ответов в последующих RL-конвейерах.

Быстрый старт

  1. 1

    Установите библиотеку из PyPI

    pip install trl
  2. 2

    Запустите базовый пример обучения SFT через Python API

  3. 3

    Или выполните тонкую настройку из командной строки с помощью trl CLI

    trl sft --model_name_or_path Qwen/Qwen2.5-0.5B --dataset_name trl-lib/Capybara --output_dir Qwen2.5-0.5B-SFT

Что важно знать

  • Для обучения больших моделей требуется мощное оборудование с GPU. В README рекомендуются PEFT/LoRA и квантование для снижения требований к памяти.
  • Экспериментальная область trl.experimental может измениться или быть удалена без предупреждения.

Темы

Частые вопросы

Что такое trl?
Библиотека Hugging Face для пост-тренинга языковых трансформеров: SFT, GRPO, DPO, KTO и обучение reward-моделей. TRL — библиотека для пост-тренинга foundation-моделей. Она включает такие методы, как Supervised Fine-Tuning (SFT), Group Relative Policy Optimization (GRPO), Direct Preference Optimization (DPO), Kahneman-Tversky Optimization (KTO) и обучение reward-моделей. Для каждого метода предусмотрен отдельный класс trainer, например SFTTrainer, GRPOTrainer, DPOTrainer, KTOTrainer и RewardTrainer, который оборачивает trainer из Hugging Face Transformers.
trl можно использовать бесплатно? Какая у него лицензия?
trl распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
trl всё ещё поддерживается?
Активно поддерживается. Последний коммит в trl — 21 окт. 2026 г..
Для чего можно использовать trl?
Дообучение open-weight LLM на датасетах с инструкциями или диалогами с помощью SFT. Выравнивание модели по парам предпочтений людей с помощью DPO. Обучение модели с вознаграждениями для reinforcement learning с помощью GRPO. Обучение reward-модели для оценки ответов в последующих RL-конвейерах.
Как установить trl?
Установите библиотеку из PyPI: pip install trl Запустите базовый пример обучения SFT через Python API Или выполните тонкую настройку из командной строки с помощью trl CLI: trl sft --model_name_or_path Qwen/Qwen2.5-0.5B --dataset_name trl-lib/Capybara --output_dir Qwen2.5-0.5B-SFT
Где скачать trl?
Исходный код и инструкции по установке — на GitHub: https://github.com/huggingface/trl

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты