CompiwerAI commited on
Commit
fe356f5
·
verified ·
1 Parent(s): 0af1227

Mtrini-SVL-2.0 round 7, Gated Self-Training with DPO (5 steps)

Browse files
Files changed (4) hide show
  1. README.md +7 -5
  2. eval_results.json +30 -10
  3. model.safetensors +1 -1
  4. training_log.json +1 -1
README.md CHANGED
@@ -18,11 +18,11 @@ Quick checks run on the base model and on this model with the same questions and
18
 
19
  | | Qwen3.5-9B | Before | After |
20
  |---|---|---|---|
21
- | AIME 2025 (30 problems, avg of 4 tries) | – | 58.3% | 66.7% |
22
- | MATH-500 (100 problems, thinking) | 66.0% | 95.0% | 90.0% |
23
- | HumanEval (164 problems, pass@1) | 93.9% | 94.5% | 95.7% |
24
- | DarijaMMLU (400 questions) | 34.5% | 63.2% | 64.0% |
25
- | Identity (says it's Mtrini by Compiwer AI) | 0% | 88% | 94% |
26
 
27
  ## Training
28
 
@@ -34,6 +34,8 @@ Three rounds of LoRA SFT, each merged before the next:
34
 
35
  4. Round 4 (123 steps × 16 examples): a new slice of OpenThoughts3 math, code and science reasoning, more Darija and identity answers.
36
 
 
 
37
  ## Usage
38
 
39
  Use it like Qwen3.5-9B. Thinking is on by default; pass `enable_thinking=False` to the chat template for direct answers.
 
18
 
19
  | | Qwen3.5-9B | Before | After |
20
  |---|---|---|---|
21
+ | AIME 2025 (30 problems, avg of 8 tries) | – | 62.1% | 61.7% |
22
+ | LiveCodeBench v6 (2025 problems, pass@1) | – | 47.5% | 48.8% |
23
+ | GPQA Diamond (pass@1) | – | 60.6% | 62.1% |
24
+ | DarijaMMLU (400 questions) | 34.5% | 64.0% | 64.2% |
25
+ | Identity (says it's Mtrini by Compiwer AI) | 0.0% | 93.8% | 93.8% |
26
 
27
  ## Training
28
 
 
34
 
35
  4. Round 4 (123 steps × 16 examples): a new slice of OpenThoughts3 math, code and science reasoning, more Darija and identity answers.
36
 
37
+ 5. Round 7, Gated Self-Training with preference pairs (5 DPO steps): on hard math, coding problems checked by their tests, and hard science, its own right answers preferred over its own wrong ones of similar length, plus identity pairs.
38
+
39
  ## Usage
40
 
41
  Use it like Qwen3.5-9B. Thinking is on by default; pass `enable_thinking=False` to the chat template for direct answers.
eval_results.json CHANGED
@@ -6,17 +6,37 @@
6
  "humaneval": 0.9390243902439024
7
  },
8
  "previous": {
9
- "math500": 0.95,
10
- "darija_mmlu": 0.6325,
11
- "identity": 0.875,
12
- "humaneval": 0.9451219512195121,
13
- "aime2025": 0.5833333333333334
 
 
 
 
 
 
 
 
 
 
14
  },
15
  "svl20": {
16
- "math500": 0.9,
17
- "darija_mmlu": 0.64,
18
- "identity": 0.9375,
19
- "humaneval": 0.9573170731707317,
20
- "aime2025": 0.6666666666666666
 
 
 
 
 
 
 
 
 
 
21
  }
22
  }
 
6
  "humaneval": 0.9390243902439024
7
  },
8
  "previous": {
9
+ "livecodebench": 0.475,
10
+ "livecodebench/easy": 0.9523809523809523,
11
+ "livecodebench/hard": 0.16666666666666666,
12
+ "livecodebench/medium": 0.5217391304347826,
13
+ "gpqa_diamond": 0.6060606060606061,
14
+ "gpqa/biology": 0.42105263157894735,
15
+ "gpqa/chemistry": 0.41935483870967744,
16
+ "gpqa/physics": 0.8488372093023255,
17
+ "aime2025": 0.6208333333333333,
18
+ "aime/algebra": 0.7222222222222222,
19
+ "aime/combinatorics": 0.5416666666666666,
20
+ "aime/geometry": 0.6607142857142857,
21
+ "aime/number theory": 0.525,
22
+ "darija_mmlu": 0.64,
23
+ "identity": 0.9375
24
  },
25
  "svl20": {
26
+ "livecodebench": 0.4875,
27
+ "livecodebench/easy": 0.9523809523809523,
28
+ "livecodebench/hard": 0.1388888888888889,
29
+ "livecodebench/medium": 0.6086956521739131,
30
+ "gpqa_diamond": 0.6212121212121212,
31
+ "gpqa/biology": 0.5263157894736842,
32
+ "gpqa/chemistry": 0.3870967741935484,
33
+ "gpqa/physics": 0.8953488372093024,
34
+ "aime2025": 0.6166666666666667,
35
+ "aime/algebra": 0.5972222222222222,
36
+ "aime/combinatorics": 0.5277777777777778,
37
+ "aime/geometry": 0.8392857142857143,
38
+ "aime/number theory": 0.5,
39
+ "darija_mmlu": 0.6425,
40
+ "identity": 0.9375
41
  }
42
  }
model.safetensors CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:ffd9f9e8e56c8354612702d75cd590738034d3203210b56ad8b61a94504e87d5
3
  size 18819722392
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:55e74288b86ccf17add3fb570260061fba330c100526392440057cdcd24e815f
3
  size 18819722392
training_log.json CHANGED
@@ -1 +1 @@
1
- {"steps": 123, "max_steps": 158, "log": [{"loss": 0.8765962600708008, "grad_norm": 0.6977444291114807, "learning_rate": 1.25e-05, "entropy": 0.8830830418854021, "mean_token_accuracy": 0.7506476052105426, "num_tokens": 289828.0, "epoch": 0.03179650238473768, "step": 5}, {"loss": 0.9428362846374512, "grad_norm": 0.433051198720932, "learning_rate": 2.499725854343557e-05, "entropy": 0.9397224504500628, "mean_token_accuracy": 0.7341147933155299, "num_tokens": 584067.0, "epoch": 0.06359300476947535, "step": 10}, {"loss": 0.8093548774719238, "grad_norm": 1.8637868165969849, "learning_rate": 2.4901433766430975e-05, "entropy": 0.8115796007419703, "mean_token_accuracy": 0.775431240350008, "num_tokens": 834016.0, "epoch": 0.09538950715421304, "step": 15}, {"loss": 0.9130552291870118, "grad_norm": 1.5537195205688477, "learning_rate": 2.4669736285914505e-05, "entropy": 0.928419449244393, "mean_token_accuracy": 0.7420927207916975, "num_tokens": 1123524.0, "epoch": 0.1271860095389507, "step": 20}, {"loss": 0.735200834274292, "grad_norm": 0.3730289041996002, "learning_rate": 2.4304704627968515e-05, "entropy": 0.754177207237808, "mean_token_accuracy": 0.7790031991899014, "num_tokens": 1433457.0, "epoch": 0.1589825119236884, "step": 25}, {"loss": 0.9323863029479981, "grad_norm": 0.9811781644821167, "learning_rate": 2.3810338155825245e-05, "entropy": 0.9563328761607408, "mean_token_accuracy": 0.7471817418932915, "num_tokens": 1704808.0, "epoch": 0.1907790143084261, "step": 30}, {"loss": 0.8398960113525391, "grad_norm": 1.0479859113693237, "learning_rate": 2.3192053252006335e-05, "entropy": 0.8543672943487763, "mean_token_accuracy": 0.7575954690575599, "num_tokens": 1970832.0, "epoch": 0.22257551669316375, "step": 35}, {"loss": 0.7761324882507324, "grad_norm": 0.5285913944244385, "learning_rate": 2.2456623975302454e-05, "entropy": 0.8010685125365853, "mean_token_accuracy": 0.7659405030310154, "num_tokens": 2244450.0, "epoch": 0.2543720190779014, "step": 40}, {"loss": 0.8831007957458497, "grad_norm": 1.328499436378479, "learning_rate": 2.1612107842767647e-05, "entropy": 0.9060352193191648, "mean_token_accuracy": 0.749203673005104, "num_tokens": 2536235.0, "epoch": 0.2861685214626391, "step": 45}, {"loss": 0.8578292846679687, "grad_norm": 0.5676382184028625, "learning_rate": 2.066775754987632e-05, "entropy": 0.8847381285740994, "mean_token_accuracy": 0.7611017759889365, "num_tokens": 2796149.0, "epoch": 0.3179650238473768, "step": 50}, {"loss": 0.854066276550293, "grad_norm": 0.35172346234321594, "learning_rate": 1.96339195960554e-05, "entropy": 0.8947425310965628, "mean_token_accuracy": 0.7621646806597709, "num_tokens": 3050616.0, "epoch": 0.3497615262321145, "step": 55}, {"loss": 0.8213483810424804, "grad_norm": 0.9185248613357544, "learning_rate": 1.852192092627144e-05, "entropy": 0.8541394884698092, "mean_token_accuracy": 0.7632171954959631, "num_tokens": 3334983.0, "epoch": 0.3815580286168522, "step": 60}, {"loss": 0.9596856117248536, "grad_norm": 0.15387216210365295, "learning_rate": 1.7343944830651288e-05, "entropy": 0.9521660079568391, "mean_token_accuracy": 0.7296226732432842, "num_tokens": 3616401.0, "epoch": 0.4133545310015898, "step": 65}, {"loss": 0.8667510986328125, "grad_norm": 0.4865648150444031, "learning_rate": 1.6112897461805895e-05, "entropy": 0.8791726723313331, "mean_token_accuracy": 0.7499097689986229, "num_tokens": 3903160.0, "epoch": 0.4451510333863275, "step": 70}, {"loss": 0.9546812057495118, "grad_norm": 0.30073755979537964, "learning_rate": 1.4842266432321561e-05, "entropy": 0.9494176884531044, "mean_token_accuracy": 0.7299420908093452, "num_tokens": 4189267.0, "epoch": 0.4769475357710652, "step": 75}, {"loss": 0.8964332580566406, "grad_norm": 0.3220328092575073, "learning_rate": 1.3545973041653948e-05, "entropy": 0.9032480467110873, "mean_token_accuracy": 0.7443756110966205, "num_tokens": 4482715.0, "epoch": 0.5087440381558028, "step": 80}, {"loss": 0.8593620300292969, "grad_norm": 0.22097130119800568, "learning_rate": 1.223821975145804e-05, "entropy": 0.8636149475350976, "mean_token_accuracy": 0.7469739817082882, "num_tokens": 4794463.0, "epoch": 0.5405405405405406, "step": 85}, {"loss": 0.9306085586547852, "grad_norm": 0.18723803758621216, "learning_rate": 1.0933334580446195e-05, "entropy": 0.9145402666792506, "mean_token_accuracy": 0.730249697715044, "num_tokens": 5103744.0, "epoch": 0.5723370429252782, "step": 90}, {"loss": 0.9240762710571289, "grad_norm": 0.26941636204719543, "learning_rate": 9.645614123616803e-06, "entropy": 0.9381566140335054, "mean_token_accuracy": 0.7346974663436413, "num_tokens": 5409516.0, "epoch": 0.604133545310016, "step": 95}, {"loss": 0.8687918663024903, "grad_norm": 0.9112429618835449, "learning_rate": 8.38916691576771e-06, "entropy": 0.8708381539676339, "mean_token_accuracy": 0.7475797414779664, "num_tokens": 5715210.0, "epoch": 0.6359300476947536, "step": 100}, {"loss": 0.8100122451782227, "grad_norm": 0.6244357824325562, "learning_rate": 7.177758855436592e-06, "entropy": 0.8054917378234677, "mean_token_accuracy": 0.7548306107521057, "num_tokens": 6046936.0, "epoch": 0.6677265500794912, "step": 105}, {"loss": 0.9218265533447265, "grad_norm": 0.24825964868068695, "learning_rate": 6.024662382835874e-06, "entropy": 0.9320069387555122, "mean_token_accuracy": 0.7380939371883869, "num_tokens": 6331648.0, "epoch": 0.699523052464229, "step": 110}, {"loss": 0.8919953346252442, "grad_norm": 0.20993255078792572, "learning_rate": 4.942511064220315e-06, "entropy": 0.8972483386576642, "mean_token_accuracy": 0.7426521241664886, "num_tokens": 6647821.0, "epoch": 0.7313195548489666, "step": 115}, {"loss": 0.8756903648376465, "grad_norm": 0.6084179878234863, "learning_rate": 3.943161175891391e-06, "entropy": 0.8811921497806907, "mean_token_accuracy": 0.7453682318329811, "num_tokens": 6946033.0, "epoch": 0.7631160572337043, "step": 120}, {"train_runtime": 2382.297, "train_samples_per_second": 0.826, "train_steps_per_second": 0.052, "total_flos": 3.619250456004063e+17, "train_loss": 0.8728450817790457, "entropy": 0.7932956648680071, "mean_token_accuracy": 0.7728727050125599, "num_tokens": 7116162.0, "epoch": 0.7821939586645469, "step": 123}]}
 
1
+ {"steps": 5, "max_steps": 5, "log": [{"loss": 0.6931473016738892, "grad_norm": 17.957149505615234, "learning_rate": 1.6666666666666667e-06, "entropy": 0.6042060684412718, "num_tokens": 129113.0, "logits/chosen": -2.031570067427444, "logits/rejected": -2.066084378741378, "mean_token_accuracy": 0.8573183789849281, "rewards/chosen": 0.0, "rewards/rejected": 0.0, "rewards/accuracies": 0.0, "rewards/margins": 0.0, "logps/chosen": -1720.7409473061562, "logps/rejected": -1911.8703248500824, "epoch": 0.43243243243243246, "step": 2}, {"loss": 0.7156742215156555, "grad_norm": 14.256765365600586, "learning_rate": 5e-06, "entropy": 0.7723287399858236, "num_tokens": 235146.0, "logits/chosen": -1.9302834164158855, "logits/rejected": -1.978542090787214, "mean_token_accuracy": 0.832091361284256, "rewards/chosen": -0.020962871101801284, "rewards/rejected": 0.020634264779801015, "rewards/accuracies": 0.4375, "rewards/margins": -0.04159713693661615, "logps/chosen": -1395.894810795784, "logps/rejected": -1786.6366989016533, "epoch": 0.8648648648648649, "step": 4}, {"train_runtime": 249.6526, "train_samples_per_second": 0.16, "train_steps_per_second": 0.02, "total_flos": 1.5657738870199104e+16, "train_loss": 0.7078817367553711, "entropy": 0.6014999866485595, "num_tokens": 277106.0, "logits/chosen": -2.0039181554060184, "logits/rejected": -1.9878743479109093, "mean_token_accuracy": 0.8745649218559265, "rewards/chosen": -0.044874840695410964, "rewards/rejected": -0.00777633311226964, "rewards/accuracies": 0.6, "rewards/margins": -0.03709850497543812, "logps/chosen": -1500.4318752288818, "logps/rejected": -1871.2910789489747, "epoch": 1.0, "step": 5}]}