henryphilf commited on
Commit
4649798
·
verified ·
1 Parent(s): cca10dd

Expand public evaluation set and regenerate frontier charts

Browse files
.gitattributes CHANGED
@@ -34,3 +34,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
  tokenizer/tokenizer.json filter=lfs diff=lfs merge=lfs -text
 
 
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
  tokenizer/tokenizer.json filter=lfs diff=lfs merge=lfs -text
37
+ assets/balance.png filter=lfs diff=lfs merge=lfs -text
MODEL_CARD.md CHANGED
@@ -61,7 +61,7 @@ model-index:
61
 
62
  # Pluto-2.1
63
 
64
- ### A 1.7B decision model that beats d1-2B on both measured decision benchmarks.
65
 
66
  Pluto-2.1 reads a state and typed questions, then returns a calibrated probability
67
  distribution for every candidate. It does not generate an answer, so there is
@@ -70,33 +70,42 @@ nothing to parse, nothing to retry, and nothing to hallucinate.
70
  Built solo on one **RTX 5060 Ti 16GB**.
71
 
72
  **Headline:** **0.6695** on Typed Decisions and **0.7208** on the matched
73
- DecisionBench comparison, versus **0.6325** and **0.6339** for d1-2B. One
74
- standalone 1.7B checkpoint, **2–255 candidates**, **choice / noul / score**,
75
- **Apache-2.0**.
 
76
 
77
  ---
78
 
79
  ## The receipts
80
 
81
- Same rows and same scorer for both models. Higher is better.
 
82
 
83
- | Model | Params | Typed Decisions | DecisionBench matched | Brier | KL |
84
- |---|---:|---:|---:|---:|---:|
85
- | **Pluto-2.1** | **1.738B** | **0.6695** | **0.7208** | **0.1261** | **0.2139** |
86
- | d1-2B | 1.918B | 0.6325 | 0.6339 | 0.1440 | 0.2958 |
 
 
 
87
 
88
  **What this means**
89
 
90
- - **+3.7 points** on the full 2,000-decision Typed Decisions test.
91
- - **+8.7 points** on the matched DecisionBench comparison.
92
- - **9.4% fewer parameters** than d1-2B.
93
- - **Sharper distributions**: lower Brier and KL on Typed Decisions, and lower
94
- NLL and Brier on DecisionBench.
 
95
  - **One forward pass.** No autoregressive decoding and no token bill.
 
96
 
97
  ![Accuracy](assets/benchmark_accuracy.png)
98
 
99
- ![Uplift](assets/uplift.png)
 
 
100
 
101
  ![Calibration](assets/calibration.png)
102
 
@@ -104,11 +113,11 @@ Same rows and same scorer for both models. Higher is better.
104
 
105
  ### Comparison hygiene
106
 
107
- Pluto-2.1 is a standalone merged checkpoint. The full 2,000-decision Typed
108
- Decisions test and a 1,565-row DecisionBench matched subset are reported. The
109
- DecisionBench subset is the same ≤16-candidate, ≤2,048-token accessibility slice
110
- used for the d1-2B comparison; it is not the full 23,900-row suite. The full
111
- suite is not claimed here.
112
 
113
  ---
114
 
@@ -190,8 +199,8 @@ The runtime returns candidate-aligned probabilities. It never generates text.
190
  ## Training
191
 
192
  - 2,000 LoRA steps on Pluto’s Typed Decisions and JEV decision data.
193
- - Selected checkpoint: 2,000 steps, the only tested checkpoint that beats d1-2B
194
- on both measured benchmarks.
195
  - Trained and merged on one 16GB consumer GPU.
196
  - The adapter is merged into the base; no PEFT dependency at inference.
197
  - The Typed Decisions test split was never used for training or checkpoint
 
61
 
62
  # Pluto-2.1
63
 
64
+ ### A 1.7B decision model that clears both d1 checkpoints and owns the balance.
65
 
66
  Pluto-2.1 reads a state and typed questions, then returns a calibrated probability
67
  distribution for every candidate. It does not generate an answer, so there is
 
70
  Built solo on one **RTX 5060 Ti 16GB**.
71
 
72
  **Headline:** **0.6695** on Typed Decisions and **0.7208** on the matched
73
+ DecisionBench comparison. It clears both d1-2B and d1-3B on both suites and posts
74
+ the **highest mean accuracy** in the comparison at **0.6952** — from a 1.738B
75
+ standalone checkpoint with **2–255 candidates**, **choice / noul / score**, and
76
+ **Apache-2.0** weights.
77
 
78
  ---
79
 
80
  ## The receipts
81
 
82
+ Same rows and same scorer for every locally measured model. Mean is the mean of
83
+ Typed Decisions and DecisionBench matched accuracy.
84
 
85
+ | Model | Params | Typed Decisions | DecisionBench matched | Mean |
86
+ |---|---:|---:|---:|---:|
87
+ | **Pluto-2.1** | **1.738B** | **0.6695** | **0.7208** | **0.6952** |
88
+ | Pluto-2 400M | 0.397B | **0.7835** | 0.5789 | 0.6812 |
89
+ | Bosun 3.1 1.7B (initializer) | 1.738B | 0.4980 | **0.8288** | 0.6634 |
90
+ | d1-3B | 3.123B | 0.6495 | 0.6486 | 0.6490 |
91
+ | d1-2B | 1.918B | 0.6325 | 0.6339 | 0.6332 |
92
 
93
  **What this means**
94
 
95
+ - **+3.7 points** over d1-2B and **+2.0 points** over d1-3B on Typed Decisions.
96
+ - **+8.7 points** over d1-2B and **+7.2 points** over d1-3B on DecisionBench.
97
+ - **Highest mean accuracy** across the two suites.
98
+ - **1.738B**: 9.4% smaller than d1-2B and 44% smaller than d1-3B.
99
+ - **Sharper distributions** than both d1 checkpoints: lower Typed Brier and KL,
100
+ lower DecisionBench NLL and Brier.
101
  - **One forward pass.** No autoregressive decoding and no token bill.
102
+ - **Bosun leads broad-only; Pluto-2 leads Typed-only; Pluto-2.1 owns the balance.**
103
 
104
  ![Accuracy](assets/benchmark_accuracy.png)
105
 
106
+ ![Mean accuracy](assets/average_accuracy.png)
107
+
108
+ ![Balance](assets/balance.png)
109
 
110
  ![Calibration](assets/calibration.png)
111
 
 
113
 
114
  ### Comparison hygiene
115
 
116
+ The Typed Decisions result is the full 2,000-decision test split. The
117
+ DecisionBench result is the 1,565-row matched subset used for every model in the
118
+ table: ≤16 candidates and ≤2,048-token prompts, not the full 23,900-row suite.
119
+ Bosun, Pluto-2, d1-2B, and d1-3B were all run locally on the same rows and
120
+ scored with the same code. Raw summaries are in enchmarks/. The full DecisionBench suite is not claimed.
121
 
122
  ---
123
 
 
199
  ## Training
200
 
201
  - 2,000 LoRA steps on Pluto’s Typed Decisions and JEV decision data.
202
+ - Selected checkpoint: 2,000 steps, the only tested checkpoint that clears both
203
+ d1-2B and d1-3B on both measured benchmarks.
204
  - Trained and merged on one 16GB consumer GPU.
205
  - The adapter is merged into the base; no PEFT dependency at inference.
206
  - The Typed Decisions test split was never used for training or checkpoint
README.md CHANGED
@@ -61,7 +61,7 @@ model-index:
61
 
62
  # Pluto-2.1
63
 
64
- ### A 1.7B decision model that beats d1-2B on both measured decision benchmarks.
65
 
66
  Pluto-2.1 reads a state and typed questions, then returns a calibrated probability
67
  distribution for every candidate. It does not generate an answer, so there is
@@ -70,33 +70,42 @@ nothing to parse, nothing to retry, and nothing to hallucinate.
70
  Built solo on one **RTX 5060 Ti 16GB**.
71
 
72
  **Headline:** **0.6695** on Typed Decisions and **0.7208** on the matched
73
- DecisionBench comparison, versus **0.6325** and **0.6339** for d1-2B. One
74
- standalone 1.7B checkpoint, **2–255 candidates**, **choice / noul / score**,
75
- **Apache-2.0**.
 
76
 
77
  ---
78
 
79
  ## The receipts
80
 
81
- Same rows and same scorer for both models. Higher is better.
 
82
 
83
- | Model | Params | Typed Decisions | DecisionBench matched | Brier | KL |
84
- |---|---:|---:|---:|---:|---:|
85
- | **Pluto-2.1** | **1.738B** | **0.6695** | **0.7208** | **0.1261** | **0.2139** |
86
- | d1-2B | 1.918B | 0.6325 | 0.6339 | 0.1440 | 0.2958 |
 
 
 
87
 
88
  **What this means**
89
 
90
- - **+3.7 points** on the full 2,000-decision Typed Decisions test.
91
- - **+8.7 points** on the matched DecisionBench comparison.
92
- - **9.4% fewer parameters** than d1-2B.
93
- - **Sharper distributions**: lower Brier and KL on Typed Decisions, and lower
94
- NLL and Brier on DecisionBench.
 
95
  - **One forward pass.** No autoregressive decoding and no token bill.
 
96
 
97
  ![Accuracy](assets/benchmark_accuracy.png)
98
 
99
- ![Uplift](assets/uplift.png)
 
 
100
 
101
  ![Calibration](assets/calibration.png)
102
 
@@ -104,11 +113,11 @@ Same rows and same scorer for both models. Higher is better.
104
 
105
  ### Comparison hygiene
106
 
107
- Pluto-2.1 is a standalone merged checkpoint. The full 2,000-decision Typed
108
- Decisions test and a 1,565-row DecisionBench matched subset are reported. The
109
- DecisionBench subset is the same ≤16-candidate, ≤2,048-token accessibility slice
110
- used for the d1-2B comparison; it is not the full 23,900-row suite. The full
111
- suite is not claimed here.
112
 
113
  ---
114
 
@@ -190,8 +199,8 @@ The runtime returns candidate-aligned probabilities. It never generates text.
190
  ## Training
191
 
192
  - 2,000 LoRA steps on Pluto’s Typed Decisions and JEV decision data.
193
- - Selected checkpoint: 2,000 steps, the only tested checkpoint that beats d1-2B
194
- on both measured benchmarks.
195
  - Trained and merged on one 16GB consumer GPU.
196
  - The adapter is merged into the base; no PEFT dependency at inference.
197
  - The Typed Decisions test split was never used for training or checkpoint
 
61
 
62
  # Pluto-2.1
63
 
64
+ ### A 1.7B decision model that clears both d1 checkpoints and owns the balance.
65
 
66
  Pluto-2.1 reads a state and typed questions, then returns a calibrated probability
67
  distribution for every candidate. It does not generate an answer, so there is
 
70
  Built solo on one **RTX 5060 Ti 16GB**.
71
 
72
  **Headline:** **0.6695** on Typed Decisions and **0.7208** on the matched
73
+ DecisionBench comparison. It clears both d1-2B and d1-3B on both suites and posts
74
+ the **highest mean accuracy** in the comparison at **0.6952** — from a 1.738B
75
+ standalone checkpoint with **2–255 candidates**, **choice / noul / score**, and
76
+ **Apache-2.0** weights.
77
 
78
  ---
79
 
80
  ## The receipts
81
 
82
+ Same rows and same scorer for every locally measured model. Mean is the mean of
83
+ Typed Decisions and DecisionBench matched accuracy.
84
 
85
+ | Model | Params | Typed Decisions | DecisionBench matched | Mean |
86
+ |---|---:|---:|---:|---:|
87
+ | **Pluto-2.1** | **1.738B** | **0.6695** | **0.7208** | **0.6952** |
88
+ | Pluto-2 400M | 0.397B | **0.7835** | 0.5789 | 0.6812 |
89
+ | Bosun 3.1 1.7B (initializer) | 1.738B | 0.4980 | **0.8288** | 0.6634 |
90
+ | d1-3B | 3.123B | 0.6495 | 0.6486 | 0.6490 |
91
+ | d1-2B | 1.918B | 0.6325 | 0.6339 | 0.6332 |
92
 
93
  **What this means**
94
 
95
+ - **+3.7 points** over d1-2B and **+2.0 points** over d1-3B on Typed Decisions.
96
+ - **+8.7 points** over d1-2B and **+7.2 points** over d1-3B on DecisionBench.
97
+ - **Highest mean accuracy** across the two suites.
98
+ - **1.738B**: 9.4% smaller than d1-2B and 44% smaller than d1-3B.
99
+ - **Sharper distributions** than both d1 checkpoints: lower Typed Brier and KL,
100
+ lower DecisionBench NLL and Brier.
101
  - **One forward pass.** No autoregressive decoding and no token bill.
102
+ - **Bosun leads broad-only; Pluto-2 leads Typed-only; Pluto-2.1 owns the balance.**
103
 
104
  ![Accuracy](assets/benchmark_accuracy.png)
105
 
106
+ ![Mean accuracy](assets/average_accuracy.png)
107
+
108
+ ![Balance](assets/balance.png)
109
 
110
  ![Calibration](assets/calibration.png)
111
 
 
113
 
114
  ### Comparison hygiene
115
 
116
+ The Typed Decisions result is the full 2,000-decision test split. The
117
+ DecisionBench result is the 1,565-row matched subset used for every model in the
118
+ table: ≤16 candidates and ≤2,048-token prompts, not the full 23,900-row suite.
119
+ Bosun, Pluto-2, d1-2B, and d1-3B were all run locally on the same rows and
120
+ scored with the same code. Raw summaries are in enchmarks/. The full DecisionBench suite is not claimed.
121
 
122
  ---
123
 
 
199
  ## Training
200
 
201
  - 2,000 LoRA steps on Pluto’s Typed Decisions and JEV decision data.
202
+ - Selected checkpoint: 2,000 steps, the only tested checkpoint that clears both
203
+ d1-2B and d1-3B on both measured benchmarks.
204
  - Trained and merged on one 16GB consumer GPU.
205
  - The adapter is merged into the base; no PEFT dependency at inference.
206
  - The Typed Decisions test split was never used for training or checkpoint
RESULTS.md CHANGED
@@ -1,21 +1,33 @@
1
  # Pluto-2.1 results
2
 
3
- ## Head-to-head
4
 
5
- Same rows and same scorer for both models. Higher accuracy is better; lower
6
- error and divergence are better.
7
 
8
- | Benchmark | Pluto-2.1 | d1-2B | Rows |
9
- |---|---:|---:|---:|
10
- | Typed Decisions accuracy | **0.6695** | 0.6325 | 2,000 decisions |
11
- | Typed Decisions Brier | **0.1261** | 0.1440 | 2,000 |
12
- | Typed Decisions KL | **0.2139** | 0.2958 | 2,000 |
13
- | DecisionBench matched accuracy | **0.7208** | 0.6339 | 1,565 |
14
- | DecisionBench matched NLL | **0.7439** | 0.9333 | 1,565 |
15
- | DecisionBench matched Brier | **0.3730** | 0.4510 | 1,565 |
 
 
 
 
 
 
16
 
17
- Pluto-2.1 uses **1.738B** parameters versus **1.918B** for d1-2B, a 9.4%
18
- reduction.
 
 
 
 
 
 
19
 
20
  ## Typed Decisions by primitive
21
 
@@ -37,9 +49,9 @@ reduction.
37
 
38
  ## Evaluation scope
39
 
40
- Typed Decisions is the full 2,000-decision test split. The DecisionBench result
41
- is a 1,565-row matched subset limited to ≤16 candidates and ≤2,048-token prompts;
42
- it is not the full 23,900-row suite. The full suite is not claimed.
43
 
44
  ## Checkpoint selection
45
 
@@ -50,4 +62,4 @@ it is not the full 23,900-row suite. The full suite is not claimed.
50
  | **2,000** | **0.6695** | **0.7208** |
51
 
52
  The 2,000-step checkpoint is shipped because it is the only tested checkpoint
53
- that beats d1-2B on both measured benchmarks.
 
1
  # Pluto-2.1 results
2
 
3
+ ## General-model comparison
4
 
5
+ Same rows and same scorer for every locally measured model. `Mean` is the mean
6
+ of Typed Decisions and DecisionBench matched accuracy.
7
 
8
+ | Model | Params | Typed Decisions | DecisionBench matched | Mean |
9
+ |---|---:|---:|---:|---:|
10
+ | **Pluto-2.1** | **1.738B** | **0.6695** | **0.7208** | **0.6952** |
11
+ | Pluto-2 400M | 0.397B | **0.7835** | 0.5789 | 0.6812 |
12
+ | Bosun 3.1 1.7B (initializer) | 1.738B | 0.4980 | **0.8288** | 0.6634 |
13
+ | d1-3B | 3.123B | 0.6495 | 0.6486 | 0.6490 |
14
+ | d1-2B | 1.918B | 0.6325 | 0.6339 | 0.6332 |
15
+
16
+ Pluto-2.1 clears d1-2B by **+3.7** Typed and **+8.7** DecisionBench points, and
17
+ clears d1-3B by **+2.0** and **+7.2** points. It has the highest mean accuracy
18
+ of the five models. Bosun retains the broad-only lead; Pluto-2 400M retains the
19
+ Typed-only lead. Pluto-2.1 owns the balance.
20
+
21
+ ## Distribution quality
22
 
23
+ | Benchmark | Model | Brier | KL / NLL |
24
+ |---|---|---:|---:|
25
+ | Typed Decisions | **Pluto-2.1** | **0.1261** | **0.2139** |
26
+ | Typed Decisions | d1-3B | 0.1416 | 0.2854 |
27
+ | Typed Decisions | d1-2B | 0.1440 | 0.2958 |
28
+ | DecisionBench matched | **Pluto-2.1** | **0.3730** | **0.7439** |
29
+ | DecisionBench matched | d1-3B | 0.4937 | 1.0345 |
30
+ | DecisionBench matched | d1-2B | 0.4510 | 0.9333 |
31
 
32
  ## Typed Decisions by primitive
33
 
 
49
 
50
  ## Evaluation scope
51
 
52
+ Typed Decisions is the full 2,000-decision test split. DecisionBench is a
53
+ 1,565-row matched subset limited to ≤16 candidates and ≤2,048-token prompts; it
54
+ is not the full 23,900-row suite. The full suite is not claimed.
55
 
56
  ## Checkpoint selection
57
 
 
62
  | **2,000** | **0.6695** | **0.7208** |
63
 
64
  The 2,000-step checkpoint is shipped because it is the only tested checkpoint
65
+ that clears both d1-2B and d1-3B on both measured benchmarks.
assets/average_accuracy.png ADDED
assets/balance.png ADDED

Git LFS Details

  • SHA256: 317bbb10745dc56b9e78b0069e00aa86f31a929ccecee7a72070b4ab98e7ca6a
  • Pointer size: 131 Bytes
  • Size of remote file: 113 kB
assets/benchmark_accuracy.png CHANGED
assets/calibration.png CHANGED
assets/parameters.png CHANGED
assets/uplift.png DELETED
Binary file (68.2 kB)
 
benchmarks/README.md ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Benchmark summaries
2
+
3
+ All numbers here were measured locally on one RTX 5060 Ti 16GB using the same
4
+ rows and scorer for every model.
5
+
6
+ ## Typed Decisions
7
+
8
+ - Full independent test split: 400 held-out cases, 2,000 probabilistic decisions.
9
+ - Scored with the benchmark metric code: argmax accuracy, KL, Brier, ECE.
10
+ - Models: Pluto-2.1, Pluto-2, d1-2B, d1-3B. d1 checkpoints are zero-shot.
11
+
12
+ ## DecisionBench
13
+
14
+ - Public `Hanno-Labs/decision-bench` evaluation split.
15
+ - Matched accessibility subset: 1,565 of 23,900 rows, limited to ≤16 candidates
16
+ and ≤2,048-token prompts.
17
+ - Models: Pluto-2.1, Pluto-2, Bosun 3.1 1.7B, d1-2B, d1-3B.
18
+ - This is not the full 23,900-row suite. No full-suite score is claimed.
19
+
20
+ ## Files
21
+
22
+ - `pluto21_*.json` — Pluto-2.1 step 2,000
23
+ - `pluto2_*.json` — Pluto-2 400M
24
+ - `bosun_base_decisionbench_1565.json` — Bosun 3.1 1.7B initializer
25
+ - `d1_2b_*.json` — Liquid d1-2B
26
+ - `d1_3b_*.json` — Liquid d1-3B
27
+
28
+ The model card charts are generated from these values.
benchmarks/bosun_base_decisionbench_1565.json ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "Hanno-Labs/bosun-v3.1-1.7b",
3
+ "benchmark": "Hanno-Labs/decision-bench",
4
+ "split": "eval",
5
+ "rows": 1565,
6
+ "n": 1565,
7
+ "accuracy": 0.8287539936102236,
8
+ "nll": 0.4682318288769702,
9
+ "brier": 0.22878205160952753,
10
+ "ece": 0.06104286726143513,
11
+ "by_primitive": {
12
+ "ordinal_scoring": {
13
+ "n": 142,
14
+ "accuracy": 0.5633802816901409,
15
+ "nll": 0.92196065616788,
16
+ "brier": 0.4060187358413133,
17
+ "ece": 0.21783173873551476
18
+ },
19
+ "candidate_selection": {
20
+ "n": 893,
21
+ "accuracy": 0.8208286674132139,
22
+ "nll": 0.5566041466056967,
23
+ "brier": 0.2688005828349878,
24
+ "ece": 0.05700985998286913
25
+ },
26
+ "binary_classification": {
27
+ "n": 530,
28
+ "accuracy": 0.9132075471698113,
29
+ "nll": 0.1977677284862872,
30
+ "brier": 0.11386854680716972,
31
+ "ece": 0.040639265530327866
32
+ }
33
+ },
34
+ "latency_s": 192.5441007000045
35
+ }
benchmarks/d1_2b_decisionbench_1565.json ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "LiquidAI/d1-2B",
3
+ "benchmark": "Hanno-Labs/decision-bench",
4
+ "split": "eval",
5
+ "rows": 1565,
6
+ "n": 1565,
7
+ "accuracy": 0.6338658146964856,
8
+ "nll": 0.9333471682463929,
9
+ "brier": 0.45101948246027257,
10
+ "ece": 0.044773390533129946,
11
+ "by_primitive": {
12
+ "ordinal_scoring": {
13
+ "n": 142,
14
+ "accuracy": 0.4295774647887324,
15
+ "nll": 1.8746878255118757,
16
+ "brier": 0.7679486561148359,
17
+ "ece": 0.2915928996178949
18
+ },
19
+ "candidate_selection": {
20
+ "n": 893,
21
+ "accuracy": 0.5363941769316909,
22
+ "nll": 1.1348712329104207,
23
+ "brier": 0.543667454690635,
24
+ "ece": 0.051484785687556094
25
+ },
26
+ "binary_classification": {
27
+ "n": 530,
28
+ "accuracy": 0.8528301886792453,
29
+ "nll": 0.3415898794224763,
30
+ "brier": 0.21000329027034487,
31
+ "ece": 0.04181434994420001
32
+ }
33
+ },
34
+ "latency_s": 103.77784200001042,
35
+ "attention": "sdpa-fallback (flash attention unavailable on Windows PyTorch build)"
36
+ }
benchmarks/d1_2b_typed_test.json ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "LiquidAI/d1-2B",
3
+ "benchmark": "LocalLLaMA/typed-decisions",
4
+ "split": "test",
5
+ "mode": "zero-shot",
6
+ "n_cases": 400,
7
+ "n_decisions": 2000,
8
+ "accuracy": 0.6325,
9
+ "kl_from_gold": 0.2957730492630638,
10
+ "brier": 0.1439612976496623,
11
+ "ece": 0.038993063986546,
12
+ "by_kind": {
13
+ "choice": {
14
+ "n_decisions": 600,
15
+ "accuracy": 0.6233333333333333,
16
+ "kl_from_gold": 0.32338565053955876,
17
+ "brier": 0.14524759307617283,
18
+ "ece": 0.04631447069924948
19
+ },
20
+ "noul": {
21
+ "n_decisions": 600,
22
+ "accuracy": 0.7683333333333333,
23
+ "kl_from_gold": 0.22672597347530257,
24
+ "brier": 0.13186409573157287,
25
+ "ece": 0.06072048330627751
26
+ },
27
+ "score": {
28
+ "n_decisions": 800,
29
+ "accuracy": 0.5375,
30
+ "kl_from_gold": 0.32684890514651355,
31
+ "brier": 0.1520694775183465,
32
+ "ece": 0.037082597492069366
33
+ }
34
+ },
35
+ "by_workflow": {
36
+ "agent_trace_observability": {
37
+ "n_decisions": 500,
38
+ "accuracy": 0.554,
39
+ "kl_from_gold": 0.2749524761253962,
40
+ "brier": 0.14702185932793024,
41
+ "ece": 0.07304823447088081
42
+ },
43
+ "customer_service": {
44
+ "n_decisions": 500,
45
+ "accuracy": 0.642,
46
+ "kl_from_gold": 0.320992938711665,
47
+ "brier": 0.15642483940562715,
48
+ "ece": 0.08308475343289316
49
+ },
50
+ "invoice_processing": {
51
+ "n_decisions": 500,
52
+ "accuracy": 0.712,
53
+ "kl_from_gold": 0.3098222087702867,
54
+ "brier": 0.13534537250903614,
55
+ "ece": 0.06076691123801671
56
+ },
57
+ "security_incidents": {
58
+ "n_decisions": 500,
59
+ "accuracy": 0.622,
60
+ "kl_from_gold": 0.2773245734449073,
61
+ "brier": 0.13705311935605577,
62
+ "ece": 0.13615814902686033
63
+ }
64
+ },
65
+ "latency_ms_per_case_amortized": 81.20556874993781,
66
+ "latency_ms_single_p50": 82.20564998919144,
67
+ "latency_ms_single_p95": 96.76197000808314,
68
+ "params_m": 1918.18,
69
+ "attention": "sdpa-fallback (flash attention unavailable on Windows PyTorch build)"
70
+ }
benchmarks/d1_3b_decisionbench_1565.json ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "d1-3B",
3
+ "benchmark": "Hanno-Labs/decision-bench",
4
+ "split": "eval",
5
+ "rows": 1565,
6
+ "n": 1565,
7
+ "accuracy": 0.6485623003194888,
8
+ "nll": 1.0344951306950594,
9
+ "brier": 0.4937204370168296,
10
+ "ece": 0.11743752614111892,
11
+ "by_primitive": {
12
+ "ordinal_scoring": {
13
+ "n": 142,
14
+ "accuracy": 0.43661971830985913,
15
+ "nll": 2.1940984014033558,
16
+ "brier": 0.8601191725325842,
17
+ "ece": 0.3753595340789747
18
+ },
19
+ "candidate_selection": {
20
+ "n": 893,
21
+ "accuracy": 0.5599104143337066,
22
+ "nll": 1.2599422288282047,
23
+ "brier": 0.6028164026417906,
24
+ "ece": 0.15850576690027032
25
+ },
26
+ "binary_classification": {
27
+ "n": 530,
28
+ "accuracy": 0.8547169811320755,
29
+ "nll": 0.34395187961302803,
30
+ "brier": 0.21173681862753252,
31
+ "ece": 0.020618797239968317
32
+ }
33
+ },
34
+ "latency_s": 142.38109049998457,
35
+ "attention": "sdpa-fallback (flash attention unavailable on Windows PyTorch build)"
36
+ }
benchmarks/d1_3b_typed_test.json ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "d1-3B",
3
+ "benchmark": "LocalLLaMA/typed-decisions",
4
+ "split": "test",
5
+ "n": 2000,
6
+ "accuracy": 0.6495,
7
+ "kl": 0.28536580145857754,
8
+ "brier": 0.14156798412867302,
9
+ "ece": 0.03433960353524046,
10
+ "by_kind": {
11
+ "choice": {
12
+ "n": 600,
13
+ "accuracy": 0.6033333333333334,
14
+ "kl": 0.38308227977572346,
15
+ "brier": 0.18394841063198902,
16
+ "ece": 0.06404703890449398
17
+ },
18
+ "noul": {
19
+ "n": 600,
20
+ "accuracy": 0.7933333333333333,
21
+ "kl": 0.14307420163370385,
22
+ "brier": 0.09547091383837804,
23
+ "ece": 0.032054926390584396
24
+ },
25
+ "score": {
26
+ "n": 800,
27
+ "accuracy": 0.57625,
28
+ "kl": 0.3187971425893734,
29
+ "brier": 0.14435546696890725,
30
+ "ece": 0.04930493936736953
31
+ }
32
+ },
33
+ "latency_ms_single_p50": 63.934250007150695,
34
+ "latency_s": 120.74863280000864,
35
+ "attention": "sdpa-fallback (flash attention unavailable on Windows PyTorch build)"
36
+ }
benchmarks/pluto21_decisionbench_1565.json ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "pluto-2.1-1.7b-step2000",
3
+ "benchmark": "Hanno-Labs/decision-bench",
4
+ "split": "eval",
5
+ "rows": 1565,
6
+ "n": 1565,
7
+ "accuracy": 0.7207667731629392,
8
+ "nll": 0.743893769561289,
9
+ "brier": 0.37302688896067215,
10
+ "ece": 0.05858011190501126,
11
+ "by_primitive": {
12
+ "ordinal_scoring": {
13
+ "n": 142,
14
+ "accuracy": 0.29577464788732394,
15
+ "nll": 1.5536898785809998,
16
+ "brier": 0.699555331279626,
17
+ "ece": 0.155038637254273
18
+ },
19
+ "candidate_selection": {
20
+ "n": 893,
21
+ "accuracy": 0.7491601343784995,
22
+ "nll": 0.7901911483528816,
23
+ "brier": 0.3715472431253504,
24
+ "ece": 0.09278790573727526
25
+ },
26
+ "binary_classification": {
27
+ "n": 530,
28
+ "accuracy": 0.7867924528301887,
29
+ "nll": 0.44892281344489054,
30
+ "brier": 0.28803497371850384,
31
+ "ece": 0.04888898737294541
32
+ }
33
+ },
34
+ "latency_s": 191.43742590001784,
35
+ "params_b": 1.738,
36
+ "lineage": "Qwen3-1.7B -> Bosun 3.1 1.7B -> Pluto-2.1 2000-step fine-tune"
37
+ }
benchmarks/pluto21_decisionbench_390.json ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "pluto-2.1-1.7b-step2000",
3
+ "benchmark": "Hanno-Labs/decision-bench",
4
+ "split": "eval",
5
+ "rows": 390,
6
+ "n": 390,
7
+ "accuracy": 0.7307692307692307,
8
+ "nll": 0.782475716850374,
9
+ "brier": 0.38374544733999405,
10
+ "ece": 0.07872579764729119,
11
+ "by_primitive": {
12
+ "ordinal_scoring": {
13
+ "n": 36,
14
+ "accuracy": 0.3055555555555556,
15
+ "nll": 1.5345522148320503,
16
+ "brier": 0.6649819753906753,
17
+ "ece": 0.14113543406196793
18
+ },
19
+ "candidate_selection": {
20
+ "n": 222,
21
+ "accuracy": 0.7297297297297297,
22
+ "nll": 0.8837282527930221,
23
+ "brier": 0.41591003706917623,
24
+ "ece": 0.0940529449476535
25
+ },
26
+ "binary_classification": {
27
+ "n": 132,
28
+ "accuracy": 0.8484848484848485,
29
+ "nll": 0.4070755887700082,
30
+ "brier": 0.2529495842361836,
31
+ "ece": 0.10125961085499781
32
+ }
33
+ },
34
+ "latency_s": 47.35091979999561,
35
+ "params_b": 1.738
36
+ }
benchmarks/pluto21_typed_test.json ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "pluto-2.1-1.7b-step2000",
3
+ "benchmark": "LocalLLaMA/typed-decisions",
4
+ "split": "test",
5
+ "mode": "fitted",
6
+ "n": 2000,
7
+ "accuracy": 0.6695,
8
+ "kl": 0.21389316512223397,
9
+ "brier": 0.12613537464071567,
10
+ "ece": 0.05558588827160893,
11
+ "by_kind": {
12
+ "choice": {
13
+ "n": 600,
14
+ "accuracy": 0.725,
15
+ "kl": 0.2037330221309278,
16
+ "brier": 0.10235709260413375,
17
+ "ece": 0.10109364924647721
18
+ },
19
+ "noul": {
20
+ "n": 600,
21
+ "accuracy": 0.735,
22
+ "kl": 0.15611870023697572,
23
+ "brier": 0.12411358328130827,
24
+ "ece": 0.05807213359097196
25
+ },
26
+ "score": {
27
+ "n": 800,
28
+ "accuracy": 0.57875,
29
+ "kl": 0.26484412102965726,
30
+ "brier": 0.14548542968770764,
31
+ "ece": 0.036768776402162195
32
+ }
33
+ },
34
+ "latency_ms_single_p50": 86.26855001784861,
35
+ "params_b": 1.738,
36
+ "lineage": "Qwen3-1.7B -> Bosun 3.1 1.7B -> Pluto-2.1 2000-step fine-tune"
37
+ }
benchmarks/pluto2_decisionbench_1565.json ADDED
@@ -0,0 +1,157 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "C:\\Users\\henry\\new-omida-project\\pluto-2\\artifacts\\pluto-2",
3
+ "benchmark": "Hanno-Labs/decision-bench",
4
+ "split": "eval",
5
+ "requested_rows": 1992,
6
+ "included_rows": 1565,
7
+ "skipped_options": 403,
8
+ "skipped_prompt": 24,
9
+ "max_len": 2048,
10
+ "max_options": 16,
11
+ "batch_size": 8,
12
+ "n": 1565,
13
+ "accuracy": 0.5789137380191693,
14
+ "nll": 1.086787512493374,
15
+ "brier": 0.5476896818997071,
16
+ "ece": 0.03040878511978975,
17
+ "by_primitive": {
18
+ "ordinal_scoring": {
19
+ "n": 142,
20
+ "accuracy": 0.31690140845070425,
21
+ "nll": 1.702245548212995,
22
+ "brier": 0.7919354885271652,
23
+ "ece": 0.23922968191870858
24
+ },
25
+ "candidate_selection": {
26
+ "n": 893,
27
+ "accuracy": 0.5139977603583427,
28
+ "nll": 1.3175748448567437,
29
+ "brier": 0.6268954549540386,
30
+ "ece": 0.05335862384965334
31
+ },
32
+ "binary_classification": {
33
+ "n": 530,
34
+ "accuracy": 0.7584905660377359,
35
+ "nll": 0.5330363259411564,
36
+ "brier": 0.34879598401552414,
37
+ "ece": 0.06172943167517076
38
+ }
39
+ },
40
+ "by_candidate_count_bucket": {
41
+ "2": {
42
+ "n": 571,
43
+ "accuracy": 0.7758318739054291,
44
+ "nll": 0.5050864657848015,
45
+ "brier": 0.327164851226164,
46
+ "ece": 0.06657381248932939
47
+ },
48
+ "3": {
49
+ "n": 52,
50
+ "accuracy": 0.7307692307692307,
51
+ "nll": 0.8230841673369436,
52
+ "brier": 0.4656287957639696,
53
+ "ece": 0.1768807057572377
54
+ },
55
+ "4": {
56
+ "n": 417,
57
+ "accuracy": 0.38369304556354916,
58
+ "nll": 1.3917934761391375,
59
+ "brier": 0.7077339030970196,
60
+ "ece": 0.1366008560847453
61
+ },
62
+ "5": {
63
+ "n": 53,
64
+ "accuracy": 0.41509433962264153,
65
+ "nll": 1.3906180619397066,
66
+ "brier": 0.6965652674513569,
67
+ "ece": 0.12229648836302624
68
+ },
69
+ "6": {
70
+ "n": 62,
71
+ "accuracy": 0.5161290322580645,
72
+ "nll": 1.4950352941490053,
73
+ "brier": 0.7103141629730844,
74
+ "ece": 0.20879640991101237
75
+ },
76
+ "7": {
77
+ "n": 45,
78
+ "accuracy": 0.4444444444444444,
79
+ "nll": 1.6899349194297915,
80
+ "brier": 0.7423954014990986,
81
+ "ece": 0.12905421665120007
82
+ },
83
+ "8": {
84
+ "n": 84,
85
+ "accuracy": 0.7738095238095238,
86
+ "nll": 0.9060157136010754,
87
+ "brier": 0.3785204070880192,
88
+ "ece": 0.24301153029444017
89
+ },
90
+ "9": {
91
+ "n": 204,
92
+ "accuracy": 0.36764705882352944,
93
+ "nll": 1.8435587409953924,
94
+ "brier": 0.812923101907946,
95
+ "ece": 0.22095318662488653
96
+ },
97
+ "10": {
98
+ "n": 20,
99
+ "accuracy": 0.55,
100
+ "nll": 1.3466658370996674,
101
+ "brier": 0.581430754465156,
102
+ "ece": 0.19840851353183617
103
+ },
104
+ "11": {
105
+ "n": 11,
106
+ "accuracy": 0.45454545454545453,
107
+ "nll": 1.742375978409565,
108
+ "brier": 0.7057783122595841,
109
+ "ece": 0.14119367689162138
110
+ },
111
+ "12": {
112
+ "n": 5,
113
+ "accuracy": 0.6,
114
+ "nll": 1.60027353448161,
115
+ "brier": 0.7113295784136134,
116
+ "ece": 0.3569272335501148
117
+ },
118
+ "13": {
119
+ "n": 2,
120
+ "accuracy": 0.0,
121
+ "nll": 2.7291098611081326,
122
+ "brier": 1.0117958954704067,
123
+ "ece": 0.26010035168011614
124
+ },
125
+ "14": {
126
+ "n": 5,
127
+ "accuracy": 0.2,
128
+ "nll": 2.0200694744604966,
129
+ "brier": 0.8290373434160234,
130
+ "ece": 0.08302967212398918
131
+ },
132
+ "15": {
133
+ "n": 4,
134
+ "accuracy": 0.75,
135
+ "nll": 1.4792958719146407,
136
+ "brier": 0.6844986526248836,
137
+ "ece": 0.4951474916901011
138
+ },
139
+ "16": {
140
+ "n": 30,
141
+ "accuracy": 0.9333333333333333,
142
+ "nll": 0.6343312692816507,
143
+ "brier": 0.23775440952147306,
144
+ "ece": 0.2986224605056543
145
+ }
146
+ },
147
+ "prompt_state_truncated": 48,
148
+ "latency_s": 21.23680189999868,
149
+ "latency_ms_per_row": 13.56984146964772,
150
+ "length_tokens": {
151
+ "p50": 250,
152
+ "p90": 662,
153
+ "p95": 1086,
154
+ "p99": 2048,
155
+ "max": 2048
156
+ }
157
+ }
benchmarks/pluto2_typed_test.json ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "artifacts/pluto-2-typed",
3
+ "benchmark": "LocalLLaMA/typed-decisions",
4
+ "split": "test",
5
+ "mode": "fitted",
6
+ "n_cases": 400,
7
+ "n_decisions": 2000,
8
+ "accuracy": 0.803,
9
+ "kl_from_gold": 0.11923040849736305,
10
+ "brier": 0.0672323907787711,
11
+ "ece": 0.07477404832751905,
12
+ "by_kind": {
13
+ "choice": {
14
+ "n_decisions": 600,
15
+ "accuracy": 0.78,
16
+ "kl_from_gold": 0.15241561932803213,
17
+ "brier": 0.081281756228142,
18
+ "ece": 0.07988290969168543
19
+ },
20
+ "noul": {
21
+ "n_decisions": 600,
22
+ "accuracy": 0.8516666666666667,
23
+ "kl_from_gold": 0.06329251245082283,
24
+ "brier": 0.04614648872056481,
25
+ "ece": 0.04405483458049834
26
+ },
27
+ "score": {
28
+ "n_decisions": 800,
29
+ "accuracy": 0.78375,
30
+ "kl_from_gold": 0.13629492240926638,
31
+ "brier": 0.07250979323539765,
32
+ "ece": 0.10546664498729107
33
+ }
34
+ },
35
+ "by_workflow": {
36
+ "agent_trace_observability": {
37
+ "n_decisions": 500,
38
+ "accuracy": 0.764,
39
+ "kl_from_gold": 0.1149915606592059,
40
+ "brier": 0.06838644564523914,
41
+ "ece": 0.09413051276996476
42
+ },
43
+ "customer_service": {
44
+ "n_decisions": 500,
45
+ "accuracy": 0.83,
46
+ "kl_from_gold": 0.12424451907243046,
47
+ "brier": 0.0661457304954968,
48
+ "ece": 0.07617299813519858
49
+ },
50
+ "invoice_processing": {
51
+ "n_decisions": 500,
52
+ "accuracy": 0.846,
53
+ "kl_from_gold": 0.1235060928782072,
54
+ "brier": 0.06848787497824028,
55
+ "ece": 0.05575175429481842
56
+ },
57
+ "security_incidents": {
58
+ "n_decisions": 500,
59
+ "accuracy": 0.772,
60
+ "kl_from_gold": 0.11417946137960859,
61
+ "brier": 0.06590951199610816,
62
+ "ece": 0.08430837784308685
63
+ }
64
+ },
65
+ "latency_ms_per_case_amortized": 50.90324725002574,
66
+ "latency_ms_single_p50": 42.323649977333844,
67
+ "latency_ms_single_p95": 43.27478500053985,
68
+ "params_m": 395.85
69
+ }