diff --git a/backend/internal/service/billing_service.go b/backend/internal/service/billing_service.go index 3c8b52af97..71d74ae6e0 100644 --- a/backend/internal/service/billing_service.go +++ b/backend/internal/service/billing_service.go @@ -1141,10 +1141,6 @@ func (s *BillingService) shouldApplySessionLongContextPricing(tokens UsageTokens return totalInputTokens > pricing.LongContextInputThreshold } -func isOpenAIGPT56Model(normalized string) bool { - return normalized == "gpt-5.6-sol" || normalized == "gpt-5.6-terra" || normalized == "gpt-5.6-luna" -} - func usesOpenAILegacyLongContextPricing(normalized string) bool { return normalized == "gpt-5.4" || normalized == "gpt-5.5" || normalized == "gpt-5.5-pro" } diff --git a/backend/internal/service/openai_gateway_request_body.go b/backend/internal/service/openai_gateway_request_body.go index f1e353b2af..0e888e145b 100644 --- a/backend/internal/service/openai_gateway_request_body.go +++ b/backend/internal/service/openai_gateway_request_body.go @@ -1218,13 +1218,3 @@ func normalizeOpenAIReasoningEffortForModel(raw, model string) string { } return normalizeOpenAIReasoningEffort(raw) } - -func isOpenAIGPT56Model(model string) bool { - normalized := canonicalizeOpenAIModelAliasSpelling(model) - for _, prefix := range []string{"gpt-5.6-sol", "gpt-5.6-terra", "gpt-5.6-luna"} { - if normalized == prefix || strings.HasPrefix(normalized, prefix+"-") { - return true - } - } - return false -} diff --git a/backend/internal/service/openai_model_alias.go b/backend/internal/service/openai_model_alias.go index 4e3d3b2d9a..338de9e8a5 100644 --- a/backend/internal/service/openai_model_alias.go +++ b/backend/internal/service/openai_model_alias.go @@ -98,6 +98,18 @@ func normalizeKnownOpenAICodexModel(model string) string { } } +// isOpenAIGPT56Model 判断是否 GPT-5.6 系列模型;入参可为原始模型名 +// (含大小写/路径/后缀变体)或已归一化的基名,两者均能正确识别。 +func isOpenAIGPT56Model(model string) bool { + normalized := canonicalizeOpenAIModelAliasSpelling(model) + for _, prefix := range []string{"gpt-5.6-sol", "gpt-5.6-terra", "gpt-5.6-luna"} { + if normalized == prefix || strings.HasPrefix(normalized, prefix+"-") { + return true + } + } + return false +} + func appendUsageBillingModelCandidate(candidates []string, seen map[string]struct{}, model string) []string { trimmed := strings.TrimSpace(model) if trimmed == "" {