laya-typed-decisions: The Fine-Tuned Laya Checkpoint (0.766 Accuracy)

What laya-typed-decisions is: Laya fine-tuned with RLCD on four typed-decisions workflows, its 0.766 benchmark result versus Jev, by-workflow scores, and why it is a specialist.

Last updated: Sep 24, 2026

convaiinnovations/laya-typed-decisions is the base English Laya checkpoint fine-tuned on the typed-decisions workflows. It is the source of Laya's most-quoted number — 0.766 accuracy — and it is a specialist.

Hugging Faceconvaiinnovations/laya-typed-decisions
Fine-tuned fromlaya (ModernBERT-large)
Parameters421M
Default context1,024 tokens (256 for question and options)
LanguagesEnglish only
Training data1,200-case training split (6,000 decisions) of the typed-decisions benchmark
LicenseApache 2.0

Source: model card. Figures are upstream measurements unless noted.

Benchmark

400 test cases, 2,000 decisions, official test split:

ModelAccuracySoft accBrierECEScore MAE
laya-typed-decisions0.7660.4710.0620.2130.242
TypeSafe Jev 1.13.0 (published)0.7270.5800.1480.1440.391
Teacher self-agreement ceiling0.735
ModernBERT-base specialist (published)0.646
laya (not fine-tuned)0.3620.3320.3160.1750.694
Random guess0.318

Upstream notes that the Jev figures are third-party published, not measured by the Laya project, and that sample sizes and prompts differ. Treat the comparison as indicative.

By workflow

WorkflowAccuracy
Invoice processing0.804
Security incidents0.766
Customer service0.764
Agent-trace observability0.730

By primitive

TypeAccuracyECEn
noul0.8570.192600
choice0.7330.255600
score0.7230.199800

How to read the 0.766

  • It is a fine-tuned result on the benchmark's own training split, not base-Laya zero-shot accuracy. The base checkpoints score 0.342–0.362 on the same test.
  • It beats Jev on argmax accuracy, Brier and score MAE, but trails Jev on soft accuracy and ECE.
  • It is evidence that Laya fine-tunes well, which is the main reason to read the fine-tuning guide.

Use it

import laya

agent = laya.load("convaiinnovations/laya-typed-decisions")
result = agent.predict(state, questions)

Or route to it explicitly:

from laya import Router

router = Router()
router.predict(state, questions, model="typed-decisions")

The Router will not pick this checkpoint automatically unless you construct it with auto_task_detection=True; it should not be a silent default. If it is on a hot path, keep it resident with router.preload(["typed-decisions"]).

Limits

  • It is a specialist. Outside the four workflows, expect it to behave like the base laya checkpoint, or worse.
  • Treat its confidence as uncalibrated. Its inherited temperature_by_options overrides the per-type temperatures fitted for it, and those per-type temperatures were fitted on training items (#186). Refit on held-out data before thresholding.
  • English only; use laya-multilingual for other languages.
  • Keep choice questions under ~20 options.

Compare the family

CheckpointEncoderParamsContextUse it for
layaModernBERT-large421M512English
laya-multilingualmmBERT-base322M1024100+ languages
laya-typed-decisionsModernBERT-large421M1024four typed-decisions workflows

See also Laya vs Jev and the benchmark tracker.

Last verified: September 24, 2026.