Views
No views yet
data/sft_v2.jsonl, evaluated on eval/sets/review_v2.jsonl, whose fixtures
share no distinctive line with the training seeds (test-enforced).claude-sonnet-5, frozen rubric, 36 scenarios.| base | this adapter | prompted frontier ceiling | |
|---|---|---|---|
| spec-adherence | 0.139 | 0.611 | 0.861 |
| robustness | 0.208 | 0.583 | 0.875 |
| strict (right rule, legal anchor) | 0.028 | 0.278 | 0.806 |
| false-clean (lower is better) | 0.133 | 0.100 | 0.000 |
strict reached 0.278 because the model
did not learn to count @@ hunk arithmetic. That is the dominant residual
failure and it is also the only genuine failure mode the frontier shows.{"findings": []} passes every schema and groundedness
check, so a model that collapsed to empty would score well and be worthless.target_modules="all-linear", lr 2e-4, 2 epochs, effective batch 16, on 455
teacher-distilled and filtered examples.assistant_only_loss nor
completion_only_loss, so loss covered the ~1.1k-token system prompt too. Most
of the gradient went to reproducing the spec, which is likely part of why
strict lagged.n227, n113, n56 form the data-efficiency curve;
minimum viable N is 227.1from peft import PeftModel
2from transformers import AutoModelForCausalLM, AutoTokenizer
3
4base = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3-0.6B")
5model = PeftModel.from_pretrained(base, "elguantletai002/checklist-reviewer-qwen3-0.6b-n455").merge_and_unload()
6tok = AutoTokenizer.from_pretrained("Qwen/Qwen3-0.6B")spec/behavior_spec.md from the source repo. Behaviour is
undefined without it.Then414/n207/n103/n51repos are superseded: they were trained on a dataset that shared fixtures with its own eval set, so their numbers measured recognition of training data. Use this one.