Gemini models engage in dynamic thinking by default, automatically adjusting the amount of reasoning effort based on the complexity of the user's request.

However, if you have specific latency constraints or require the model to engage in deeper reasoning than usual, you can optionally use parameters to control thinking behaviour.

Documentation: link

Notes:

  • You cannot disable thinking for Gemini 3 Pro. Gemini 2.5 series models don't support thinkingLevel; use thinkingBudget instead.
  • Settings are mutually exclusive

Comment From: rking-bennie

@ddobrin Are you able to get gemini-3-pro-preview with location:global to work with Spring AI? Currently gemini-3-pro-preview is only deployed to "global" and whenever set that for location, Spring returns a "could not generate content" because the PredictionService said it's not available.

I have set the below. I'm only asking here before I create an issue because from your message it seems like you got this to work.

spring:
    ai:
      vertex:
        ai:
          gemini:
            chat:
              options:
                model: gemini-3-pro-preview
            location: global
            project-id: {myProjectId}