uclaml/SPIN
SPIN is a self-play fine-tuning technique that iteratively improves language models by having them compete against previous versions.

Not currently ranked — collecting fresh signals.
star history
This repository provides the official implementation of a self-play fine-tuning method for large language models. The approach enables weaker models to improve by generating training data against stronger previous versions of themselves through iterative competition. The paper was published at ICML 2024 and includes training scripts, models (Zephyr-7B variants), and evaluation benchmarks for Open LLM Leaderboard and MT-Bench.
Frequently asked
- What is uclaml/SPIN?
- SPIN is a self-play fine-tuning technique that iteratively improves language models by having them compete against previous versions.
- Is SPIN open source?
- Yes — uclaml/SPIN is open source, released under the Apache-2.0 license.
- What language is SPIN written in?
- uclaml/SPIN is primarily written in Python.
- How popular is SPIN?
- uclaml/SPIN has 1.2k stars on GitHub.
- Where can I find SPIN?
- uclaml/SPIN is on GitHub at https://github.com/uclaml/SPIN.