MCPcopy Index your code
hub / github.com/aiprodcoder/MIXAPI / relayHandler

Function relayHandler

controller/relay.go:27–70  ·  view source on GitHub ↗
(c *gin.Context, relayMode int)

Source from the content-addressed store, hash-verified

25)
26
27func relayHandler(c *gin.Context, relayMode int) *types.NewAPIError {
28 var err *types.NewAPIError
29 switch relayMode {
30 case relayconstant.RelayModeImagesGenerations, relayconstant.RelayModeImagesEdits:
31 err = relay.ImageHelper(c)
32 case relayconstant.RelayModeAudioSpeech:
33 fallthrough
34 case relayconstant.RelayModeAudioTranslation:
35 fallthrough
36 case relayconstant.RelayModeAudioTranscription:
37 err = relay.AudioHelper(c)
38 case relayconstant.RelayModeRerank:
39 err = relay.RerankHelper(c, relayMode)
40 case relayconstant.RelayModeEmbeddings:
41 err = relay.EmbeddingHelper(c)
42 case relayconstant.RelayModeResponses:
43 err = relay.ResponsesHelper(c)
44 case relayconstant.RelayModeGemini:
45 err = relay.GeminiHelper(c)
46 default:
47 err = relay.TextHelper(c)
48 }
49
50 if constant2.ErrorLogEnabled && err != nil {
51 // 保存错误日志到mysql中
52 userId := c.GetInt("id")
53 tokenName := c.GetString("token_name")
54 modelName := c.GetString("original_model")
55 tokenId := c.GetInt("token_id")
56 userGroup := c.GetString("group")
57 channelId := c.GetInt("channel_id")
58 other := make(map[string]interface{})
59 other["error_type"] = err.ErrorType
60 other["error_code"] = err.GetErrorCode()
61 other["status_code"] = err.StatusCode
62 other["channel_id"] = channelId
63 other["channel_name"] = c.GetString("channel_name")
64 other["channel_type"] = c.GetInt("channel_type")
65
66 model.RecordErrorLog(c, userId, channelId, modelName, tokenName, err.Error(), tokenId, 0, false, userGroup, other)
67 }
68
69 return err
70}
71
72func Relay(c *gin.Context) {
73 log.Println("===========Relay==========", c)

Callers 1

relayRequestFunction · 0.85

Calls 10

GetErrorCodeMethod · 0.95
ErrorMethod · 0.95
ImageHelperFunction · 0.92
AudioHelperFunction · 0.92
RerankHelperFunction · 0.92
EmbeddingHelperFunction · 0.92
ResponsesHelperFunction · 0.92
GeminiHelperFunction · 0.92
TextHelperFunction · 0.92
RecordErrorLogFunction · 0.92

Tested by

no test coverage detected