添加国外服务器中转ai请求数据,添加gemini
This commit is contained in:
parent
36c39974a7
commit
062d8c676b
|
|
@ -444,6 +444,8 @@ func SendMessageForeignAI(c *gin.Context) {
|
||||||
if user.Role == "admin" {
|
if user.Role == "admin" {
|
||||||
//解析请求参数
|
//解析请求参数
|
||||||
if err := c.ShouldBind(&req); err == nil {
|
if err := c.ShouldBind(&req); err == nil {
|
||||||
|
reqBytes, _ := json.Marshal(req)
|
||||||
|
log.Println("SendMessageForeignAI req:", string(reqBytes))
|
||||||
//校验参数
|
//校验参数
|
||||||
if req.ModelParam.Model == "" || req.ModelParam.Url == "" || req.ModelParam.APIKey == "" {
|
if req.ModelParam.Model == "" || req.ModelParam.Url == "" || req.ModelParam.APIKey == "" {
|
||||||
resp.Code = proto.ParameterError
|
resp.Code = proto.ParameterError
|
||||||
|
|
|
||||||
|
|
@ -306,3 +306,44 @@ func OpenAIForeignAIResponseToGeneralMassageAndSendMsgQueue(data *proto.ReceiveM
|
||||||
worker.SetRedisWithExpire(data.IMParamContext.Channel+"_stream_msg", answer, time.Second*30)
|
worker.SetRedisWithExpire(data.IMParamContext.Channel+"_stream_msg", answer, time.Second*30)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 将任务发送到国外服务器
|
||||||
|
func SendOpenAIForeignAI(modelParam proto.ModelParam, imCtx *proto.IMParamContext, platform string) {
|
||||||
|
//post请求
|
||||||
|
url := "https://vis.ljsea.top/im/send_message_foreign_ai?super_id=1"
|
||||||
|
var req proto.SendMessageForeignAIRRequest
|
||||||
|
req.IMParamContext = *imCtx
|
||||||
|
req.ModelParam = modelParam
|
||||||
|
req.PlatForm = platform
|
||||||
|
reqBytes, err := json.Marshal(req)
|
||||||
|
if err != nil {
|
||||||
|
log.Println("send openai foreign ai request error:", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
superTokens := worker.GetRedisSetMembers("super_permission_tokens")
|
||||||
|
if len(superTokens) == 0 {
|
||||||
|
log.Println("send openai foreign ai super permission tokens is empty")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
//设置请求头
|
||||||
|
headers := map[string]string{
|
||||||
|
"token": superTokens[0],
|
||||||
|
"super_id": "1",
|
||||||
|
}
|
||||||
|
|
||||||
|
err, respBytes := worker.DoPostRequestJSON(url, reqBytes, headers)
|
||||||
|
if err != nil {
|
||||||
|
log.Println("send openai foreign ai request error:", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var resp proto.GenerateResp
|
||||||
|
err = json.Unmarshal(respBytes, &resp)
|
||||||
|
if err != nil {
|
||||||
|
log.Println("send openai foreign ai response error:", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if resp.Code != proto.SuccessCode {
|
||||||
|
log.Println("send openai foreign ai response error:", resp.Message)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -175,7 +175,7 @@ func WSReceiveMessageServiceV2(modelParam proto.ModelParam, ctx *proto.IMParamCo
|
||||||
case proto.ModelTypeHunyuan:
|
case proto.ModelTypeHunyuan:
|
||||||
generalModel.OpenAI(modelParam, ctx, ctx.ModelType)
|
generalModel.OpenAI(modelParam, ctx, ctx.ModelType)
|
||||||
case proto.ModelTypeGemini:
|
case proto.ModelTypeGemini:
|
||||||
generalModel.OpenAIForeignAI(modelParam, ctx, ctx.ModelType)
|
generalModel.SendOpenAIForeignAI(modelParam, ctx, ctx.ModelType)
|
||||||
default:
|
default:
|
||||||
resErr, resID = errors.New("model type not exist:"+ctx.ModelType), 0
|
resErr, resID = errors.New("model type not exist:"+ctx.ModelType), 0
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue