madewithlaya

Guides / §2

What is Laya?

Laya is ConvAI Innovations' open-source System 1 decision engine: typed answers with calibrated probabilities in one ~33 ms forward pass. What it is, how it works, what it isn't.

Laya is a decision engine built by ConvAI Innovations and released on 18 September 2026 under Apache 2.0. You don't chat with it and it doesn't write anything. You hand it a state (an email, a ticket, a JSON document, a game board) and a handful of typed questions, and it returns typed answers with a probability for each option, in a single forward pass of about 33 milliseconds on a T4.

It is a direct, open-weights answer to Jev, TypeSafe AI's closed decision model, and it landed six days after Jev did. That timing is why this directory filled up so fast: within days people had ports to MLX, CoreML, ONNX and GGUF, and a small cottage industry of Snake and Tetris benchmarks.

How it works, in one mental model

Think of Laya as a judge, not an author. A chat model composes a response token by token. Laya is a non-autoregressive encoder (ModernBERT-large or mmBERT-base underneath) that reads the whole state once and scores every answer option at the same time. There is no text to parse, no JSON to repair, and nothing to hallucinate, because it can only pick from the options you gave it.

Three question primitives cover everything:

  • choice: pick one label from a set you define, each with a one-line criterion (billing: invoices, payments, refunds).
  • score: an ordinal rating over an ordered list of criteria (not urgentsooncritical).
  • noul: a yes/no with a calibrated probability (Does the user threaten to cancel?).

Answers come back with confidence. The training method, RLCD, optimizes against strictly proper scoring rules, which is a long way of saying the probabilities are meant to be honest: a 0.9 should be right about nine times in ten.

Three checkpoints and a router

checkpointencoderparamscontextfor
layaModernBERT-large421M512English
laya-multilingualmmBERT-base322M1024100+ languages, about 2x faster
laya-typed-decisionsModernBERT-large421M1024the typed-decision workflows

Router(preload=True) detects the script of the incoming text in under a millisecond and dispatches to the right checkpoint, so Hindi and English tickets go through the same call. Every result carries routing metadata saying which model ran and why.

What it's being used for

The catalog's categories reduce to one sentence: anywhere software needs many small judgments, fast, cheap, and without a network round-trip. The reported reference points, receipts linked on each build:

All numbers are as reported by their authors.

What Laya is not

It is not a chat model, a writer, or a reasoner. If the answer isn't one of the options you listed, Laya cannot say so beyond a flat probability distribution. It is small, so it is fast, and small models make small-model mistakes: several of the cataloged benchmarks note that Jev still wins on decision quality while Laya wins on speed and cost. Read the confidence, gate on it, and escalate the uncertain cases.

Where to go next

Start here for reading paths, or browse by use case. The code, install instructions and Colab are in the GitHub repo; weights are on Hugging Face.

Frequently asked questions

Is Laya free?

Yes. Weights are Apache 2.0, the SDK is pip install laya, and it runs on a laptop GPU or Apple Silicon. There is no API to pay for unless you host one yourself.

How is Laya different from Jev?

Same idea, different distribution: Jev is closed and served over an API; Laya is open weights you run locally. Authors in this catalog report Laya as 6 to 50x faster end to end (mostly because there is no network hop), and Jev as more accurate on harder decisions.

Does it work in languages other than English?

Yes. The laya-multilingual checkpoint covers 100+ languages and the Router picks it automatically when it sees non-Latin script.

Can I fine-tune it?

The weights are open and the encoders are standard Hugging Face models, so yes, though the calibration comes from RLCD training and naive fine-tuning may lose it. The repo is the place to check for the current recipe.