Documentation
¶
Index ¶
- Constants
- Variables
- func AbortLogWithMessage(c *gin.Context, statusCode int, message string, ...)
- func AbortLogWithMessageWithMode(m mode.Mode, c *gin.Context, statusCode int, message string, ...)
- func AbortWithMessage(c *gin.Context, statusCode int, message string, ...)
- func AbortWithMessageWithMode(m mode.Mode, c *gin.Context, statusCode int, message string, ...)
- func AdminAuth(c *gin.Context)
- func CORS() gin.HandlerFunc
- func CheckRelayMode(requestMode, modelMode mode.Mode) bool
- func ErrorResponse(c *gin.Context, code int, message string)
- func GenRequestID(t time.Time) string
- func GetChannelID(c *gin.Context) int
- func GetGenerationID(c *gin.Context) string
- func GetGroup(c *gin.Context) model.GroupCache
- func GetGroupAdjustedModelConfig(group model.GroupCache, mc model.ModelConfig) model.ModelConfig
- func GetJobID(c *gin.Context) string
- func GetMode(c *gin.Context) mode.Mode
- func GetModelCaches(c *gin.Context) *model.ModelCaches
- func GetModelConfig(c *gin.Context) model.ModelConfig
- func GetModelFromJSON(body []byte) (string, error)
- func GetPreviousResponseIDFromJSON(body []byte) (string, error)
- func GetRequestAt(c *gin.Context) time.Time
- func GetRequestID(c *gin.Context) string
- func GetRequestMetadata(c *gin.Context) map[string]string
- func GetRequestMetadataFromJSON(body []byte) (map[string]string, error)
- func GetRequestModel(c *gin.Context) string
- func GetRequestUser(c *gin.Context) string
- func GetRequestUserFromJSON(body []byte) (string, error)
- func GetResponseID(c *gin.Context) string
- func GetToken(c *gin.Context) model.TokenCache
- func GinRecoveryHandler(c *gin.Context)
- func IPBlock(c *gin.Context)
- func MCPAuth(c *gin.Context)
- func NewDistribute(mode mode.Mode) gin.HandlerFunc
- func NewLog(l *logrus.Logger) gin.HandlerFunc
- func NewMetaByContext(c *gin.Context, channel *model.Channel, mode mode.Mode, opts ...meta.Option) *meta.Meta
- func RequestIDMiddleware(c *gin.Context)
- func SetLogActualModelFields(fields logrus.Fields, actualModel string)
- func SetLogChannelFields(fields logrus.Fields, channel meta.ChannelMeta)
- func SetLogFieldsFromMeta(m *meta.Meta, fields logrus.Fields)
- func SetLogGroupFields(fields logrus.Fields, group model.GroupCache)
- func SetLogModeField(fields logrus.Fields, mode mode.Mode)
- func SetLogModelFields(fields logrus.Fields, model string)
- func SetLogRequestIDField(fields logrus.Fields, requestID string)
- func SetLogTokenFields(fields logrus.Fields, token model.TokenCache, internal bool)
- func SetRequestAt(c *gin.Context, requestAt time.Time)
- func SetRequestID(c *gin.Context, id string)
- func SuccessResponse(c *gin.Context, data any)
- func TokenAuth(c *gin.Context)
- type APIResponse
- type GroupBalanceConsumer
- type RequestWithMetadata
Constants ¶
View Source
const ( ChannelID = "channel_id" Group = "group" Token = "token" GroupBalance = "group_balance" RequestModel = "request_model" RequestUser = "request_user" RequestMetadata = "request_metadata" RequestAt = "request_at" RequestID = "request_id" ModelCaches = "model_caches" ModelConfig = "model_config" Mode = "mode" JobID = "job_id" GenerationID = "generation_id" ResponseID = "response_id" )
View Source
const ( XRateLimitLimitRequests = "X-RateLimit-Limit-Requests" //nolint:gosec XRateLimitLimitTokens = "X-RateLimit-Limit-Tokens" XRateLimitRemainingRequests = "X-RateLimit-Remaining-Requests" //nolint:gosec XRateLimitRemainingTokens = "X-RateLimit-Remaining-Tokens" XRateLimitResetRequests = "X-RateLimit-Reset-Requests" //nolint:gosec XRateLimitResetTokens = "X-RateLimit-Reset-Tokens" )
View Source
const (
GroupBalanceNotEnough = "group_balance_not_enough"
)
View Source
const (
RequestIDHeader = "X-Request-Id"
)
Variables ¶
View Source
var ( ErrRequestRateLimitExceeded = errors.New("request rate limit exceeded, please try again later") ErrRequestTpmLimitExceeded = errors.New("request tpm limit exceeded, please try again later") )
Functions ¶
func AbortLogWithMessage ¶
func AbortLogWithMessage( c *gin.Context, statusCode int, message string, opts ...relaymodel.WrapperErrorOptionFunc, )
func AbortLogWithMessageWithMode ¶
func AbortLogWithMessageWithMode( m mode.Mode, c *gin.Context, statusCode int, message string, opts ...relaymodel.WrapperErrorOptionFunc, )
func AbortWithMessage ¶
func AbortWithMessage( c *gin.Context, statusCode int, message string, opts ...relaymodel.WrapperErrorOptionFunc, )
func AbortWithMessageWithMode ¶
func AbortWithMessageWithMode( m mode.Mode, c *gin.Context, statusCode int, message string, opts ...relaymodel.WrapperErrorOptionFunc, )
func CORS ¶
func CORS() gin.HandlerFunc
func CheckRelayMode ¶
func GenRequestID ¶
func GetChannelID ¶
func GetGenerationID ¶
func GetGroupAdjustedModelConfig ¶
func GetGroupAdjustedModelConfig(group model.GroupCache, mc model.ModelConfig) model.ModelConfig
func GetModelCaches ¶
func GetModelCaches(c *gin.Context) *model.ModelCaches
func GetModelConfig ¶
func GetModelConfig(c *gin.Context) model.ModelConfig
func GetModelFromJSON ¶
func GetRequestID ¶
func GetRequestModel ¶
func GetRequestUser ¶
func GetRequestUserFromJSON ¶
func GetResponseID ¶
func GinRecoveryHandler ¶
func NewDistribute ¶
func NewDistribute(mode mode.Mode) gin.HandlerFunc
func NewMetaByContext ¶
func RequestIDMiddleware ¶
func SetLogActualModelFields ¶
func SetLogChannelFields ¶
func SetLogChannelFields(fields logrus.Fields, channel meta.ChannelMeta)
func SetLogGroupFields ¶
func SetLogGroupFields(fields logrus.Fields, group model.GroupCache)
func SetLogModelFields ¶
func SetLogRequestIDField ¶
func SetLogTokenFields ¶
func SetLogTokenFields(fields logrus.Fields, token model.TokenCache, internal bool)
func SetRequestID ¶
func SuccessResponse ¶
Types ¶
type APIResponse ¶
type GroupBalanceConsumer ¶
type GroupBalanceConsumer struct {
Group string
CheckBalance func(amount float64) bool
Consumer balance.PostGroupConsumer
// contains filtered or unexported fields
}
func GetGroupBalanceConsumer ¶
func GetGroupBalanceConsumer( c *gin.Context, group model.GroupCache, ) (*GroupBalanceConsumer, error)
func GetGroupBalanceConsumerFromContext ¶
func GetGroupBalanceConsumerFromContext(c *gin.Context) *GroupBalanceConsumer
type RequestWithMetadata ¶
Click to show internal directories.
Click to hide internal directories.