From db575a1c254488ca81f1420496ae51b91a3ec3d3 Mon Sep 17 00:00:00 2001 From: CaIon <1808837298@qq.com> Date: Sun, 12 May 2024 19:16:00 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D"/v1/models"=E4=B8=8D?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E8=87=AA=E5=AE=9A=E4=B9=89=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=20=EF=BC=88close=20#235)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- controller/model.go | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/controller/model.go b/controller/model.go index 4d8e5e818..890b26038 100644 --- a/controller/model.go +++ b/controller/model.go @@ -3,7 +3,6 @@ package controller import ( "fmt" "github.com/gin-gonic/gin" - "log" "net/http" "one-api/common" "one-api/constant" @@ -48,7 +47,7 @@ var openAIModels []OpenAIModels var openAIModelsMap map[string]OpenAIModels var channelId2Models map[int][]string -func init() { +func getPermission() []OpenAIModelPermission { var permission []OpenAIModelPermission permission = append(permission, OpenAIModelPermission{ Id: "modelperm-LwHkVFn8AcMItP432fKKDIKJ", @@ -64,7 +63,12 @@ func init() { Group: nil, IsBlocking: false, }) + return permission +} + +func init() { // https://platform.openai.com/docs/models/model-endpoint-compatibility + permission := getPermission() for i := 0; i < relayconstant.APITypeDummy; i++ { if i == relayconstant.APITypeAIProxyLibrary { continue @@ -138,7 +142,6 @@ func init() { if apiType == -1 || apiType == relayconstant.APITypeAIProxyLibrary { continue } - log.Println(apiType) meta := &relaycommon.RelayInfo{ChannelType: i} adaptor := relay.GetAdaptor(apiType) adaptor.Init(meta, dto.GeneralOpenAIRequest{}) @@ -158,9 +161,20 @@ func ListModels(c *gin.Context) { } models := model.GetGroupModels(user.Group) userOpenAiModels := make([]OpenAIModels, 0) + permission := getPermission() for _, s := range models { if _, ok := openAIModelsMap[s]; ok { userOpenAiModels = append(userOpenAiModels, openAIModelsMap[s]) + } else { + userOpenAiModels = append(userOpenAiModels, OpenAIModels{ + Id: s, + Object: "model", + Created: 1626777600, + OwnedBy: "openai", + Permission: permission, + Root: s, + Parent: nil, + }) } } c.JSON(200, gin.H{