Spaces:
Sleeping
Sleeping
| # PERMANENCE β training configuration. | |
| # | |
| # Four-stage pipeline: supervised warmup -> format-coverage gate -> | |
| # GRPO -> held-out evaluation. Single NVIDIA T4 GPU (16 GB VRAM). | |
| # End-to-end runtime ~1 h 20 min. | |
| # | |
| # See docs/METHODS.md for the rationale behind every hyperparameter | |
| # on this page. | |
| model_name: unsloth/Llama-3.2-3B-Instruct-bnb-4bit | |
| # 300 prompts x group_size=4 rollouts = 1 200 total training episodes. | |
| total_episodes: 300 | |
| # Group size chosen so per-device batch equals group size; this avoids | |
| # Unsloth's auto-batching inflating memory on a 16 GB T4. | |
| group_size: 4 | |
| # Standard TRL defaults for PPO-style optimisation on LoRA adapters. | |
| learning_rate: 4.0e-5 | |
| # KL coefficient against the SFT reference model. The TRL default 0.04 | |
| # was chosen deliberately β a looser constraint (0.02 in a pilot) lets | |
| # the policy drift away from its warmup-established calibration once | |
| # the curriculum phases in harder scenarios. | |
| kl_coefficient: 0.04 | |
| # Two inner PPO updates per generation batch. Trades a small amount of | |
| # off-policy drift for faster convergence. | |
| ppo_epochs: 2 | |
| gradient_clip: 1.0 | |
| lora_r: 16 | |
| lora_alpha: 16 | |
| load_in_4bit: true | |
| max_seq_length: 1088 | |
| output_dir: ./training/artifacts | |
| checkpoint_frequency: 150 | |
| warmup_sft_epochs: 10 | |
| format_reward_cutoff: 300 | |
| eval_episodes: 36 | |
| eval_seed_offset: 50000 | |
| # Domain filter applied to the curriculum sampler. Training focuses on | |
| # the devtools domain (filesystem / git / database). The meridian | |
| # domain is also registered β it demonstrates that the pipeline is | |
| # domain-agnostic β but is not sampled during training. | |
| domain: devtools | |