Gemini thinking configuration checker

Select the API and model, then paste request JSON or its generation configuration. Get specific findings and a minimal thinking-settings draft.

Check saved JSON settings locally; no model request is sent.

How it works

Choose a wire-format profile and input shape. Automatic detection treats request wrappers and request fields such as model, input or contents as a complete request. Use the explicit selector for ambiguous fragments. Thinking settings outside the permitted configuration location receive findings. generateContent REST reads generationConfig.thinkingConfig; Interactions reads generation_config. The checker compares explicit values with the selected model table. It reports mixed field shapes and keeps only recognized, valid thinking settings in the draft.

The draft is a configuration fragment, not a complete request. Invalid or omitted settings fall back to provider defaults if you use it. No numeric budget-to-level conversion is inferred. Integer budgets are checked without rounding.

Worked examples

2.5 Pro cannot disable thinking in generateContent

Select gemini-2.5-pro and paste {"thinkingConfig":{"thinkingBudget":0}}. The report has 1 error. A budget of 128 instead has 0 findings.

Hydrogen supports the extra level

With Interactions, gemini-4-hydrogen and {"thinking_level":"xhigh"}, there are 0 findings. The same settings with gemini-4-carbon produce 1 error.

Version and scope

Profiles checked 2026-11-14; Interactions revision 2026-05-20. Only listed models are covered. This does not check Vertex AI, OpenAI-compatible gateways, model availability, output-token limits, pricing or thought-signature replay. Unknown historical limits and undocumented budget mappings are intentionally omitted.

Frequently asked questions

Why does the same model accept different thinking fields?
API profiles differ. The documented Interactions table accepts levels for 2.5 models; generateContent uses budgets for those models.
Can I send both a budget and a level?
This checker flags that combination. Google explicitly documents a Gemini 4 error when both are sent.
Does a budget of zero always disable thinking?
No. For generateContent 2.5 Pro, zero is invalid. Its supported numeric range is 128–32768, with -1 for dynamic thinking.
Are SDK dictionaries accepted?
This checker targets JSON wire shapes, not Python objects or JavaScript SDK config wrappers. Convert the configuration to the chosen API shape first.
Will the draft preserve my request?
No. It contains only recognized valid thinking settings. Merge it deliberately after resolving findings; prompts and other generation settings are not copied.

Sources

Last reviewed 2026-11-14; next review due by 2026-12-14. The method is written out above so you can check our math.