Единый фреймворк для эффективной тонкой настройки более 100 LLM и VLM через CLI и веб-интерфейс без написания кода.
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
Установите библиотеку из PyPI
pip install trl - 2
Запустите базовый пример обучения SFT через Python API
- 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 обновляется ежедневно.
Похожие проекты
Практическое руководство и кодовая база на PyTorch для обучения LLM-трансформера с нуля: предобучение, SFT, reward modeling, DPO/PPO/GRPO и генерация.
Двуязычная коллекция из более чем 100 авторских схем, объясняющих LLM, RL, RLHF, DPO, GRPO и другие алгоритмы для больших моделей.
Фреймворк для дообучения, обучения, инференса и деплоя более 600 больших языковых и 400 мультимодальных моделей, включая SFT, DPO и GRPO.
Бесплатный фреймворк с открытым исходным кодом для дообучения и постобучения больших языковых моделей с настройкой через YAML-файлы.
CLI-инструмент для дообучения и посттренинга LLM по одному YAML-конфигу, в том числе на потребительских GPU с небольшим объёмом VRAM.