effortParams
function effortParams( dialect, effort, model?): Record<string, unknown>;Defined in: core/src/providers/openai.ts:270
Effort → the request fields THIS endpoint accepts.
One knob, three incompatible spellings, and the differences are not cosmetic:
- On OpenRouter, “do not think” has no spelling that works on every
model. GLM 5.3 Flash and gpt-5-mini answer every explicit off with
400 "Reasoning is mandatory for this endpoint and cannot be disabled.", MiMo v2.6 Flash takes one, and DeepSeek V4 Flash thinks atlowand not with the field omitted. Sononeis said per model, fromOPENROUTER_NONE, which also says why an unlisted model gets nothing. Naming a level raises it. The accepted values arelow,highandmax(mediumandxhighare accepted too, but our vocabulary has no use for them). - DeepSeek V4 defaults thinking ON on its own API, so
nonehas to be an explicit refusal there. The same word is a different request on each dialect, and on OpenRouter on each model: the spelling belongs to the endpoint, never to the caller. - OpenAI takes
reasoning_effort, andnoneis one of its values, not the absence of the field. GPT-5.1 both acceptednoneand made it the default; everything from GPT-5 back still defaults tomedium. So sending nothing is NOT a way to say “do not think”: on every model released before 5.1 it means medium, and thinking tokens come out of the same budget as the answer. A capped turn then spends its whole allowance thinking and returns empty withfinish_reason: "length".
An absent effort sends nothing on every dialect and for every model: the
seam’s rule is that a knob the caller never touched is a knob the provider
still owns. On OpenRouter that makes none and “never asked” the same
request for every model outside OPENROUTER_NONE, and a different one for
the models in it.
model is the id the request names. Without it, none on OpenRouter sends
nothing, as it always has.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
dialect |
EffortDialect |
effort |
"none" | "low" | "medium" | "high" | "max" | undefined |
model? |
string |
Returns
Section titled “Returns”Record<string, unknown>