|
@@ -23,7 +23,7 @@ func getRerankPromptToken(rerankRequest dto.RerankRequest) int {
|
|
|
return token
|
|
return token
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-func RerankHelper(c *gin.Context, relayMode int) *dto.OpenAIErrorWithStatusCode {
|
|
|
|
|
|
|
+func RerankHelper(c *gin.Context, relayMode int) (openaiErr *dto.OpenAIErrorWithStatusCode) {
|
|
|
relayInfo := relaycommon.GenRelayInfo(c)
|
|
relayInfo := relaycommon.GenRelayInfo(c)
|
|
|
|
|
|
|
|
var rerankRequest *dto.RerankRequest
|
|
var rerankRequest *dto.RerankRequest
|
|
@@ -79,6 +79,12 @@ func RerankHelper(c *gin.Context, relayMode int) *dto.OpenAIErrorWithStatusCode
|
|
|
if openaiErr != nil {
|
|
if openaiErr != nil {
|
|
|
return openaiErr
|
|
return openaiErr
|
|
|
}
|
|
}
|
|
|
|
|
+ defer func() {
|
|
|
|
|
+ if openaiErr != nil {
|
|
|
|
|
+ returnPreConsumedQuota(c, relayInfo, userQuota, preConsumedQuota)
|
|
|
|
|
+ }
|
|
|
|
|
+ }()
|
|
|
|
|
+
|
|
|
adaptor := GetAdaptor(relayInfo.ApiType)
|
|
adaptor := GetAdaptor(relayInfo.ApiType)
|
|
|
if adaptor == nil {
|
|
if adaptor == nil {
|
|
|
return service.OpenAIErrorWrapperLocal(fmt.Errorf("invalid api type: %d", relayInfo.ApiType), "invalid_api_type", http.StatusBadRequest)
|
|
return service.OpenAIErrorWrapperLocal(fmt.Errorf("invalid api type: %d", relayInfo.ApiType), "invalid_api_type", http.StatusBadRequest)
|
|
@@ -104,8 +110,7 @@ func RerankHelper(c *gin.Context, relayMode int) *dto.OpenAIErrorWithStatusCode
|
|
|
if resp != nil {
|
|
if resp != nil {
|
|
|
httpResp = resp.(*http.Response)
|
|
httpResp = resp.(*http.Response)
|
|
|
if httpResp.StatusCode != http.StatusOK {
|
|
if httpResp.StatusCode != http.StatusOK {
|
|
|
- returnPreConsumedQuota(c, relayInfo, userQuota, preConsumedQuota)
|
|
|
|
|
- openaiErr := service.RelayErrorHandler(httpResp)
|
|
|
|
|
|
|
+ openaiErr = service.RelayErrorHandler(httpResp)
|
|
|
// reset status code 重置状态码
|
|
// reset status code 重置状态码
|
|
|
service.ResetStatusCode(openaiErr, statusCodeMappingStr)
|
|
service.ResetStatusCode(openaiErr, statusCodeMappingStr)
|
|
|
return openaiErr
|
|
return openaiErr
|
|
@@ -114,7 +119,6 @@ func RerankHelper(c *gin.Context, relayMode int) *dto.OpenAIErrorWithStatusCode
|
|
|
|
|
|
|
|
usage, openaiErr := adaptor.DoResponse(c, httpResp, relayInfo)
|
|
usage, openaiErr := adaptor.DoResponse(c, httpResp, relayInfo)
|
|
|
if openaiErr != nil {
|
|
if openaiErr != nil {
|
|
|
- returnPreConsumedQuota(c, relayInfo, userQuota, preConsumedQuota)
|
|
|
|
|
// reset status code 重置状态码
|
|
// reset status code 重置状态码
|
|
|
service.ResetStatusCode(openaiErr, statusCodeMappingStr)
|
|
service.ResetStatusCode(openaiErr, statusCodeMappingStr)
|
|
|
return openaiErr
|
|
return openaiErr
|