What problem does it solve?
SimPO provides a practical, reference-free method to align large language models to human preference data, eliminating the need for a separate reference model and reducing compute and complexity compared with DPO or PPO.
Core Features & Use Cases
- Reference-free preference optimization: Directly optimizes chosen/rejected pairs using sigmoid or hinge loss without a reference policy.
- Configurable training controls: Exposes beta, gamma_beta_ratio, loss_type, sft_weight, learning rate, and batch/accumulation settings for model-size-specific tuning.
- Datasets and tooling guidance: Includes dataset formats, mixing strategies, preprocessing tips, and integration notes for Hugging Face datasets, Accelerate, DeepSpeed, and FlashAttention.
- Use case: Fine-tune a 7B–8B model on UltraFeedback-style preference pairs to improve instruction following or reasoning quality on chat and code tasks.
Quick Start
Launch SimPO training with your preference dataset using the provided training_configs and an appropriate accelerate configuration to fine-tune the model.