Choice
Route or classify context against 2–20 named options.
Returns a selected key, option probabilities, and confidence.
CONTACT
Have a difficult problem worth solving? Start a conversation with the team.
Beta · First release
Context in. A decision out.
Hosted API. Requires an API key and prepaid credit. Credit purchases are not available yet.
Select an option
{
"type": "choice",
"state": {
"message": "I paid twice for the same subscription."
},
"question": "Which team should handle this ticket?",
"options": {
"billing": "Payments, charges and invoices",
"technical": "Software errors and connectivity"
}
}choice · probabilities · confidenceEstimate a probability
{
"type": "noul",
"state": "Please return the money for this order.",
"question": "Does this message request a refund?",
"false_criteria": "No refund is requested.",
"true_criteria": "The sender asks for money to be returned."
}noul: probability of true, 0–1Estimate a value
{
"type": "score",
"state": "The production service has been offline for an hour.",
"question": "How urgent is the incident?",
"levels": [
{
"value": 0,
"description": "No action needed"
},
{
"value": 1,
"description": "Routine follow-up"
},
{
"value": 2,
"description": "Immediate attention"
}
]
}score · probabilities · confidenceExample payloads only. No live inference.
The first model in the Praxis family. Select options, estimate probabilities, and score against defined levels. Available in beta for experimentation and evaluation.
Performance varies across tasks. Review the published evaluations and validate on your own data before relying on a decision.
praxis-decision-nanoRoute or classify context against 2–20 named options.
Returns a selected key, option probabilities, and confidence.
Estimate the probability of a binary outcome.
Returns the probability of true, from 0 to 1. Your application sets the threshold.
Evaluate context against increasing numeric levels.
Returns a probability-weighted value, level probabilities, and confidence.
The confirmation evaluation on 2 October 2026 covers 4,682 questions across 3,668 independent groups.
| Decision type | Questions | Accuracy |
|---|---|---|
| All questions | 4,682 | 59.70% |
| Choice | 3,617 | 56.57% |
| Noul | 612 | 75.65% |
| Score | 453 | 63.13% |
Accuracy measures the highest-probability answer against the reference label. For Score, it evaluates the top level; the API returns an expected numeric value. Offline evaluation used CUDA FP16 autocast; hosted inference runs in FP32. These results do not establish accuracy on your data.
Category results are source-macro accuracy: each source family contributes equally within its category. The procedural panel includes 1,200 synthetic service-ledger questions.
| Category | Questions | Independent groups | Source-macro accuracy |
|---|---|---|---|
| Knowledge | 1,500 | 1,500 | 39.61% |
| Procedural | 1,500 | 700 | 68.09% |
| Evidence | 1,000 | 1,000 | 43.54% |
These rows report typed-decision accuracy for the Re-DocRED and FEVEROUS portions of the fresh confirmation panel. The metric is answer accuracy on the supplied decision questions, rather than extraction F1. MAVEN-ERE is reported separately on historical panels below.
| Task | Questions | Independent groups | Accuracy |
|---|---|---|---|
| Re-DocRED | 397 | 199 | 88.92% |
| FEVEROUS | 283 | 268 | 65.72% |
Measured on the same deployed checkpoint using the historical retention test and original v3 panel. These are separate historical evaluations, not fresh confirmation results. Accuracy is agreement with the reference answer on typed decision questions; offline evaluation used CUDA FP16 autocast.
| Evaluation | Questions | Accuracy |
|---|---|---|
| Historical retention test | 240 | 75.83% |
| Original v3 panel | 200 | 80.00% |
Measured on 2 physical CPU cores with 4,096 MiB requested memory and FP32 precision. Each row shows the observed range across two runs. Inference time excludes model loading, network transit and console gateway processing. The 512- and 2,048-token inputs are synthetic Choice cases.
| Decision | Input tokens | Runs | Inference time |
|---|---|---|---|
| Choice | 38 | 2 | 250.3–302.4 ms |
| Noul | 27 | 2 | 105.5–285.5 ms |
| Score | 35 | 2 | 115.7–140.7 ms |
| Choice (synthetic) | 512 | 2 | 719.2–745.6 ms |
| Choice (synthetic) | 2,048 | 2 | 3,691.4–3,704.1 ms |
Model loading was measured once. Direct HTTP timings below are separate single requests to the private Modal backend, including transport and service overhead; customer gateway latency is additional. The first request includes service startup.
| Measurement | Runs | Elapsed time |
|---|---|---|
| Model loading | 1 | 10.070 s |
| First HTTP request (Choice) | 1 | 19.865 s |
| Warm HTTP request (Noul) | 1 | 1.399 s |
| Warm HTTP request (Score) | 1 | 1.331 s |
Send one JSON decision in a single user message to the Chat Completions endpoint.
Read the integration guidehttps://console.noeraven.com/v1POST /chat/completionspraxis-decision-nanochoices[0].message.contentStructured decisions only. Free-form chat, conversation history, tools, multimodal inputs, embeddings, and the Responses API are unsupported.
Predictions can be wrong. Confidence is the highest option or level probability, not a guarantee. Evaluate representative examples and validate your decision thresholds.
Each workspace allows 10 new valid requests per minute and one active inference request. Input overflow is rejected without truncation.
Access is hosted inference. Model weights are not included. All three formats cost $1 USD per million measured input tokens; generated output tokens are zero.