diff --git a/controller/relay-text.go b/controller/relay-text.go index d0fed54a..2cd5598a 100644 --- a/controller/relay-text.go +++ b/controller/relay-text.go @@ -347,13 +347,15 @@ func relayTextHelper(c *gin.Context, relayMode int) *OpenAIErrorWithStatusCode { isStream = isStream || strings.HasPrefix(resp.Header.Get("Content-Type"), "text/event-stream") if resp.StatusCode != http.StatusOK { - go func() { - // return pre-consumed quota - err := model.PostConsumeTokenQuota(tokenId, -preConsumedQuota) - if err != nil { - common.SysError("error return pre-consumed quota: " + err.Error()) - } - }() + if preConsumedQuota != 0 { + go func() { + // return pre-consumed quota + err := model.PostConsumeTokenQuota(tokenId, -preConsumedQuota) + if err != nil { + common.SysError("error return pre-consumed quota: " + err.Error()) + } + }() + } return relayErrorHandler(resp) } }