Skip to content

Per-Model Details

How specific model families handle parameters differently from the defaults in Parameter Support by Model. All parameters below are top-level request fields unless noted — you can send them through any API format. The router normalises them automatically, so you generally don't need to know these details; they're here for when you want precise control.

GPT-5 series

GPT-5 models apply strict parameter sanitisation:

Parameter Behaviour
max_tokens Automatically converted to max_completion_tokens.
temperature Accepted only when = 1.0, or when reasoning_effort = "none" (GPT-5.1+).
presence_penalty, frequency_penalty, stop, logit_bias Always dropped.
logprobs, top_logprobs, top_p Accepted only when reasoning_effort = "none" (GPT-5.1+).
reasoning_effort Supported on all GPT-5 variants.

Claude 4+

The router normalises the thinking parameter to match the target Claude model — clients don't need to know which mode a model uses.

Adaptive thinking models (Claude Sonnet 4.6, Opus 4.6, Opus 4.7, Opus 4.8 and newer):

Parameter Behaviour
thinking.type = "enabled" Converted to "adaptive". budget_tokens is optional and ignored when adaptive.
thinking.type = "adaptive" Passed through directly.
reasoning_effort Mapped to thinking.type = "adaptive".

Non-adaptive thinking models (Claude Haiku 4.5, Sonnet 4.5, Opus 4.5):

Parameter Behaviour
thinking.type = "enabled" Requires budget_tokens (minimum 1024).
thinking.type = "adaptive" Converted to "enabled" with a default budget.
reasoning_effort Mapped to budget_tokens (low / medium / high → token counts).
budget_tokens Must be ≥ 1024 and less than max_tokens.

All Claude models support tools, tool_choice, parallel_tool_calls, temperature, top_p, max_tokens, and response_format.

Gemini

Parameter Behaviour
thinking / reasoning_effort Accepted on all Gemini models; silently ignored on models without thinking support.
frequency_penalty, presence_penalty Not available on preview or Gemini 3 models.
top_k Not a standard top-level field — pass via extra_body; forwarded when supported natively.