All articles

GLiNER2.5-Decide, explained — labels you supply at runtime

Fastino's open-weight decision model does something the others do not. It classifies against label sets you hand it per request, extracts the spans that justify the answer, and enforces rules across decisions, all in one pass of a 340M encoder.

Fastino Labs shipped GLiNER2.5-Decide on 24 September 2026, and it is the System One model that arrived with the longest pedigree. GLiNER is a family of encoders that learned to find entities and relations named at runtime rather than at training time; Decide extends that trick from "find the spans" to "make the decision".

What it does in one pass

The model is a DeBERTa-v3-large encoder (340M parameters by the card, 486M by the safetensors header) with a schema-driven head. In a single forward pass it can:

  • answer a single-label or multi-label classification against a label set you supply in the request;
  • answer yes/no questions with a probability, and ordinal questions on a scale;
  • extract the spans and relations that support the answer;
  • apply cross-decision rules through a joint constrained decode, so two answers cannot contradict each other.

Nothing is generated. The labels are part of the input, which is why the same weights serve a support triage today and a content policy tomorrow without retraining.

The numbers

Fastino evaluates on its own fast-decisions suite of seventeen datasets: 60.2% for the 340M model (the launch post says 60.1%), 59.6% for the 1B sibling and 56.7% for the multilingual one; JevK5 scores 57.6% on the same suite. Latency is 38 ms median on a V100, 43–47 ms on T4, L4 and A100, and 167 ms on a 48-vCPU CPU for a 64-token input, which makes it one of the few System One models that is comfortable without a GPU.

Three models

ModelParamsBaseSuite accuracy
GLiNER2.5-Decide340Mgliner2-large-v160.2%
GLiNER2.5-Decide-1B1.2Bgliner2-xl-011159.6%
GLiNER2.5-multi-Decide287Mgliner2.5-multi-v156.7%

All three are Apache-2.0 and on Hugging Face; there is a community ONNX port.

Running it

GLiNER2.5-Decide loads through the gliner2 package (classify_text) rather than the /v1/systemone wire format; Fastino also serves it through its own API.

pip install systemonemodels
systemone pull fastino-labs/gliner2-5-decide

Its page on the registry lists the files, the reported numbers with the suite they came from, the hosted option, and the two sibling sizes.

When to pick it

Choose GLiNER2.5-Decide when the label set is not fixed, when you need the evidence span back with the decision, or when the deployment target is a CPU. Choose an encoder like Laya when you will fine-tune on your own examples, and a decoder family like Kev when the decision depends on world knowledge the state does not spell out.