Update relay-text.go

在上下文中存入promptTokens,避免重试过程重复计算
This commit is contained in:
xqx333
2024-12-26 02:00:04 +08:00
committed by GitHub
parent bfba4866a5
commit c86762b656

View File

@@ -108,10 +108,17 @@ func TextHelper(c *gin.Context) (openaiErr *dto.OpenAIErrorWithStatusCode) {
} }
} }
promptTokens, err := getPromptTokens(textRequest, relayInfo) // 获取 promptTokens如果上下文中已经存在则直接使用
// count messages token error 计算promptTokens错误 var promptTokens int
if err != nil { if value, exists := c.Get("prompt_tokens"); exists {
return service.OpenAIErrorWrapper(err, "count_token_messages_failed", http.StatusInternalServerError) promptTokens = value.(int)
} else {
promptTokens, err = getPromptTokens(textRequest, relayInfo)
// count messages token error 计算promptTokens错误
if err != nil {
return service.OpenAIErrorWrapper(err, "count_token_messages_failed", http.StatusInternalServerError)
}
c.Set("prompt_tokens", promptTokens)
} }
if !getModelPriceSuccess { if !getModelPriceSuccess {