thinking_token_budget — нативный положительный integer. При выключенном thinking 42gpu удаляет его.
enable_thinking (top-level) — compatibility alias: переносится в chat_template_kwargs.enable_thinking и удаляется.
reasoning_effort: "none" выключает thinking; любая другая непустая строка включает. Это compatibility mapping, а не шкала качества.
thinking_budget — compatibility alias для thinking_token_budget. Нативное поле имеет приоритет.
max_tokens не относится только к финальному тексту: reasoning тоже тратит общий output budget. Если лимит закончился после reasoning и до ответа, response сохраняет reasoning_content и может получить diagnostic thinking_token_budget_exhausted.
В non-streaming reasoning приходит в choices[].message.reasoning_content, в SSE — в choices[].delta.reasoning_content.