For the complete documentation index, see llms.txt. This page is also available as Markdown.

TRL (entraînement RLHF/DPO)

TRL (Transformer Reinforcement Learning) est la bibliothèque officielle de Hugging Face pour entraîner des modèles de langage avec des techniques d'apprentissage par renforcement. Avec plus de 10 000 étoiles sur GitHub, elle fournit des implémentations de pointe de RLHF, DPO, PPO, GRPO et d'autres algorithmes d'alignement pour les LLM.


Qu'est-ce que TRL ?

TRL est la bibliothèque derrière de nombreux modèles de langage parmi les mieux alignés d'aujourd'hui. Elle fournit :

  • SFT (ajustement fin supervisé) — ajustement standard des instructions avec le format ChatML

  • RLHF/PPO — optimisation classique par politique proximale avec un modèle de récompense

  • DPO — optimisation directe des préférences (aucun modèle de récompense nécessaire !)

  • GRPO — optimisation de politique relative en groupe (méthode de DeepSeek-R1)

  • KTO — optimisation de Kahneman-Tversky (fonctionne avec des préférences non appariées)

  • Modélisation de récompense — entraîner un modèle de récompense à partir de données de préférences humaines

  • IterativeSFT — apprentissage par renforcement en ligne avec une configuration plus simple

  • ORPO — optimisation des préférences par rapport de cotes

TRL s'intègre nativement à l'écosystème Hugging Face : transformers, peft, datasets, accelerate, et bitsandbytes.

Quel algorithme devriez-vous utiliser ?

  • DPO — le plus simple, le plus stable. À utiliser lorsque vous disposez de données de préférences appariées (choisi/rejeté).

  • PPO — le plus puissant mais complexe. À utiliser lorsque vous disposez d'un modèle de récompense ou d'une fonction de score.

  • GRPO — excellent pour les tâches de raisonnement/de mathématiques. Méthode d'entraînement de DeepSeek-R1.

  • SFT — commencez toujours ici avant d'appliquer toute méthode d'apprentissage par renforcement.


Exigences du serveur

Composant
Minimum
Recommandé

GPU

RTX 3090 (24 Go)

A100 80 Go / H100

VRAM

16 Go (SFT/DPO 7B + LoRA)

80 Go (affinage complet 7B)

RAM

32 Go

64 Go+

CPU

8 cœurs

16 cœurs et plus

Stockage

100 Go

300 Go+

Système d'exploitation

Ubuntu 20.04+

Ubuntu 22.04

Python

3.9+

3.11

CUDA

12.8+

12.8+

VRAM par tâche

Tâche
Modèle
Méthode
VRAM

SFT

Llama 3 8B

QLoRA 4 bits

~8 GB

DPO

Llama 3 8B

LoRA

~20 Go

PPO

Llama 3 8B

Complet

~80 Go (2×A100)

GRPO

Qwen 7B

LoRA

~24 Go

SFT

Llama 3 70B

QLoRA 4 bits

~48 Go

DPO

Llama 3 70B

LoRA

~80 Go


Ports

Port
Service
Remarques

22

SSH

Accès au terminal, transfert de fichiers, surveillance

TRL est une bibliothèque d'entraînement — elle s'exécute comme un script CLI/Python, aucun serveur web requis.


Installation sur Clore.ai

Étape 1 — Louer un serveur

  1. Filtrer pour VRAM ≥ 24 Go (RTX 3090, A100 ou H100)

  2. Choisissez un PyTorch ou CUDA 12.8 image de base

  3. Sélectionnez Stockage ≥ 200 Go pour les modèles et les ensembles de données

  4. Ouvrez le port 22 pour l'accès SSH

Étape 2 — Se connecter via SSH

Étape 3 — Installer TRL

Étape 4 — Authentification Hugging Face

Étape 5 — Facultatif : suivi Weights & Biases


Fine-tuning supervisé (SFT)

Le SFT est toujours la première étape avant toute technique de RL.

Préparez votre ensemble de données

Script d'entraînement SFT


DPO (optimisation directe des préférences)

DPO est la méthode d'alignement la plus populaire — aucun modèle de récompense n'est nécessaire, seulement des paires de préférences.

Préparer l'ensemble de données DPO

Script d'entraînement DPO


PPO (optimisation par politique proximale)

PPO est l'approche RLHF classique — à utiliser lorsque vous disposez d'un signal de récompense :


GRPO (optimisation de politique relative en groupe)

GRPO est utilisé dans DeepSeek-R1 pour l'entraînement au raisonnement :


Entraînement multi-GPU

Utilisez accelerate pour l'entraînement distribué :


Utilisation de l'interface CLI TRL

TRL fournit des commandes CLI pratiques :


Surveillance de l'entraînement


Recommandations GPU Clore.ai

L'entraînement TRL est l'une des charges de travail les plus gourmandes en VRAM. Choisissez votre GPU en fonction de la taille du modèle et de la méthode :

Tâche
GPU
Remarques

SFT / DPO sur 7–8B (QLoRA)

RTX 3090 24 Go

~8 Go pour QLoRA 4 bits ; tient confortablement ; 0,07–0,21 $/h sur Clore.ai

SFT / DPO sur 7–8B (LoRA bf16)

RTX 4090 24 Go

Même VRAM que la 3090, mais calcul 30 % plus rapide ; excellent pour la vitesse d'itération

SFT complet sur 7B ou DPO sur 13B

A100 40 Go

40 Go suffisent pour un entraînement en précision complète sur 7B ; la mémoire ECC évite les erreurs silencieuses

PPO / fine-tuning complet 7B, ou n'importe quel QLoRA 70B

A100 80 Go

PPO nécessite 2× modèle policy+ref en VRAM ; 80 Go exécutent les deux sans OOM

Conseil pratique : Commencez sur une RTX 3090 avec QLoRA pour expérimenter — entraînez Llama 3 8B en ~2 h sur 10 000 exemples. Une fois le pipeline validé, passez à une A100 80 Go pour des exécutions en précision complète ou des modèles 70B.

Nombres de vitesse (Llama 3 8B SFT, QLoRA, batch=4, seq=2048) :

  • RTX 3090 : ~1 100 tokens/s de débit d'entraînement

  • RTX 4090 : ~1 450 tokens/s

  • A100 80 Go : ~2 800 tokens/s (bf16 complet, sans quantification)


Dépannage

Mémoire CUDA insuffisante

La perte est NaN

DPO: chosen_rewards > rejected_rewards is False

L'entraînement est très lent

tokenizer.pad_token avertissement

Autorisation refusée / HuggingFace 401


Enregistrer et partager votre modèle


Liens utiles

Mis à jour

Ce contenu vous a-t-il été utile ?