Add measured model-quality table (1.5B vs 7B vs 8B) to the showcase
Browse files- README.md +6 -3
- index.html +10 -11
README.md
CHANGED
|
@@ -23,9 +23,7 @@ evaluated in a single batched forward pass**. The JSON is assembled programmatic
|
|
| 23 |
never be malformed.
|
| 24 |
|
| 25 |
What's on this page (recorded output from a stock, untrained **Qwen2.5-1.5B-Instruct-4bit** on an
|
| 26 |
-
M5 MacBook Air, 16 GB):
|
| 27 |
-
|
| 28 |
-
- 4 realistic presets (fraud routing, support triage, code security, 255-choice tariff)
|
| 29 |
- per-field decisions with confidence and runners-up
|
| 30 |
- assembled JSON next to the naive baseline (the same model writing the whole JSON itself)
|
| 31 |
- latency split (prefill + batched pass) and naive timings
|
|
@@ -34,6 +32,11 @@ Highlights: 28-field decisions in ~0.4 s, 7–8x faster than naive JSON generati
|
|
| 34 |
baseline produced malformed/incomplete JSON on 3 of the 4 presets while the constrained path was
|
| 35 |
always schema-valid. Model size does not fix JSON reliability; decoding structure does.
|
| 36 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 37 |
**Honest caveats:** confidence here is a softmax over candidate token logits — a proxy for
|
| 38 |
calibration, not trained calibration (that's what TypeSafe's RLCD training is for). Fields whose
|
| 39 |
choices share a first token hit a slower fallback path.
|
|
|
|
| 23 |
never be malformed.
|
| 24 |
|
| 25 |
What's on this page (recorded output from a stock, untrained **Qwen2.5-1.5B-Instruct-4bit** on an
|
| 26 |
+
M5 MacBook Air, 16 GB):- 4 realistic presets (fraud routing, support triage, code security, 255-choice tariff)
|
|
|
|
|
|
|
| 27 |
- per-field decisions with confidence and runners-up
|
| 28 |
- assembled JSON next to the naive baseline (the same model writing the whole JSON itself)
|
| 29 |
- latency split (prefill + batched pass) and naive timings
|
|
|
|
| 32 |
baseline produced malformed/incomplete JSON on 3 of the 4 presets while the constrained path was
|
| 33 |
always schema-valid. Model size does not fix JSON reliability; decoding structure does.
|
| 34 |
|
| 35 |
+
**Does a bigger model help?** On 24 labeled cases (72 decisions per model): primary-field accuracy
|
| 36 |
+
1.5B 58% → 7B 96% → 8B 92%; all-fields exact 50% / 72% / 85%. So: 7B for the single decision you
|
| 37 |
+
act on, 8B when the whole typed payload must be right, 1.5B for demos only. Caution: confidence did
|
| 38 |
+
not reliably flag errors (7B was >90% confident on 13 of its 20 wrong fields).
|
| 39 |
+
|
| 40 |
**Honest caveats:** confidence here is a softmax over candidate token logits — a proxy for
|
| 41 |
calibration, not trained calibration (that's what TypeSafe's RLCD training is for). Fields whose
|
| 42 |
choices share a first token hit a slower fallback path.
|
index.html
CHANGED
|
@@ -51,24 +51,23 @@
|
|
| 51 |
</section>
|
| 52 |
|
| 53 |
<section class="card">
|
| 54 |
-
<h2>
|
| 55 |
-
<p class="muted">
|
| 56 |
<table class="bench">
|
| 57 |
<thead>
|
| 58 |
-
<tr><th>Model (4-bit)</th><th>
|
| 59 |
</thead>
|
| 60 |
<tbody>
|
| 61 |
-
<tr><td>Qwen2.5-1.5B</td><td>
|
| 62 |
-
<tr><td>Qwen2.5-7B</
|
| 63 |
-
<tr><td>Qwen3-8B</
|
| 64 |
</tbody>
|
| 65 |
</table>
|
| 66 |
<p class="muted small">
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
|
| 70 |
-
|
| 71 |
-
in the GitHub repo.
|
| 72 |
</p>
|
| 73 |
</section>
|
| 74 |
</main>
|
|
|
|
| 51 |
</section>
|
| 52 |
|
| 53 |
<section class="card">
|
| 54 |
+
<h2>Does a bigger model help? (measured)</h2>
|
| 55 |
+
<p class="muted">24 labeled cases × 3 fields = 72 decisions per model, same engine. "All fields exact" = every field of the case correct.</p>
|
| 56 |
<table class="bench">
|
| 57 |
<thead>
|
| 58 |
+
<tr><th>Model (4-bit)</th><th>Primary field</th><th>All fields exact</th><th>Latency / case</th></tr>
|
| 59 |
</thead>
|
| 60 |
<tbody>
|
| 61 |
+
<tr><td>Qwen2.5-1.5B</td><td>58% <span class="muted">(= majority-class baseline)</span></td><td>50%</td><td>147 ms</td></tr>
|
| 62 |
+
<tr><td><strong>Qwen2.5-7B</strong></td><td class="yes"><strong>96%</strong></td><td>72%</td><td>611 ms</td></tr>
|
| 63 |
+
<tr><td><strong>Qwen3-8B</strong></td><td>92%</td><td class="yes"><strong>85%</strong></td><td>646 ms</td></tr>
|
| 64 |
</tbody>
|
| 65 |
</table>
|
| 66 |
<p class="muted small">
|
| 67 |
+
Bigger is worth it — but not "biggest wins": <strong>7B</strong> for the single decision you act on,
|
| 68 |
+
<strong>8B</strong> when the whole typed payload must be right, <strong>1.5B</strong> for demos only.
|
| 69 |
+
And <span class="warn">confidence does not reliably flag errors</span> — the 7B was >90% confident on
|
| 70 |
+
13 of its 20 wrong fields. Full breakdown in the GitHub repo.
|
|
|
|
| 71 |
</p>
|
| 72 |
</section>
|
| 73 |
</main>
|