laya-self-train-prime
CLI and Claude Code skill that turns one typed decision into a fine-tuned, calibrated, evaluated Laya checkpoint you can serve.
Overview
laya-prime (laya-self-train-prime) takes one typed decision, such as routing a ticket, scoring a lead or flagging a message, and produces a fine-tuned, calibrated and evaluated Laya checkpoint you can serve on the Jev-compatible protocol on your own hardware. A CLI owns everything deterministic (data, splits, training, calibration, evaluation and serving), and a Claude Code skill owns the judgment: hearing the use case, designing the taxonomy and explaining the evaluation card.
The steps are init a project with one choice, score or noul question; add or generate labelled rows; a feasibility gate that checks the option budget and runs two blind labelling passes, refusing when classes are not separable from text; train with one fitted temperature on a calibration split; evaluate against majority class, TF-IDF and the zero-shot base model, writing per-class verdicts and the threshold for a target error rate; an active-learning loop; accepting a baseline that later runs are gated against; comparing with Jev or any /v1/systemone endpoint; and running, serving or exporting. Labels can come from Claude Code under your subscription or the Anthropic API.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which route should this ticket take? (user-defined) | — |
| Score | How promising is this lead? (user-defined) | — |
| Yes / no | Should this message be flagged? (user-defined) | — |
How it works
- laya-prime init with one typed question
- Add or generate labelled data; check feasibility
- Train, calibrate and evaluate against baselines
- Loop with active labelling until gains flatten
- Accept a baseline, compare with Jev, then serve or export
Strengths
- Feasibility gate refuses inseparable tasks
- Evaluation against simple baselines and Jev
- Regression gating against an accepted baseline
- Works without Claude via the CLI alone
Caveats
- Requires a GPU or Apple Silicon for training
- Label quality depends on Claude or your data
- One question per project
Getting started
Create a venv and install the package, then laya-prime init; see START_HERE.md.At a glance
- Type
- Model
- Status
- beta
- Language
- Python
- Runtime
- CLI and Claude Code skill
- Has code
- yes
Use cases and integrations
How curated lists describe it
Self-tuning Laya: point Claude Code at a typed decision, get a fine-tuned…
wh000wh000/awesome-jev-live
Frequently asked questions
What does the feasibility gate do?
It checks the option budget and runs two blind labelling passes, refusing if classes cannot be told apart from the text.
Can I compare with Jev?
Yes, laya-prime compare runs the test split through Jev or any /v1/systemone endpoint.
Do I need an Anthropic API key?
No, labelling can run through Claude Code under your subscription.
Related projects
Toolkit that turns Laya into a task specialist: LLM-generated and verified training data, RLCD training, calibration and longer context.
ModelbetaPython- poorjev★ 10
Local Jev alternative on zero-shot NLI models with temperature scaling and conformal abstention; reports ECE 0.170 to 0.071, offline.
ServicebetaPython ComfyUI nodes for Jev-style noul, choice and score decisions over images and text using a local imajev adapter on Qwen3.5.
ProjectbetaPython- cbjev★ 4
Self-hosted encoder model giving Jev-compatible choice, score and noul answers in one pass, pitched as a better-calibrated Laya successor.
ProjectresearchPython Joke decision model trained to answer wrongly with total confidence: 1.9% accuracy at 0.957 mean confidence, via a Jev-style API.
ProjectresearchPythonPre-registered field test of Jev, GLiNER2.5-Decide, Laya and other decision models against small LLMs on fresh September 2026 data.
ProjectresearchPython