mirror of
https://github.com/songquanpeng/one-api.git
synced 2025-09-18 17:46:37 +08:00
- Updated error handling across multiple files with `Laisky/errors/v2` package - Replaced hardcoded error messages with `Laisky/errors` in relay/channel/tencent/adaptor.go - Added a function to check if a request should be retried in relay/controller/relay.go - Removed unused imports and variables, and updated comments in various files - Changed Redis cache handling in model/cache.go - Refactored error handling in relay/channel/tencent/main.go and relay/channel/baidu/main.go - Updated import paths and error handling in model/user.go, model/redemption.go, and controller/github.go - Added import for tiktoken-go package in relay/channel/openai/token.go - Added GetSign and ParseConfig functions in relay/channel/tencent/main.go - Replaced specific error imports with a more general one in relay/channel/ali/adaptor.go - Updated import comments and function calls in relay/channel/ali/adaptor.go - Added checks and custom error messages in model/token.go - Removed unused functions and variables in relay/channel/baidu/adaptor.go - Imported "github.com/Laisky/errors/v2" package in controller/channel-billing.go - Removed unused import packages in [relay/channel/tencent/adaptor.go](http://relay/channel/tencent/adaptor.go) and relay/channel/palm/adaptor.go - Updated go.mod and go.sum files with new dependencies and versions
38 lines
1.0 KiB
Go
38 lines
1.0 KiB
Go
package util
|
|
|
|
import (
|
|
"github.com/Laisky/errors/v2"
|
|
"github.com/songquanpeng/one-api/relay/constant"
|
|
"github.com/songquanpeng/one-api/relay/model"
|
|
"math"
|
|
)
|
|
|
|
func ValidateTextRequest(textRequest *model.GeneralOpenAIRequest, relayMode int) error {
|
|
if textRequest.MaxTokens < 0 || textRequest.MaxTokens > math.MaxInt32/2 {
|
|
return errors.New("max_tokens is invalid")
|
|
}
|
|
if textRequest.Model == "" {
|
|
return errors.New("model is required")
|
|
}
|
|
switch relayMode {
|
|
case constant.RelayModeCompletions:
|
|
if textRequest.Prompt == "" {
|
|
return errors.New("field prompt is required")
|
|
}
|
|
case constant.RelayModeChatCompletions:
|
|
if textRequest.Messages == nil || len(textRequest.Messages) == 0 {
|
|
return errors.New("field messages is required")
|
|
}
|
|
case constant.RelayModeEmbeddings:
|
|
case constant.RelayModeModerations:
|
|
if textRequest.Input == "" {
|
|
return errors.New("field input is required")
|
|
}
|
|
case constant.RelayModeEdits:
|
|
if textRequest.Instruction == "" {
|
|
return errors.New("field instruction is required")
|
|
}
|
|
}
|
|
return nil
|
|
}
|