reasoning_effort
A parameter for adjusting the reasoning intensity of large models, used to control the internal reasoning budget allocated by the model. Levels include low, medium, high, xhigh, and max.
Timeline (last 90 days)
Thinking mode is enabled by default at high intensity; only three levels actually take effect: minimal maps to low, medium and xhigh map to high, and ultra maps to max.
When tool definitions and reasoning_effort are sent to gpt-5.6-luna at the same time, the API returns 400, and the response body states that function tools with reasoning_effort are not supported and suggests using /v1/responses or setting reasoning_effort to 'none'.
After keeping the tools and setting reasoning_effort to 'none' and retrying, tool calling returned to normal, and latency dropped from 4–5 seconds to 2 seconds.
Self-hosted vLLM instances do not accept a reasoning_effort value of 'none', returning a literal_error indicating that the input should be 'low', 'medium', or 'high'.
The 400 error body detection also checks for the keyword 'invalid', causing the system to incorrectly learn that gpt-5.6-luna lacks the reasoning_effort field and to stop sending even the necessary 'none' specification.
The thinking auto-truncation setting enabled for voice conversations was applied globally, causing none to be sent to the official OpenAI endpoint, and all response generation requests timed out after 60 seconds and returned 500.
The endpoint adaptation strategy that ultimately emerged is: send reasoning_effort: 'none' to standard endpoints; for vLLM, switch to chat_template_kwargs after the value is rejected; and for relay endpoints that return empty streaming responses, send no reasoning parameters at all.
MiniMax M3.1 Flash defaults to the max setting when the effort field is not passed in the request, and the model always performs thinking.
Different vendors handle unknown values and none for reasoning_effort inconsistently (rejecting, silently falling back to the default level, or translating to an internal thinking budget), causing the same string to produce different actual amounts of computation on different endpoints.
DeepSeek V4.1 Flash 1017 still consumes about 25 reasoning tokens when reasoning_effort is set to none, so it is not a true non-thinking mode.
4 more timeline events
All Facts (14)
MiniMax M3.1 Flash defaults to the max setting when the effort field is not passed in the request, and the model always performs thinking.
60%UnverifiedThinking mode is enabled by default at high intensity; only three levels actually take effect: minimal maps to low, medium and xhigh map to high, and ultra maps to max.
50%UnverifiedWhen tool definitions and reasoning_effort are sent to gpt-5.6-luna at the same time, the API returns 400, and the response body states that function tools with reasoning_effort are not supported and suggests using /v1/responses or setting reasoning_effort to 'none'.
50%UnverifiedAfter keeping the tools and setting reasoning_effort to 'none' and retrying, tool calling returned to normal, and latency dropped from 4–5 seconds to 2 seconds.
50%UnverifiedSelf-hosted vLLM instances do not accept a reasoning_effort value of 'none', returning a literal_error indicating that the input should be 'low', 'medium', or 'high'.
50%UnverifiedThe 400 error body detection also checks for the keyword 'invalid', causing the system to incorrectly learn that gpt-5.6-luna lacks the reasoning_effort field and to stop sending even the necessary 'none' specification.
50%UnverifiedThe thinking auto-truncation setting enabled for voice conversations was applied globally, causing none to be sent to the official OpenAI endpoint, and all response generation requests timed out after 60 seconds and returned 500.
50%UnverifiedThe endpoint adaptation strategy that ultimately emerged is: send reasoning_effort: 'none' to standard endpoints; for vLLM, switch to chat_template_kwargs after the value is rejected; and for relay endpoints that return empty streaming responses, send no reasoning parameters at all.
50%UnverifiedDifferent vendors handle unknown values and none for reasoning_effort inconsistently (rejecting, silently falling back to the default level, or translating to an internal thinking budget), causing the same string to produce different actual amounts of computation on different endpoints.
50%UnverifiedDeepSeek V4.1 Flash 1017 still consumes about 25 reasoning tokens when reasoning_effort is set to none, so it is not a true non-thinking mode.
50%UnverifiedOn such short coding repair tasks, the default thinking level has a greater impact on the bill than the per-token unit price itself.
50%UnverifiedOn the Chat Completions endpoint, `reasoning_effort` accepts values from `minimal` to `max`, does not support `none`, and sending `none` returns a 400 error.
50%UnverifiedReasoning intensity is typically exposed at the API level via a reasoning_effort field, which can be set to levels such as low, medium, and high.
50%UnverifiedEffort is sometimes referred to as reasoning_effort in API documentation and is typically divided into three tiers: Low / Medium / High (or Min / Medium / Max).
50%