Decision Models
Decision models do not generate text. You give them a piece of content (the state) and a set of typed questions, and they return a typed answer for each question together with calibrated probabilities. They are built for the places inside an application where a fast, predictable, machine-readable verdict matters more than prose: routing, classification, triage, moderation gates, A/B triggers.
Compared with prompting an LLM for JSON, a decision model answers in a fraction of the time, cannot produce anything outside the question schema, and reports how confident it is instead of writing a number into free text.
Question Types
noul
A yes/no question.
noul — probability that the answer is "yes" (0–1).
choice
Pick exactly one option from criteria.
choice — the selected key, plus a probability for every option and a confidence.
score
Rate the state against ordered levels.
score — expected level index (may be fractional), a probability per level, the legend and a confidence.
box
Where something is in an image.
box — the four edges as fractions of the width and height, plus a confidence. Jev 1.14 only; experimental.
The state can be a plain string, a JSON object, or an array of texts. Images are supported by Jev 1.14 and d1, passed in assets rather than in state; audio and video are not supported.
Pricing
Decision models are billed by input tokens only; output tokens are reported in usage but are free. See the pricing page and the model card for current rates.
Example: Triaging a Support Ticket
curl https://api.aimlapi.com/v1/decisions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <YOUR_AIMLAPI_KEY>" \
-d '{
"model": "typesafe/jev",
"state": "Help! My payments have been failing for 3 days and nobody answers support.",
"questions": {
"is_urgent": { "type": "noul", "instructions": "Does this convey urgency?" },
"department": { "type": "choice", "instructions": "Which team should handle this?",
"criteria": { "billing": "Payments, invoicing, refunds", "technical": "Bugs, outages, integrations", "sales": "Pricing, upgrades, new accounts" } },
"frustration": { "type": "score", "instructions": "How frustrated is the customer?",
"criteria": ["Calm", "Frustrated", "Very angry"] }
}
}'Every key from questions comes back under answers with a typed result:
All Available Decision Models
Last updated
Was this helpful?