reasoning_effort parameter. See model support for details.
Reading the output
Reasoning models return their thinking in a separatereasoning_content field, keeping content clean:
Some providers (Anthropic, Google, OpenAI, Qwen) return encrypted or summarized reasoning tokens. When this happens,
reasoning_content contains a "[Some reasoning content is encrypted]" placeholder.Streaming
When streaming,reasoning_content arrives in the delta before the final answer:
Reasoning effort
Thereasoning_effort parameter controls how much thinking a model does before responding. Higher effort means deeper reasoning but more tokens and latency.
Accepted values
Model support
The tables below list models with knownreasoning_effort support. Other models may still generate reasoning tokens (visible in usage.completion_tokens_details.reasoning_tokens) without exposing an effort control. To check whether a specific model supports reasoning or the reasoning_effort parameter, read the supportsReasoning and supportsReasoningEffort fields on the /v1/models endpoint.
OpenAI
Anthropic
xAI
Grok models (Grok 4.1 Fast, Grok Code Fast) do not supportreasoning_effort. Specifying it will result in an error.
Other models
Usage
Passreasoning_effort as a top-level parameter or use the nested reasoning.effort format:
"reasoning_effort": "high" is also accepted.
Disabling reasoning
There are two ways to disable reasoning:
For models that support it,
reasoning.enabled: false is the more reliable option:
Token limits
Reasoning models generate visible answer tokens (incontent) and reasoning tokens (in reasoning_content). Both count toward your token budget.
Setting a token cap
Usemax_completion_tokens to cap the total number of tokens the model generates, including reasoning:
max_tokens is also accepted and behaves the same way. If both are set, max_completion_tokens takes precedence.
To get more visible output, raise the cap, lower reasoning_effort, or disable reasoning.
Reading the breakdown
Theusage object shows how your budget was spent:
finish_reason is length.
Each model’s upper bound is available as maxCompletionTokens on the /v1/models endpoint.
Non-reasoning models
max_tokens and max_completion_tokens behave the same on non-reasoning models, capping visible output directly.
Capability discovery
Check what a model supports via the/v1/models endpoint:
Best practices
- Default to
mediumfor general use - Use
highorxhighfor complex tasks (math, code, analysis) - Use
lowfor latency-sensitive applications - Use
reasoning.enabled: falseor set effort tononeto disable reasoning - When in doubt, use
low,medium, orhigh. These are the most widely supported values