From 3c95e1bb0de2c7938392215000d25ea4c1f135ef Mon Sep 17 00:00:00 2001 From: "Laisky.Cai" Date: Thu, 22 Feb 2024 03:25:45 +0000 Subject: [PATCH] refactor: Refactor text controller logic - Move the initialization of `requestBody` to a separate if block. - Add a comment to indicate that `requestBodyBytes` is created for debugging use. --- relay/controller/text.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/relay/controller/text.go b/relay/controller/text.go index 4e790e94..e19b571f 100644 --- a/relay/controller/text.go +++ b/relay/controller/text.go @@ -53,7 +53,6 @@ func RelayTextHelper(c *gin.Context) *model.ErrorWithStatusCode { // get request body var requestBody io.Reader - var jsonData []byte if meta.APIType == constant.APITypeOpenAI { // no need to convert request for openai if isModelMapped { @@ -70,13 +69,17 @@ func RelayTextHelper(c *gin.Context) *model.ErrorWithStatusCode { if err != nil { return openai.ErrorWrapper(err, "convert_request_failed", http.StatusInternalServerError) } - jsonData, err = json.Marshal(convertedRequest) + jsonData, err := json.Marshal(convertedRequest) if err != nil { return openai.ErrorWrapper(err, "json_marshal_failed", http.StatusInternalServerError) } requestBody = bytes.NewBuffer(jsonData) } + // for debug + requestBodyBytes, _ := io.ReadAll(requestBody) + requestBody = bytes.NewBuffer(requestBodyBytes) + // do request resp, err := adaptor.DoRequest(c, meta, requestBody) if err != nil { @@ -86,7 +89,7 @@ func RelayTextHelper(c *gin.Context) *model.ErrorWithStatusCode { meta.IsStream = meta.IsStream || strings.HasPrefix(resp.Header.Get("Content-Type"), "text/event-stream") if resp.StatusCode != http.StatusOK { util.ReturnPreConsumedQuota(ctx, preConsumedQuota, meta.TokenId) - logger.Error(ctx, fmt.Sprintf("relay text [%d] <- %q", resp.StatusCode, string(jsonData))) + logger.Error(ctx, fmt.Sprintf("relay text [%d] <- %q", resp.StatusCode, string(requestBodyBytes))) return util.RelayErrorHandler(resp) }