Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 21 additions & 2 deletions cards/urd-diac-base-1.0.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,28 @@
# urd-diac-base-1.0

Urdu diacritization, base tier (run-066): byt5-base seq2seq on the
full 573,130-pair urdu-diacrit corpus. IMF v1 fp32.
full 573,130-pair urdu-diacrit corpus. IMF v1 **fp16**.

## Metrics (full 11,940-row test split, raw char CER)
## Metrics (full 11,940-row test split, raw char CER, row-mean)

CER **3.57** (urd-diac-1.0 small tier: 3.77 baseline) — gate PASSED.
Word accuracy 69.8%.

## Artifact parity (WO51 contract)

Single-row greedy decode, the runtime's actual decode mode: ONNX
artifact CER **3.64** — identical to torch on **500/500 rows**
(agreement 1.0; three-way bf16/fp32/ORT agreement 1.0). Batched
decode without an attention mask is outside the artifact contract
(CONFORMANCE.md).

## Conformance

The shipped runtime reproduces all 12 frozen vectors byte-exactly
(`conformance/urd-diac-base-vectors.json`).

## Data / license

Weights depend on the original training-data license (the urdu-diacrit
corpus; provenance in `corpora/PROVENANCE.md`, owner-approved ship
decision 2026-10-18). Code and weights: BSD-3-Clause.
9 changes: 9 additions & 0 deletions docs/RESULTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -2348,3 +2348,12 @@ succeeds, then the p047 remainder (~4h) + p029 + consolidation run
death-proof. The mount (/ckpt = the bucket) may itself be durable
for properly-closed files — untested; the explicit sync removes the
doubt.

## run-066 urd-diac-base gate pass and artifact parity (2026-10-19)

Gate: full 11,940-row test split, raw char CER, row-mean — **3.57**
(beat urd-diac-1.0 small tier 3.77), word accuracy 69.8%. Artifact
parity under the WO51 single-row contract: ONNX fp16 CER 3.64,
500/500 rows identical to torch, three-way bf16/fp32/ORT agreement
1.0. Shipped runtime reproduces 12/12 frozen conformance vectors
byte-exactly. Data: 573,130 pairs (urd-dia registry, sha256-pinned).
12 changes: 12 additions & 0 deletions models.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -472,3 +472,15 @@ models:
- {name: wer_wikinews2024_multiref, value: 8.85, protocol: "greedy decode, first-alternate protocol, WikiNews-2024 multiref (WO35)", source: interscript/interscript-models docs/RESULTS.md}
- {name: der_total_greedy, value: 2.84, protocol: "greedy decode, first-alternate protocol, WikiNews-2024 multiref (WO35)", source: interscript/interscript-models docs/RESULTS.md}
license: BSD-3-Clause
urd-diac-base-1.0:
task: diacritization
scripts: [Arab, Arab]
precision: fp16
filename: urd-diac-base-1.0-fp16.zip
url: https://github.com/interscript/interscript-models/releases/download/urd-diac-base-1.0/urd-diac-base-1.0-fp16.zip
sha256: 8058220d72df76b31260358070499c2cdb504f030fa10259b48aa05c7caf5711
size: 1347487633
metrics:
- {name: cer, value: 3.57, source: interscript/interscript-models docs/RESULTS.md#run-066-urd-diac-base-gate-pass-and-artifact-parity-2026-10-19}
parity: {samples: 500, cer_delta: 0.07}
license: BSD-3-Clause
23 changes: 23 additions & 0 deletions models/urd-diac-base/urd-diac-base-1.0.metadata.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
format: imf-v1
id: urd-diac-base-1.0
task: diacritization
source_script: Arab
target: Arab
tokenizer: bytes
opset: 14
decoder: plain
precision: fp16
license: BSD-3-Clause
trained_from: byt5-base, 573130 urdu-diacrit pairs, run-066 (TODO.sota WO41)
metrics:
- name: cer
value: 3.57
source: interscript/interscript-models docs/RESULTS.md#run-066-urd-diac-base-gate-pass-and-artifact-parity-2026-10-19
protocol: greedy decode, full 11940-row test split, row-mean CER (WO51 single-row
artifact contract)
sha256:
encoder.onnx: ac2ccda95bdfeea5536a81099a3f70241b44b05a8d6bfb05f59ec21c086ff88e
decoder.onnx: 13a140f8a85794fc93537b88c77493483d414aad1c5d53316a5e4c86dd930c10
parity:
samples: 500
cer_delta: 0.07
4 changes: 2 additions & 2 deletions tests/test_pipeline_plan_gate.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,8 +91,8 @@ def test_parity_gate_runtime_mode() -> None:

def test_license_gate_blocks_publish(tmp_path: Path) -> None:
# the shipped urd-dia is owner-waived (2026-10-18) and must PASS now
waived = evaluate(recipe := load_recipe(RECIPES / "urd-diac.yaml"),
CORPORA, metrics={"cer": 0.0352}, parity=None)
recipe = load_recipe(RECIPES / "urd-diac.yaml")
waived = evaluate(recipe, CORPORA, metrics={"cer": 0.0352}, parity=None)
assert [g for g in waived if g.name == "license"][0].passed
# an UNWAIVED restricted source still blocks — synthetic registry
import yaml as _yaml
Expand Down
Loading