openmeter / llmcost /errors.go
Leon4gr45's picture
Upload folder using huggingface_hub (part 5)
cee2387 verified
Raw
History Blame Contribute Delete
2.8 kB
package llmcost
import (
"fmt"
"net/http"
"github.com/openmeterio/openmeter/pkg/framework/commonhttp"
"github.com/openmeterio/openmeter/pkg/models"
)
func NewPriceNotFoundError(provider, modelID string) error {
return models.NewGenericNotFoundError(
fmt.Errorf("llm cost price not found for provider: %s, model_id: %s", provider, modelID),
)
}
func NewPriceOverrideNotFoundError(id string) error {
return models.NewGenericNotFoundError(
fmt.Errorf("llm cost price override not found by id: %s", id),
)
}
const ErrCodeProviderEmpty models.ErrorCode = "llm_cost_provider_empty"
var ErrProviderEmpty = models.NewValidationIssue(
ErrCodeProviderEmpty,
"provider must not be empty",
models.WithFieldString("provider"),
models.WithCriticalSeverity(),
commonhttp.WithHTTPStatusCodeAttribute(http.StatusBadRequest),
)
const ErrCodeModelIDEmpty models.ErrorCode = "llm_cost_model_id_empty"
var ErrModelIDEmpty = models.NewValidationIssue(
ErrCodeModelIDEmpty,
"model_id must not be empty",
models.WithFieldString("model_id"),
models.WithCriticalSeverity(),
commonhttp.WithHTTPStatusCodeAttribute(http.StatusBadRequest),
)
const ErrCodeNamespaceEmpty models.ErrorCode = "llm_cost_namespace_empty"
var ErrNamespaceEmpty = models.NewValidationIssue(
ErrCodeNamespaceEmpty,
"namespace must not be empty",
models.WithFieldString("namespace"),
models.WithCriticalSeverity(),
commonhttp.WithHTTPStatusCodeAttribute(http.StatusBadRequest),
)
const ErrCodePriceIDEmpty models.ErrorCode = "llm_cost_price_id_empty"
var ErrPriceIDEmpty = models.NewValidationIssue(
ErrCodePriceIDEmpty,
"price id must not be empty",
models.WithFieldString("id"),
models.WithCriticalSeverity(),
commonhttp.WithHTTPStatusCodeAttribute(http.StatusBadRequest),
)
const ErrCodePriceMustBeNonNegative models.ErrorCode = "llm_cost_price_non_negative"
var ErrPriceMustBeNonNegative = models.NewValidationIssue(
ErrCodePriceMustBeNonNegative,
"price must be non-negative",
models.WithFieldString("pricing"),
models.WithCriticalSeverity(),
commonhttp.WithHTTPStatusCodeAttribute(http.StatusBadRequest),
)
const ErrCodeEffectiveFromAfterTo models.ErrorCode = "llm_cost_effective_from_after_to"
var ErrEffectiveFromAfterTo = models.NewValidationIssue(
ErrCodeEffectiveFromAfterTo,
"effective_from must not be after effective_to",
models.WithFieldString("effective_from"),
models.WithCriticalSeverity(),
commonhttp.WithHTTPStatusCodeAttribute(http.StatusBadRequest),
)
const ErrCodeInvalidPriceSource models.ErrorCode = "llm_cost_invalid_source"
var ErrInvalidPriceSource = models.NewValidationIssue(
ErrCodeInvalidPriceSource,
"invalid price source",
models.WithFieldString("source"),
models.WithCriticalSeverity(),
commonhttp.WithHTTPStatusCodeAttribute(http.StatusBadRequest),
)