Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,8 @@ def _is_gemini_3_model(model: str) -> bool:

def _is_gemini_3_flash_model(model: str) -> bool:
"""Check if model is Gemini 3 Flash"""
return "gemini-3-flash" in model.lower() or model.lower().startswith("gemini-3-flash")
m = model.lower()
return m.startswith("gemini-3") and "flash" in m
Comment thread
balazssandor marked this conversation as resolved.
Comment on lines +50 to +51

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🚩 New code now matches "gemini-3.5-flash" as a Gemini 3 Flash model (behavioral change)

The old code checked "gemini-3-flash" in model.lower() which would NOT match "gemini-3.5-flash" (the ".5" breaks the substring). The new code m.startswith("gemini-3") and "flash" in m DOES match "gemini-3.5-flash" since it starts with "gemini-3" and contains "flash". This model is actively used in the codebase (see livekit-plugins/livekit-plugins-google/livekit/plugins/google/models.py:207 and examples/other/cartesia.py:62). Previously it would get thinking level "low"; now it gets "minimal". This is likely intentional given the commit message says "broaden to cover all Gemini 3 Flash variants" and gemini-3.5-flash IS a flash model, but the test file at tests/test_google_thought_signatures.py doesn't cover this case, so it's worth confirming this is the desired behavior.

Open in Devin Review

Was this helpful? React with πŸ‘ or πŸ‘Ž to provide feedback.



def _requires_thought_signatures(model: str) -> bool:
Expand Down
Loading