Google has quietly changed how you steer its newest models. In the documentation for its latest Gemini models, the company now states that temperature, top_p, and top_k are deprecated and ignored on Gemini 3.6 Flash and Gemini 3.5 Flash-Lite, and that the same will hold for all future Gemini releases. Supplying those fields does nothing today, and Google warns that future model generations will reject them with an HTTP 400 error.

Try It: Update Your Gemini API Calls

If you build on Gemini, open your request code and delete the sampling block. Control that you used to get from a low temperature now comes from a clear system instruction that spells out the rules for your task, tone, and format. Where you previously nudged the model toward valid JSON with top_p, switch to structured outputs with a response schema, which enforces the shape of the answer instead of hoping the sampler cooperates. The migration is mechanical, but skipping it means your calls break the day the next model ships.

Why It Matters for Creators

Anyone wiring Gemini into an app, an image pipeline, or an agent has leaned on temperature for years to trade creativity against consistency. Removing it moves that control into prompt design and schemas, which is more predictable but demands a rewrite of habits and helper libraries. The change also lands right after Gemini 3.6 Flash arrived as Google's high-volume workhorse, so the models most builders reach for are exactly the ones that ignore the old knobs. Our coverage of the Gemini 3.6 Flash launch explains why that model sits at the center of so many creative stacks.

Key Details

Affected models: Gemini 3.6 Flash, Gemini 3.5 Flash-Lite, and all future Gemini releases, per the official model reference.

Current behavior: temperature, top_p, and top_k are accepted but ignored.

Future behavior: Passing these parameters will return an HTTP 400 error.

Recommended replacements: System instructions for behavior control, structured outputs for response formatting.

What to Do Next

Audit every Gemini call in your codebase and strip the sampling parameters from each request body. Move the intent behind them into an explicit system instruction, and lock down any output that another program parses with a response schema. Test the new calls against Gemini 3.6 Flash now, while the old fields are merely ignored, so you are not scrambling when a later model starts returning errors.