Skip to content

feat(google): add configurable thinking level for Gemini 3 models#6585

Merged
katzdave merged 1 commit intoblock:mainfrom
rabi:thinking_level
Feb 5, 2026
Merged

feat(google): add configurable thinking level for Gemini 3 models#6585
katzdave merged 1 commit intoblock:mainfrom
rabi:thinking_level

Conversation

@rabi
Copy link
Copy Markdown
Contributor

@rabi rabi commented Jan 20, 2026

Summary

  • Defaults to 'low' instead of Google's default 'high' for better latency
  • Supports 'low' and 'high' levels for Gemini 3 models

Type of Change

  • Feature
  • Bug fix
  • Refactor / Code quality
  • Performance improvement
  • Documentation
  • Tests
  • Security fix
  • Build / Release
  • Other (specify below)

AI Assistance

  • This PR was created or reviewed with AI assistance

Testing

Unit testing and local testing with gemini3 models.

@rabi rabi requested a review from a team as a code owner January 20, 2026 06:47
Copy link
Copy Markdown
Collaborator

@michaelneale michaelneale left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think is ok with me. Would rather not add more env things but maybe in this case and just for this provider. Must be some other way to do config which is relevant to the provider? (I think you can add a variable to the provider and let people set it there - may be better @rabi ?)

@rabi
Copy link
Copy Markdown
Contributor Author

rabi commented Jan 21, 2026

I think is ok with me. Would rather not add more env things but maybe in this case and just for this provider. Must be some other way to do config which is relevant to the provider? (I think you can add a variable to the provider and let people set it there - may be better @rabi ?)

I think users would want these to be session specific, so prpbably won't make sense to have it in provider config. The same pattern of env vars are already there for others. CLAUDE_THINKING_ENABLED/CLAUDE_THINKING_BUDGET for Anthropic.

@rabi
Copy link
Copy Markdown
Contributor Author

rabi commented Jan 23, 2026

I think you can add a variable to the provider and let people set it there

@michaelneale Hey! Are you ok with the explanation or still want it in provider config? Even if we set in provider config, it can be overridden by env vars[1] and also it does not apply to all models (only gemini 3 models) for google provider.

Else, we can merge this to reduce the latency as we now default to 'low' thinking for our use-cases.

[1] https://github.com/block/goose/blob/main/crates/goose/src/config/base.rs#L637

@michaelneale
Copy link
Copy Markdown
Collaborator

thanks - is there some way to normalise this, this seems very very hard coded to gemini-3 for something they will probably change their mind over - can it be mapped from some normalised thing in the provider?

- Defaults to 'low' instead of Google's default 'high' for better latency
- Supports 'low' and 'high' levels for Gemini 3 Pro models
- Works with both Google AI and GCP Vertex AI providers

Signed-off-by: rabi <[email protected]>
@rabi
Copy link
Copy Markdown
Contributor Author

rabi commented Feb 5, 2026

thanks - is there some way to normalise this, this seems very very hard coded to gemini-3 for something they will probably change their mind over - can it be mapped from some normalised thing in the provider?

It's a gemini-3 thing and we've these kind of checks elsewhere too. They may change things in the future but we can't predict what api changes they would make. That's the reason I had earlier proposed to just use an env var. There is no way we can give the option of thinking leval to the user before a model is selected during configuration.

@katzdave katzdave added this pull request to the merge queue Feb 5, 2026
Merged via the queue into block:main with commit 06e8b85 Feb 5, 2026
18 checks passed
kuccello pushed a commit to kuccello/goose that referenced this pull request Feb 7, 2026
Tyler-Hardin pushed a commit to Tyler-Hardin/goose that referenced this pull request Feb 11, 2026
Tyler-Hardin pushed a commit to Tyler-Hardin/goose that referenced this pull request Feb 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants