Foundations 03 5 min Updated Sep 20, 2026

Choice, Score, or Noul — how to pick

Choice selects from a closed set; Score rates ordered levels; Noul returns P(yes). Mix them in one call; each question runs in parallel against the same state.

TypeSafe exposes three question primitives. Pick the shape that matches the decision your code needs.

Question typeGoalReturns
ChoicePick from a defined setselected option, per-option probabilities, confidence
ScoreRate against ordered, descriptive levelsscore/level, per-level probabilities, confidence
NoulYes/no evaluationP(yes) in 0–1; no separate confidence field

How to choose

  • Closed taxonomy (queues, intents, categories) → Choice, and always keep an other / insufficient_evidence escape hatch when the world is messy.
  • Ordered quality or severity rubrics → Score.
  • A single binary check (“meets must-haves?”, “needs human?”) → Noul.

You can mix types in one request. Questions evaluate in parallel and in isolation against the same state—your code composes the results. Do not write “use the previous answer” inside the packet; chain in code if you need dependency.

Sources