Build
Thinking levels
Choose how hard Kael works on a request with reasoning_effort.
Levels
The thinking level changes how Kael works on a request, not only how long it thinks. Start at low, the default, and move up when an answer is not good enough.
| Level | Use it for | Price per 1M tokens |
|---|---|---|
off | The fastest replies, when a question does not need extra thinking. | $2.00 in, $6.00 out |
low (default) | Everyday questions, quick edits, short answers. | $2.00 in, $6.00 out |
high | Debugging, code review, and problems with several steps. | $2.00 in, $6.00 out |
max | Your hardest work: security reviews, large refactors, anything you will act on without checking. | $2.00 in, $6.00 out |
z-low, z-high | The most demanding work, at a higher price. | $6.00 in, $15.00 out |
- Off is the fastest. The first word usually arrives within a few seconds. At every other level Kael thinks first, so the wait is longer and the output then streams quickly.
- Off, low, high and max cost the same per token. Higher levels think for longer, so a request takes more time and can use more tokens.
z-lowandz-highare priced higher per token. See Pricing and billing. - The level applies to the whole request, both the draft and the review.
Set the level
The setting has a different name in each format, but the same six values.
curl https://api.quancis.space/v1/chat/completions \
-H "Authorization: Bearer $QUAN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kael-beta",
"reasoning_effort": "high",
"messages": [{"role": "user", "content": "Find the race condition in this code: ..."}]
}'Values are not case sensitive. With the OpenAI Python SDK or the Anthropic SDK, pass the field through extra_body so it works whatever the SDK's own type list says.
What is not available
There is no auto level, so choose a level yourself. medium does not exist either. Any value outside the six returns a 400 that names the field, so a typo never runs at a level you did not choose.
{
"error": {
"message": "Invalid reasoning_effort 'auto'. Kael Beta supports 'off', 'low', 'high', 'max', 'z-low', or 'z-high'.",
"type": "invalid_request_error",
"param": "reasoning_effort"
}
}The Messages format's own thinking field is accepted and ignored.
In the Playground
The Playground has a thinking setting too, and remembers your choice in this browser.