Alternative simplifiée à RLHF optimisant directement les préférences sans reward model.
DPO (Direct Preference Optimization, Rafailov et al. 2023) est une technique d'alignement LLMs présentée comme alternative simplifiée à RLHF-PPO. Élimine la nécessité d'entraîner un reward model séparé puis d'utiliser PPO complexe, en dérivant mathématiquement que la policy optimale peut être trouvée directement via une simple cross-entropy loss sur les preferences pairs.
Intuition : RLHF veut maximize reward sous KL constraint. DPO démontre que la solution optimal de ce problème a une forme close-form reliant policy ratios aux rewards implicites. En exploitant cette identité, on peut optimize directement la policy sur preference data sans avoir besoin du reward model intermédiaire.
Workflow DPO : (1) start from SFT model (supervised fine-tuned, comme RLHF) ; (2) collect preference dataset (prompt, chosen response, rejected response) — typically 10k-100k pairs ; (3) train avec DPO loss qui amplifie probability ratio chosen/rejected vs reference SFT model. C'est tout — pas de PPO, pas de reward model.
Avantages vs RLHF-PPO : (1) **Plus simple** à implémenter et stable à entraîner ; (2) **Moins de hyperparameters** à tune ; (3) **Pas de reward model** à entraîner et maintenir ; (4) **Moins computational** ; (5) **Reproductibilité** meilleure — RLHF-PPO notoriously hard to reproduce ; (6) **Quality équivalente ou supérieure** à RLHF sur benchmarks standards.
Limitations : (1) requires high-quality preference data ; (2) doesn't easily scale to online learning (PPO can keep generating et learning) ; (3) less explored that RLHF pour edge cases ; (4) hyperparameter β (KL penalty strength) critical to tune.
Variantes évolutions : (1) **IPO** — addresses preference data overfitting ; (2) **KTO** — uses binary feedback (good/bad) au lieu de pairwise comparisons, more practical to collect ; (3) **ORPO** — odds ratio variant, combine SFT et preference learning in one step ; (4) **SimPO** — length-normalized DPO ; (5) **ORM-free DPO variants**.
Usage industrie : Adopted by Mistral, Llama 3, Zephyr, OpenHermes — beaucoup de modèles open weights utilisent DPO post-SFT pour alignement. Anthropic et OpenAI utilisent vraisemblablement variantes propriétaires plus complexes mais DPO/variantes dominent open source.
Frameworks : HuggingFace TRL (DPOTrainer), Axolotl, Unsloth, OpenRLHF. Compétences AI-102, PMLE.
200+ certifications, 400 000+ questions, examens blancs chronométrés.
Voir le catalogue →