Files
bifrost/core/providers/replicate/errors.go
Beyhan Oğur 880f412e2c first commit
2026-04-26 21:52:23 +03:00

30 lines
725 B
Go

package replicate
import (
"github.com/bytedance/sonic"
schemas "github.com/maximhq/bifrost/core/schemas"
)
// parseReplicateError parses Replicate API error response
func parseReplicateError(body []byte, statusCode int) *schemas.BifrostError {
var replicateErr ReplicateError
if err := sonic.Unmarshal(body, &replicateErr); err == nil && replicateErr.Detail != "" {
return &schemas.BifrostError{
IsBifrostError: false,
StatusCode: &statusCode,
Error: &schemas.ErrorField{
Message: replicateErr.Detail,
},
}
}
// Fallback to generic error
return &schemas.BifrostError{
IsBifrostError: false,
StatusCode: &statusCode,
Error: &schemas.ErrorField{
Message: string(body),
},
}
}