SIGN IN SIGN UP

fix: use thinking levels for Gemini 3 models instead of thinking budgets (#690)

Gemini 3 models use discrete thinking levels (minimal/low/medium/high)
while Gemini 2.5 continues using token-based thinking budgets.

Changes:
- Add normalizeGoogleThinkingConfig() to route correct config per model family
- Add ThinkingLevelConfig UI component for Gemini 3 session settings
- Default to "high" level explicitly when user hasn't set one
- Strip stale thinkingLevel for unsupported variants (e.g. image models)
- Generalized regex patterns to cover future Gemini 3.x versions
- Exclude pro-image models via negative lookahead
- Case-insensitive model ID matching

Based on the approach from chatboxai/chatbox#3609 by @MashiroCodfish.

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
(cherry picked from commit da261a97f20229dc561e2b59c1789676e39eb69d)
Z
Zeng Xian committed
919e6d0284a8e02ae4c6349a4a8510a759d2cb5c
Parent: bb63e0f