simpo-training

Configure and run SimPO training for reference-free LLM preference optimization.

3|Updated Mar 20, 2026
One-click install
npx skills add https://github.com/ever-oli/io --skill simpo-training-ever-oli
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: simpo-training
Source: https://github.com/ever-oli/io/tree/main/skills/mlops/training/simpo
Command: npx skills add https://github.com/ever-oli/io --skill simpo-training-ever-oli

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires torch, transformers, datasets, trl, accelerate, and includes scripts (resource) and references (resource) components.

What problem does it solve?

SimPO provides a reference-free approach to preference optimization for aligning large language models, enabling simpler and faster training without a separate reference model.

Core Features & Use Cases

  • Reference-free optimization for aligning LLMs without needing a fixed reference policy.
  • Configurable training pipelines with common hyperparameters (learning_rate, beta, gamma_beta_ratio, sft_weight, loss_type) and dataset_mixer setups.
  • End-to-end guidance for setup, debugging, and production-ready training workflows across model sizes (7B to 70B).

Quick Start

Run the provided script (scripts/run_simpo.py) with a valid YAML config to begin SimPO alignment.

Frequently Asked Questions about simpo-training

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I align an LLM using reference-free preference optimization?▼

SimPO enables reference-free preference optimization by aligning LLMs without a separate reference model. You configure training parameters like beta, gamma_beta_ratio, and loss_type in a YAML file to run the alignment script directly on preference datasets.

What is the difference between SimPO and standard RLHF training?▼

SimPO eliminates the separate reference model required by standard RLHF, simplifying the pipeline and reducing memory overhead. It uses a length-normalized reward formulation with configurable beta and gamma_beta_ratio parameters instead of comparing against a fixed reference policy.

Can I run SimPO training on 70B parameter models with PyTorch and Transformers?▼

Yes, SimPO supports end-to-end training workflows for large language models ranging from 7B to 70B parameters. It operates using standard dependencies including torch, transformers, and accelerate to handle distributed training configurations.

How do I configure dataset mixing and loss functions for preference tuning?▼

You configure dataset mixing and loss functions through YAML-based config fields. Define data proportions using dataset_mixer, select the loss_type, and adjust sft_weight to apply optional SFT regularization alongside the preference optimization loss.

Why does my SimPO training require specific hyperparameters like gamma_beta_ratio?▼

SimPO requires hyperparameters like gamma_beta_ratio and beta because it uses a reference-free reward calculation. These parameters control the target reward margin and regularization strength, ensuring the model converges correctly without a reference policy.