|
|
@@ -189,9 +189,13 @@ func NewError(err error, errorCode ErrorCode, ops ...NewAPIErrorOptions) *NewAPI
|
|
|
}
|
|
|
|
|
|
func NewOpenAIError(err error, errorCode ErrorCode, statusCode int, ops ...NewAPIErrorOptions) *NewAPIError {
|
|
|
+ if errorCode == ErrorCodeDoRequestFailed {
|
|
|
+ err = errors.New("upstream error: do request failed")
|
|
|
+ }
|
|
|
openaiError := OpenAIError{
|
|
|
Message: err.Error(),
|
|
|
Type: string(errorCode),
|
|
|
+ Code: errorCode,
|
|
|
}
|
|
|
return WithOpenAIError(openaiError, statusCode, ops...)
|
|
|
}
|
|
|
@@ -199,6 +203,7 @@ func NewOpenAIError(err error, errorCode ErrorCode, statusCode int, ops ...NewAP
|
|
|
func InitOpenAIError(errorCode ErrorCode, statusCode int, ops ...NewAPIErrorOptions) *NewAPIError {
|
|
|
openaiError := OpenAIError{
|
|
|
Type: string(errorCode),
|
|
|
+ Code: errorCode,
|
|
|
}
|
|
|
return WithOpenAIError(openaiError, statusCode, ops...)
|
|
|
}
|
|
|
@@ -224,7 +229,11 @@ func NewErrorWithStatusCode(err error, errorCode ErrorCode, statusCode int, ops
|
|
|
func WithOpenAIError(openAIError OpenAIError, statusCode int, ops ...NewAPIErrorOptions) *NewAPIError {
|
|
|
code, ok := openAIError.Code.(string)
|
|
|
if !ok {
|
|
|
- code = fmt.Sprintf("%v", openAIError.Code)
|
|
|
+ if openAIError.Code == nil {
|
|
|
+ code = fmt.Sprintf("%v", openAIError.Code)
|
|
|
+ } else {
|
|
|
+ code = "unknown_error"
|
|
|
+ }
|
|
|
}
|
|
|
if openAIError.Type == "" {
|
|
|
openAIError.Type = "upstream_error"
|