feat: add new GPT-5.1 models to configuration files and update model selection logic in OpenAI provider
This commit is contained in:
@@ -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]
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user