simpo-training

Train language models from chosen/rejected preference pairs without a reference model.

Updated Aug 27, 2026
One-click install
npx skills add https://github.com/big4council-prog/b4c-agent --skill simpo-training-big4council-prog
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: simpo-training
Source: https://github.com/big4council-prog/b4c-agent/tree/main/optional-skills/mlops/simpo
Command: npx skills add https://github.com/big4council-prog/b4c-agent --skill simpo-training-big4council-prog

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

SimPO solves inefficient and reference-model-dependent preference alignment by enabling reference-free training from chosen/rejected pairs, so you can get better aligned behavior without the DPO-style setup overhead.

Core Features & Use Cases

  • Reference-free preference optimization: Trains directly from preference pairs (chosen vs rejected) without requiring π_ref or a separate reference model.
  • SimPO loss with controllable preference margin: Uses β and gamma_beta_ratio to scale reward signal and enforce a target margin in logit space.
  • Optionally preserve capabilities with SFT regularization: Adds an SFT component via sft_weight to reduce forgetting, especially when starting from instruct/chat models.
  • Use Case: If you have an UltraFeedback-style dataset of (prompt, chosen, rejected) pairs and want to improve instruction-following, you can fine-tune a Mistral or Llama model using SimPO to push chosen responses above rejected ones.

Quick Start

Use the simpo-training skill to fine-tune a model on a chosen/rejected preference dataset by running SimPO training with a config like training_configs/mistral-7b-base-simpo.yaml.

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 with chosen and rejected preference pairs without a reference model?

SimPO enables reference-free preference optimization by training directly on chosen/rejected pairs, eliminating the need for a separate reference model like π_ref used in DPO setups.

Do I need a separate reference model for preference optimization like DPO?

No, SimPO is a reference-free preference optimization method that trains directly from chosen/rejected pairs, eliminating the DPO-style setup overhead of loading a separate π_ref reference model.

How do I fine-tune a Mistral or Llama model on an UltraFeedback preference dataset?

You can fine-tune Mistral or Llama models on UltraFeedback-style prompt/chosen/rejected datasets using SimPO training with a configuration file like training_configs/mistral-7b-base-simpo.yaml.

Can I prevent capability forgetting during reference-free preference tuning?

Yes, SimPO supports optional SFT regularization via an sft_weight term to preserve capabilities and reduce forgetting, which is especially useful when starting from instruct or chat models.

What distinguishes SimPO from other preference optimization methods for LLM alignment?

SimPO distinguishes itself by being reference-free and using β and gamma_beta_ratio to scale reward signals and enforce a target preference margin, avoiding the computational overhead of DPO-style reference models.

When should I not use SimPO for preference alignment?

If your dataset lacks chosen/rejected preference pairs or requires a reference model for strict policy optimization, SimPO's reference-free approach may not fit your preference alignment requirements.