retrain
retrain is a TOML-first RLVR (Reinforcement Learning with Verifiable Rewards) trainer for LLMs, built to make experiments easier to run, compare, and repeat.
If you are new, start with install -> explore commands -> run a tiny config.
Install
Requires Python 3.11+.
# CLI + docs exploration
uv tool install retrain
# Local GPU training (adds torch)
uv tool install "retrain[local]"
# Remote Tinker backend
uv tool install "retrain[tinker]"
If you are developing this repo directly:
pip install -e ".[dev]"
Explore the CLI
Use these first to understand what exists before you train:
retrain --help
retrain man
retrain man --topic quickstart
retrain man --list-topics
retrain backends
retrain doctor
Useful inspection commands while iterating:
retrain explain retrain.toml # dry-run: what this config would do
retrain status logs # summarize runs/campaigns under logs/
retrain plugins # list built-ins + discovered plugins
retrain init-plugin --kind transform --name my_transform --with-test
retrain man --json --topic quickstart
retrain man --path # editable bundled manual source
Tiny TOML Demo
Create mini.toml:
max_tokens = 1024 below is an intentional smoke-test profile.
The standard default for full runs is max_tokens = 10240.
[model]
model = "Qwen/Qwen3-4B-Instruct-2507"
[algorithm]
advantage_mode = "grpo"
transform_mode = "none"
[training]
max_steps = 20
batch_size = 2
group_size = 8
max_tokens = 1024
lr = 4e-5
[backend]
backend = "local"
adapter_path = "adapters/mini"
[logging]
log_dir = "logs/mini"
Run it:
retrain mini.toml
Override fields from CLI without editing TOML:
retrain mini.toml --seed 42 --max-steps 40 --wandb-project my-project
Quick Start from Template
retrain init --template quickstart
retrain retrain.toml
Other templates:
retrain init --list
retrain init --template experiment
retrain init --template campaign
retrain init --interactive
retrain Workflow
The normal retrain loop is:
- Define TOML config (
retrain.tomlorcampaign.toml) - Dry-run with
retrain explain ... - Train with
retrain ... - Inspect with
retrain status logs
Use retrain man --topic capacity only when you are sizing longer runs.
Why retrain
- Experiment-first workflow: config -> explain -> run -> compare
- Composable advantage pipeline: GRPO/MaxRL + GTPO/HICRA/SEPA
- Pluggable backends and inference engines
- Pluggable rewards (match, math, judge, custom)
- Campaign sweeps from one TOML
- LoRA-Squeeze rank analysis/compression
- Checkpoint resume and run status tooling
Common Config Patterns
Use verifiers environments from TOML:
[environment]
provider = "verifiers"
id = "primeintellect/gsm8k"
args = { split = "train" }
auto_install = true
max_turns = 8
Use custom advantage + transform plugins from TOML:
[algorithm]
advantage_mode = "my_advantages.hipa_like_advantages"
transform_mode = "my_transforms.make_transform_spec"
Use a full algorithm plugin (overrides composable advantage+transform path):
[algorithm]
algorithm_mode = "my_algorithms.my_algorithm"
Documentation
Full docs: retrain.readthedocs.io
- Getting Started
- Configuration Reference
- Advantage Functions
- SEPA Scheduling
- Campaigns
- Capacity Planning
- LoRA-Squeeze
- Reward Functions
- Inference Engines
Contributor note: run retrain man --check in CI to detect stale auto-generated manual blocks, run retrain man --sync locally to refresh them, run uv run mkdocs build --strict before publishing docs changes, and run make chaos-backend-workflow before pushing backend/orchestrator changes.
Metadata
Release files for retrain 0.3.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| retrain-0.3.2.tar.gz | 688.6 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| retrain-0.3.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 897.4 kB
Release files / retrain-0.3.2.tar.gz
| Download URL | retrain-0.3.2.tar.gz |
|---|---|
| Size | 688.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
75db75e91fd2e673ecb7049a70a239ede0497e04bfa25e2f34738c5387cb0bd3
|
|
BLAKE2b-256 checksum How to use checksums |
e1a4893011d32744c89db80961330ee40dedece83e56a91cd5298f3157780575
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 15, 2026.
Transparency logRelease files / retrain-0.3.2-py3-none-any.whl
| Download URL | retrain-0.3.2-py3-none-any.whl |
|---|---|
| Size | 208.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3b444559559e3489c21773ee43fcc46e55e03e189d937c2437223987711bb8d3
|
|
BLAKE2b-256 checksum How to use checksums |
36fb79d123803d6f3eaf527192f9b0540c617ad543fbe77d2eb9a11f026f713f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 15, 2026.
Transparency logSecurity for retrain 0.3.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for retrain-0.3.2.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 15, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.