External Publication
Visit Post

Gpt-5.4 ignores reasoning_effort="none" when max_completion_tokens is used

OpenAI Developer Community April 2, 2026
Source

Hi!

Thanks for the clear repro and raising this!

I can confirm: chat.completions behaves correctly with reasoning_effort: "none" on its own, but when adding max_completion_tokens, it then ignores none, uses the whole budget on reasoning tokens, and returns an empty string with finish_reason: "length".

One possible solution is to switch this call to the Responses API and use:

response = client.responses.create(
    model="gpt-5.4",
    input="Explain cats to dogs.",
    reasoning={"effort": "none"},
    max_output_tokens=100,
)

That returns normal text with reasoning_tokens: 0.

Discussion in the ATmosphere

Loading comments...