feat: add new GPT-5.1 models to configuration files and update model selection logic in OpenAI provider

This commit is contained in:
Bjorn Melin
2025-11-14 01:35:11 -07:00
parent dbbfef292c
commit 8e9aa2304d
3 changed files with 178 additions and 6 deletions

View File

@@ -115,20 +115,51 @@ class OpenAIModelProvider(RegistryBackedProviderMixin, OpenAICompatibleProvider)
if category == ToolModelCategory.EXTENDED_REASONING:
# Prefer models with extended thinking support
# GPT-5-Codex first for coding tasks
preferred = find_first(["gpt-5-codex", "gpt-5-pro", "o3", "o3-pro", "gpt-5"])
# GPT-5.1 Codex first for coding tasks
preferred = find_first(
[
"gpt-5.1-codex",
"gpt-5.1",
"gpt-5-codex",
"gpt-5-pro",
"o3-pro",
"gpt-5",
"o3",
]
)
return preferred if preferred else allowed_models[0]
elif category == ToolModelCategory.FAST_RESPONSE:
# Prefer fast, cost-efficient models
# GPT-5 models for speed, GPT-5-Codex after (premium pricing but cached)
preferred = find_first(["gpt-5", "gpt-5-mini", "gpt-5-codex", "o4-mini", "o3-mini"])
# GPT-5.1 models for speed, GPT-5.1-Codex after (premium pricing but cached)
preferred = find_first(
[
"gpt-5.1",
"gpt-5.1-codex-mini",
"gpt-5",
"gpt-5-mini",
"gpt-5-codex",
"o4-mini",
"o3-mini",
]
)
return preferred if preferred else allowed_models[0]
else: # BALANCED or default
# Prefer balanced performance/cost models
# Include GPT-5-Codex for coding workflows
preferred = find_first(["gpt-5", "gpt-5-codex", "gpt-5-pro", "gpt-5-mini", "o4-mini", "o3-mini"])
# Include GPT-5.1 family for latest capabilities
preferred = find_first(
[
"gpt-5.1",
"gpt-5.1-codex",
"gpt-5",
"gpt-5-codex",
"gpt-5-pro",
"gpt-5-mini",
"o4-mini",
"o3-mini",
]
)
return preferred if preferred else allowed_models[0]