diff --git a/common/model-ratio.go b/common/model-ratio.go index 6eab850..77167f9 100644 --- a/common/model-ratio.go +++ b/common/model-ratio.go @@ -430,7 +430,7 @@ func GetAudioRatio(name string) float64 { func GetAudioCompletionRatio(name string) float64 { if strings.HasPrefix(name, "gpt-4o-realtime") { - return 10 + return 2 } return 2 } diff --git a/service/quota.go b/service/quota.go index 7dd49b9..1974ad7 100644 --- a/service/quota.go +++ b/service/quota.go @@ -78,8 +78,9 @@ func PostWssConsumeQuota(ctx *gin.Context, relayInfo *relaycommon.RelayInfo, mod quota := 0 if !usePrice { - quota = int(math.Round(float64(textInputTokens)*ratio + float64(textOutTokens)*ratio*completionRatio)) - quota += int(math.Round(float64(audioInputTokens)*ratio*audioRatio + float64(audioOutTokens)*ratio*audioRatio*audioCompletionRatio)) + quota = int(math.Round(float64(textInputTokens) + float64(textOutTokens)*completionRatio)) + quota += int(math.Round(float64(audioInputTokens)*audioRatio + float64(audioOutTokens)*audioRatio*audioCompletionRatio)) + quota = int(math.Round(float64(quota) * ratio)) if ratio != 0 && quota <= 0 { quota = 1 }