Toolverse
All skills

simpo-training

by davila7

Simple Preference Optimization for LLM alignment. Reference-free alternative to DPO with better performance (+6.4 points on AlpacaEval 2.0). No reference model needed, more efficient than DPO. Use for preference alignment when want simpler, faster training than DPO/PPO.

Installation

Pick a client and clone the repository into its skills directory.

Installation

Quick info

Author
davila7
Category
Security

About this skill

Simple Preference Optimization for LLM alignment. Reference-free alternative to DPO with better performance (+6.4 points on AlpacaEval 2.0). No reference model needed, more efficient than DPO. Use for preference alignment when want simpler, faster training than DPO/PPO.

How to use

  1. Przygotuj środowisko: utwórz nowe środowisko Conda z Pythonem 3.10, aktywuj je, a następnie zainstaluj PyTorch 2.2.2 ze strony pytorch.org/get-started/locally/ wybierając swoją konfigurację sprzętu.

  2. Sklonuj repozytorium alignment-handbook z GitHuba, przejdź do katalogu i zainstaluj pakiet za pomocą pip install.

  3. Zainstaluj Flash Attention 2, które przyspiesza trenowanie: uruchom pip install flash-attn --no-build-isolation.

  4. Przygotuj plik konfiguracji trenowania (np. mistral-7b-base-simpo.yaml) – określ model bazowy (np. Mistral 7B), dataset (np. HuggingFaceH4/ultrafeedback_binarized), oraz hiperparametry SimPO takie jak beta (2.0–10.0 dla skalowania nagród) i gamma_beta_ratio (0–1 dla marginesu docelowego).

  5. Uruchom trenowanie za pomocą accelerate launch z plikiem konfiguracji deepspeed_zero3.yaml oraz skryptem run_simpo.py, przekazując ścieżkę do pliku konfiguracji trenowania.

  6. Monitoruj postęp trenowania poprzez logi accelerate – model będzie optymalizowany na podstawie preferencji z datasetu bez potrzeby osobnego modelu referencyjnego.

Related skills