> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tacetai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Question types

> One request can ask several questions about the same state. Each question has a type, instructions, and criteria.

| Type | Use it to | Returns |
| - | - | - |
| `noul` | Check a condition | Probabilities for `no` and `yes` |
| `choice` | Pick from named options | A probability per option |
| `score` | Assign an ordered level | A probability per level |

## All three in one request

```python theme={null}
result = client.decide(
    model="tacet-alpha",
    state="The payment failed. The login works.",
    questions={
        "failed": {"type": "noul", "instructions": "Did the payment fail?"},
        "route": {
            "type": "choice",
            "instructions": "Which team handles the problem?",
            "criteria": {"payments": "Payment failures", "account": "Login access"},
        },
        "severity": {
            "type": "score",
            "instructions": "Rate the problem using these levels.",
            "criteria": {"0": "No failure", "1": "Payment failure only", "2": "Payment and login failure"},
        },
    },
)

result.answers["failed"].probs["yes"]   # 0.98
result.answers["route"].top             # "payments"
result.answers["severity"].top          # "1"
```

## Rules

* Each question takes 2 to 26 options.
* For `noul`, you can leave out `criteria`; the options are `no` and `yes`.
* For `score`, keys must be numeric levels like `"0"`, `"1"`, `"2"`.
* Option descriptions matter. Write them the way you’d brief a new teammate.
* `state` can be plain text or a JSON object, such as a database row or an event.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.