Skip to content
System One

Typed output

Typed output is a model answer that arrives already shaped as a value your code can use, such as an enum member or a probability between 0 and 1. There is no parsing step and no schema validation on a text blob. A System One model returns typed output directly rather than describing an answer in prose.

TypeSafe describes System One models as returning “typed answers and probabilities rather than generated text”, and says they “do not write replies, produce code, or generate explanations of their reasoning.”

What comes back from a Choice question is concrete. The docs show {"type":"choice","choice":"returns","confidence":1.0,"probabilities":{"returns":1.0,"shipping":0.0,"billing":0.0}}. In the JavaScript SDK you read it as response.answers.category.choice, and the value is one of the keys you supplied. A Noul answer is a bare number between 0 and 1.

The difference from a JSON-emitting chat model is where the guarantee lives. Constrained decoding generates tokens and then holds them to a grammar. Here the option set you passed in is the answer space, so a Choice cannot come back as an option you never defined, and the probabilities over those options sum to 1.

One practical consequence: your thresholds live in code, and TypeSafe puts that plainly as “Your code encodes the risk tolerance.” See structured outputs for the technique this gets confused with, and confidence-gated actions for acting on the numbers.

Related terms