What problem does it solve?
SimPO helps you align a language model to human (or synthetic) preferences by learning from chosen/rejected response pairs without needing a separate reference model, which simplifies training while maintaining strong performance.
Core Features & Use Cases
- Reference-free preference optimization: Optimizes directly from preference pairs (chosen vs rejected) rather than computing differences against a reference model.
- Efficient DPO-style alternative: Uses SimPO’s beta and margin (gamma-beta ratio) to control the strength of preference separation and training behavior.
- Loss configuration for stability and intent: Supports sigmoid (recommended) or hinge loss types and optional SFT regularization to reduce capability forgetting.
Use case example: Train a 7B model on an instruction-following preference dataset (e.g., UltraFeedback) to improve helpfulness and adherence to preference signals with a straightforward single-node setup.
Quick Start
Ask the AI to train a Mistral 7B SimPO model using the provided training script and a YAML config for UltraFeedback preference pairs, with acceleration via DeepSpeed ZeRO-3.