chore(models): retire deprecated models, simplify thinking config

Trim each provider to current-generation models and drop the special-casing
they required:

- OpenAI: remove gpt-4.1 (deprecated; the only non-reasoning model).
- Anthropic: remove Claude Sonnet 4.5 (legacy; the only Sonnet that 400s on effort).
- Google: remove the Gemini 2.5 line (superseded by 3.x).
- Gemini client: drop the integer thinking_budget mapping; 3.x takes the string
  thinking_level directly.

Effort/reasoning gates stay as defense in depth for custom model IDs. All kept
IDs verified against live APIs.
This commit is contained in:
Yijia-Xiao
2026-06-21 21:03:05 +00:00
parent a420ad0f3b
commit 7bb16c5daa
4 changed files with 55 additions and 21 deletions

View File

@@ -21,7 +21,7 @@ class TestGoogleApiKeyStandardization(unittest.TestCase):
for msg, kwargs, expected_key in test_cases:
with self.subTest(msg=msg):
mock_chat.reset_mock()
client = GoogleClient("gemini-2.5-flash", **kwargs)
client = GoogleClient("gemini-3.5-flash", **kwargs)
client.get_llm()
call_kwargs = mock_chat.call_args[1]
self.assertEqual(call_kwargs.get("google_api_key"), expected_key)