simpo-training

Trains LLMs with reference-free SimPO optimization using labeled preference datasets and tunable hyperparameters.

Updated Apr 12, 2026
One-click install
npx skills add https://github.com/DaddyElonMusk69/motis-agent --skill simpo-training-daddyelonmusk69
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: simpo-training
Source: https://github.com/DaddyElonMusk69/motis-agent/tree/main/optional-skills/mlops/simpo
Command: npx skills add https://github.com/DaddyElonMusk69/motis-agent --skill simpo-training-daddyelonmusk69

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

SimPO provides a reference-free framework for aligning LLMs by directly optimizing preferences (chosen vs rejected outputs), eliminating the need for a fixed reference model.

Core Features & Use Cases

  • Reference-free optimization: trains directly on model outputs without a separate reference model.
  • Flexible workflows: supports various model sizes and tasks (instruction-following, reasoning, code) and hyperparameter tuning with configurable beta, gamma_beta_ratio, and loss_type.
  • Practical workflows: datasets for preferences (train/test) and SFT regularization to preserve capabilities.

Quick Start

Install the required environment and run the SimPO training workflow with your chosen base model and preferred preference dataset.

Frequently Asked Questions about simpo-training

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

FAQPage Schema
What is reference-free LLM preference optimization and how does it work?

Reference-free LLM preference optimization aligns models by directly rewarding chosen outputs over rejected ones. SimPO implements this by eliminating the fixed reference model, using configurable parameters like beta and loss_type to optimize instruction-following and reasoning tasks directly from preference datasets.

How do I train an LLM with a preference dataset without using a reference model?

To train an LLM with a preference dataset without a reference model, provide a base model, labeled chosen/rejected outputs, and training configuration parameters like learning_rate, beta, gamma_beta_ratio, and loss_type. SimPO applies optional SFT regularization to preserve base capabilities during alignment.

Does SimPO work for code generation and reasoning tasks across different model sizes?

SimPO works for code generation, reasoning, and general instruction-following across various model sizes. Its flexible workflow supports hyperparameter tuning with configurable beta, gamma_beta_ratio, and loss_type to adapt preference optimization to different task requirements.

What is the best way to align LLMs without maintaining a separate reference model?

The best way to align LLMs without a separate reference model is using SimPO, which directly optimizes preferences from chosen vs rejected outputs. This approach reduces deployment overhead by removing the reference model while applying configurable loss_type and SFT regularization for stable training.

Why do I need SFT regularization during preference optimization?

SFT regularization is needed during preference optimization to preserve the base model's existing capabilities. SimPO applies optional SFT regularization alongside preference learning to prevent capability degradation when directly rewarding chosen outputs over rejected ones during alignment training.

What parameters do I need to configure for SimPO training?

SimPO training requires configuring learning_rate, beta, gamma_beta_ratio, and loss_type parameters. You also need a base model and labeled preference dataset with chosen and rejected outputs, with optional SFT regularization to control the alignment process across instruction-following and reasoning tasks.