From 217ec9934ef0e42f46e4e63a52a30a0f518d6209 Mon Sep 17 00:00:00 2001 From: jiangwel Date: Thu, 28 Aug 2025 14:55:04 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E7=94=A8=E6=88=B7=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=A8=A1=E5=BC=8F=E5=A4=B1=E8=B4=A5=E6=97=B6=E8=BF=9B=E8=A1=8C?= =?UTF-8?q?=E7=9B=B8=E5=BA=94=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/domain/model.go | 1 + backend/go.mod | 2 +- backend/go.sum | 4 ++-- backend/internal/model/handler/http/v1/model.go | 6 +++++- ui/package.json | 2 +- ui/pnpm-lock.yaml | 10 +++++----- ui/src/api/types.ts | 1 + .../pages/model/components/services/modelService.ts | 11 +++++++---- 8 files changed, 23 insertions(+), 14 deletions(-) diff --git a/backend/domain/model.go b/backend/domain/model.go index ed9e264..4b37b19 100644 --- a/backend/domain/model.go +++ b/backend/domain/model.go @@ -55,6 +55,7 @@ type GetProviderModelListReq struct { type GetProviderModelListResp struct { Models []ProviderModelListItem `json:"models"` + Error string `json:"error"` } type ProviderModelListItem struct { diff --git a/backend/go.mod b/backend/go.mod index 193ad87..8d765c9 100644 --- a/backend/go.mod +++ b/backend/go.mod @@ -5,7 +5,7 @@ go 1.25.0 require ( entgo.io/ent v0.14.4 github.com/GoYoko/web v1.4.0 - github.com/chaitin/ModelKit v1.6.2 + github.com/chaitin/ModelKit v1.8.3 github.com/doquangtan/socket.io/v4 v4.0.8 github.com/golang-migrate/migrate/v4 v4.18.3 github.com/google/uuid v1.6.0 diff --git a/backend/go.sum b/backend/go.sum index 80ef9a3..00549ad 100644 --- a/backend/go.sum +++ b/backend/go.sum @@ -54,8 +54,8 @@ github.com/bytedance/sonic/loader v0.3.0/go.mod h1:N8A3vUdtUebEY2/VQC0MyhYeKUFos github.com/certifi/gocertifi v0.0.0-20190105021004-abcd57078448/go.mod h1:GJKEexRPVJrBSOjoqN5VNOIKJ5Q3RViH6eu3puDRwx4= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/chaitin/ModelKit v1.6.2 h1:iw605mv1MCQwyud4nzblcgMe9pw8jvBG6Rv/UV40jzA= -github.com/chaitin/ModelKit v1.6.2/go.mod h1:IBeqs9T8+vxMXhoer8daV0yrSPb5uaoAwQQW2Tz2qAg= +github.com/chaitin/ModelKit v1.8.3 h1:qXhV4QYM7ZF2XZXlNQ2aaGd+9WU8K1xgThgWuP7MBNY= +github.com/chaitin/ModelKit v1.8.3/go.mod h1:IBeqs9T8+vxMXhoer8daV0yrSPb5uaoAwQQW2Tz2qAg= github.com/cloudwego/base64x v0.1.6 h1:t11wG9AECkCDk5fMSoxmufanudBtJ+/HemLstXDLI2M= github.com/cloudwego/base64x v0.1.6/go.mod h1:OFcloc187FXDaYHvrNIjxSe8ncn0OOM8gEHfghB2IPU= github.com/cloudwego/eino v0.3.51 h1:emSaDu49v9EEJYOusL42Li/VL5QBSyBvhxO9ZcKPZvs= diff --git a/backend/internal/model/handler/http/v1/model.go b/backend/internal/model/handler/http/v1/model.go index 791aaa3..a233f2e 100644 --- a/backend/internal/model/handler/http/v1/model.go +++ b/backend/internal/model/handler/http/v1/model.go @@ -207,12 +207,16 @@ func (h *ModelHandler) GetProviderModelList(c *web.Context, req domain.GetProvid APIHeader: req.APIHeader, }) if err != nil { - return err + res := &domain.GetProviderModelListResp{ + Error: err.Error(), + } + return c.Success(res) } // 将输出转化为monkeycode格式 res := &domain.GetProviderModelListResp{ Models: make([]domain.ProviderModelListItem, len(modelkitRes.Models)), + Error: modelkitRes.Error, } for i, model := range modelkitRes.Models { res.Models[i] = domain.ProviderModelListItem{ diff --git a/ui/package.json b/ui/package.json index e8bbb8b..caa2850 100644 --- a/ui/package.json +++ b/ui/package.json @@ -19,7 +19,7 @@ "@mui/icons-material": "^6.4.12", "@mui/lab": "6.0.0-beta.19", "@mui/material": "^6.4.12", - "@yokowu/modelkit-ui": "0.6.0", + "@yokowu/modelkit-ui": "0.7.1", "ahooks": "^3.8.4", "axios": "^1.9.0", "dayjs": "^1.11.7", diff --git a/ui/pnpm-lock.yaml b/ui/pnpm-lock.yaml index 3f7b505..1f16c2a 100644 --- a/ui/pnpm-lock.yaml +++ b/ui/pnpm-lock.yaml @@ -33,8 +33,8 @@ importers: specifier: ^6.4.12 version: 6.5.0(@emotion/react@11.14.0(@types/react@19.1.10)(react@19.1.1))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.1.10)(react@19.1.1))(@types/react@19.1.10)(react@19.1.1))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) '@yokowu/modelkit-ui': - specifier: 0.6.0 - version: 0.6.0(8525073519bd78ecc27b6ab63a7efdab) + specifier: 0.7.1 + version: 0.7.1(8525073519bd78ecc27b6ab63a7efdab) ahooks: specifier: ^3.8.4 version: 3.9.0(react-dom@19.1.1(react@19.1.1))(react@19.1.1) @@ -1111,8 +1111,8 @@ packages: '@vue/shared@3.5.18': resolution: {integrity: sha512-cZy8Dq+uuIXbxCZpuLd2GJdeSO/lIzIspC2WtkqIpje5QyFbvLaI5wZtdUjLHjGZrlVX6GilejatWwVYYRc8tA==} - '@yokowu/modelkit-ui@0.6.0': - resolution: {integrity: sha512-STKsF+4QXIgkZHRISxbhJEF5AdMkUvCIeIdwdYxQUkrlCENkLLyYijH63bxNSm6c/DVB+tYbSDHg8XdSFDI6KQ==} + '@yokowu/modelkit-ui@0.7.1': + resolution: {integrity: sha512-y83W1LLfKhw/gYurKox69HpCpyssZl1FetmEoQA8jy4VA/BhT7rzKBkso0VRa7XQ+x1sE43vxzIRh+aXETnJvQ==} acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} @@ -3754,7 +3754,7 @@ snapshots: '@vue/shared@3.5.18': {} - '@yokowu/modelkit-ui@0.6.0(8525073519bd78ecc27b6ab63a7efdab)': + '@yokowu/modelkit-ui@0.7.1(8525073519bd78ecc27b6ab63a7efdab)': dependencies: '@c-x/ui': 1.0.9(87983aa74373e7bdff176d7db35e2938) '@mui/material': 6.5.0(@emotion/react@11.14.0(@types/react@19.1.10)(react@19.1.1))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.1.10)(react@19.1.1))(@types/react@19.1.10)(react@19.1.1))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) diff --git a/ui/src/api/types.ts b/ui/src/api/types.ts index bf29069..53155c4 100644 --- a/ui/src/api/types.ts +++ b/ui/src/api/types.ts @@ -623,6 +623,7 @@ export interface DomainGetAndSaveReq { export interface DomainGetProviderModelListResp { models?: DomainProviderModelListItem[]; + error?: string; } export interface DomainGrantGroupReq { diff --git a/ui/src/pages/model/components/services/modelService.ts b/ui/src/pages/model/components/services/modelService.ts index 77d0192..207e18b 100644 --- a/ui/src/pages/model/components/services/modelService.ts +++ b/ui/src/pages/model/components/services/modelService.ts @@ -141,11 +141,14 @@ export const modelService: IModelService = { const localData = convertUIGetModelNameToLocal(data); const result = await getGetProviderModelList(localData); - const models: UIModelListItem[] = result.models?.map(item => ({ - model: item.model, - })) || []; + const models: UIModelListItem[] = result.models + ? result.models.map(item => ({ + model: item.model || '', + })) + : []; + const error: string = result.error || ''; - return { models }; + return { models, error }; }, async checkModel(data: UICheckModelData) {