From d19a6914f9be83a1100defe201d16a5225610ad3 Mon Sep 17 00:00:00 2001 From: CaIon Date: Sat, 19 Jul 2025 11:28:18 +0800 Subject: [PATCH] fix: create NewOpenAIError function for improved error handling in Relay --- relay/relay-text.go | 2 +- types/error.go | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/relay/relay-text.go b/relay/relay-text.go index 9ca86a7c..60327074 100644 --- a/relay/relay-text.go +++ b/relay/relay-text.go @@ -210,7 +210,7 @@ func TextHelper(c *gin.Context) (newAPIError *types.NewAPIError) { resp, err := adaptor.DoRequest(c, relayInfo, requestBody) if err != nil { - return types.NewError(err, types.ErrorCodeDoRequestFailed) + return types.NewOpenAIError(err, types.ErrorCodeDoRequestFailed, http.StatusInternalServerError) } statusCodeMappingStr := c.GetString("status_code_mapping") diff --git a/types/error.go b/types/error.go index 40d141cd..5c8b37d2 100644 --- a/types/error.go +++ b/types/error.go @@ -152,6 +152,14 @@ func NewError(err error, errorCode ErrorCode) *NewAPIError { } } +func NewOpenAIError(err error, errorCode ErrorCode, statusCode int) *NewAPIError { + openaiError := OpenAIError{ + Message: err.Error(), + Type: string(errorCode), + } + return WithOpenAIError(openaiError, statusCode) +} + func NewErrorWithStatusCode(err error, errorCode ErrorCode, statusCode int) *NewAPIError { return &NewAPIError{ Err: err,