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

# Reasoning models

> Use reasoning-capable models for math, logic, code, planning, and other multi-step tasks.

Reasoning models spend more computation on difficult problems before returning an answer. They are useful for math, logic, programming, planning, analysis, and tasks where a quick general-purpose response is not enough.

They can be slower and more expensive than standard chat models, so use them when the task benefits from deeper reasoning.

## When to use them

| Task                                       | Recommended model type    |
| ------------------------------------------ | ------------------------- |
| Translation, rewriting, short Q\&A         | Standard chat model       |
| Math proof, logic puzzle, algorithm design | Reasoning model           |
| Complex planning or architecture analysis  | Reasoning model           |
| High-volume simple classification          | Standard or smaller model |

## Control reasoning effort

Some OpenAI-compatible reasoning models support `reasoning_effort`:

```json theme={null}
{
  "model": "o3-mini",
  "messages": [
    {"role": "user", "content": "Solve this logic puzzle step by step."}
  ],
  "reasoning_effort": "high"
}
```

Common values:

| Value    | Behavior                          | Use case                        |
| -------- | --------------------------------- | ------------------------------- |
| `low`    | Faster, lower cost                | Simple reasoning tasks          |
| `medium` | Balanced                          | General reasoning tasks         |
| `high`   | More compute, slower, higher cost | Hard math, logic, or code tasks |

Supported values depend on the selected model.

## Reasoning content

Some providers expose a separate reasoning field, such as `reasoning_content`, while others return only the final answer. If the model exposes reasoning content, your application can display it, store it for debugging, or ignore it.

Example response shape:

```json theme={null}
{
  "choices": [
    {
      "message": {
        "role": "assistant",
        "reasoning_content": "I will compare the constraints and eliminate invalid options...",
        "content": "The correct answer is B."
      },
      "finish_reason": "stop"
    }
  ]
}
```

Field names and availability vary by model provider. For production systems, treat reasoning fields as optional.

## Streaming reasoning output

In streaming mode, a provider may send reasoning deltas before final answer deltas. If you choose to display them, keep them visually separate from the final answer and make sure your parser handles missing fields.

## Cost and latency

Reasoning tokens usually count toward output usage. A higher reasoning budget may improve quality on hard tasks, but it also increases latency and cost. Monitor usage in [dashboard and usage](/en/platform/dashboard-and-usage).

## Practical guidance

* Start with a standard model for simple tasks.
* Use reasoning models for hard tasks with measurable accuracy needs.
* Keep prompts focused and provide the necessary facts up front.
* Set reasoning controls only when the selected model supports them.
* Validate final answers when they affect money, permissions, or user data.

## Next steps

* [Structured output](/en/guide/structured-output)
* [Vision and image generation](/en/guide/vision-and-image)
