From 2ad9e639a7d80a64255cfafd675e4cc7eb8dd1bd Mon Sep 17 00:00:00 2001 From: wanghe-fit2cloud Date: Sat, 7 Mar 2026 09:25:05 +0800 Subject: [PATCH] feat: rename AI model menu to local model --- core/init/migration/helper/menu.go | 2 +- core/init/migration/migrate.go | 1 + core/init/migration/migrations/init.go | 12 ++++++++++++ frontend/src/lang/modules/en.ts | 1 + frontend/src/lang/modules/es-es.ts | 1 + frontend/src/lang/modules/ja.ts | 1 + frontend/src/lang/modules/ko.ts | 1 + frontend/src/lang/modules/ms.ts | 1 + frontend/src/lang/modules/pt-br.ts | 1 + frontend/src/lang/modules/ru.ts | 1 + frontend/src/lang/modules/tr.ts | 1 + frontend/src/lang/modules/zh-Hant.ts | 1 + frontend/src/lang/modules/zh.ts | 1 + frontend/src/routers/modules/ai.ts | 2 +- 14 files changed, 25 insertions(+), 2 deletions(-) diff --git a/core/init/migration/helper/menu.go b/core/init/migration/helper/menu.go index 97e429c23e31..cd33017fd8e3 100644 --- a/core/init/migration/helper/menu.go +++ b/core/init/migration/helper/menu.go @@ -17,7 +17,7 @@ func LoadMenus() string { {ID: "3", Disabled: false, Title: "menu.aiTools", IsShow: true, Label: "AI-Menu", Path: "/ai/model", Sort: 300, Children: []dto.ShowMenu{ {ID: "44", Disabled: false, Title: "aiTools.agents.agents", IsShow: true, Label: "Agents", Path: "/ai/agents/agent", Sort: 50}, - {ID: "41", Disabled: false, Title: "aiTools.model.model", IsShow: true, Label: "OllamaModel", Path: "/ai/model", Sort: 100}, + {ID: "41", Disabled: false, Title: "aiTools.model.localModel", IsShow: true, Label: "OllamaModel", Path: "/ai/model", Sort: 100}, {ID: "42", Disabled: false, Title: "menu.mcp", IsShow: true, Label: "MCPServer", Path: "/ai/mcp", Sort: 200}, {ID: "43", Disabled: false, Title: "aiTools.gpu.gpu", IsShow: true, Label: "GPU", Path: "/ai/gpu", Sort: 300}, }}, diff --git a/core/init/migration/migrate.go b/core/init/migration/migrate.go index 0ea4183b887c..10419e26bd28 100644 --- a/core/init/migration/migrate.go +++ b/core/init/migration/migrate.go @@ -33,6 +33,7 @@ func Init() { migrations.UpdateAiAgentsMenu, migrations.AddDashboardCarouselSetting, migrations.AddEditionSetting, + migrations.UpdateAiLocalModelMenuTitle, }) if err := m.Migrate(); err != nil { global.LOG.Error(err) diff --git a/core/init/migration/migrations/init.go b/core/init/migration/migrations/init.go index b01fd7d2c303..d698d51c2505 100644 --- a/core/init/migration/migrations/init.go +++ b/core/init/migration/migrations/init.go @@ -834,3 +834,15 @@ var AddEditionSetting = &gormigrate.Migration{ return nil }, } + +var UpdateAiLocalModelMenuTitle = &gormigrate.Migration{ + ID: "20260307-update-ai-local-model-menu-title", + Migrate: func(tx *gorm.DB) error { + return tx.Exec( + `UPDATE settings + SET value = REPLACE(value, 'aiTools.model.model', 'aiTools.model.localModel') + WHERE key = 'HideMenu' + AND value LIKE '%aiTools.model.model%'`, + ).Error + }, +} diff --git a/frontend/src/lang/modules/en.ts b/frontend/src/lang/modules/en.ts index de9a0f474ceb..76ea2fbf828e 100644 --- a/frontend/src/lang/modules/en.ts +++ b/frontend/src/lang/modules/en.ts @@ -721,6 +721,7 @@ const message = { }, model: { model: 'Models', + localModel: 'Local Models', create: 'Add Model', create_helper: 'Pull "{0}"', ollama_doc: 'You can visit the Ollama official website to search and find more models.', diff --git a/frontend/src/lang/modules/es-es.ts b/frontend/src/lang/modules/es-es.ts index 523778a62d64..f222cf8c1cdd 100644 --- a/frontend/src/lang/modules/es-es.ts +++ b/frontend/src/lang/modules/es-es.ts @@ -729,6 +729,7 @@ const message = { }, model: { model: 'Modelo', + localModel: 'Modelos locales', create: 'Agregar modelo', create_helper: 'Descargar "{0}"', ollama_doc: 'Puede visitar el sitio oficial de Ollama para buscar y encontrar más modelos.', diff --git a/frontend/src/lang/modules/ja.ts b/frontend/src/lang/modules/ja.ts index 8f539a4c93d2..dbce30198f96 100644 --- a/frontend/src/lang/modules/ja.ts +++ b/frontend/src/lang/modules/ja.ts @@ -722,6 +722,7 @@ const message = { }, model: { model: 'モデル', + localModel: 'ローカルモデル', create: 'モデルを追加', create_helper: 'を取得 "{0}"', ollama_doc: 'Ollama の公式ウェブサイトを訪れて、さらに多くのモデルを検索して見つけることができます。', diff --git a/frontend/src/lang/modules/ko.ts b/frontend/src/lang/modules/ko.ts index e6e3567ec124..428e18d2124d 100644 --- a/frontend/src/lang/modules/ko.ts +++ b/frontend/src/lang/modules/ko.ts @@ -714,6 +714,7 @@ const message = { }, model: { model: '모델', + localModel: '로컬 모델', create: '모델 추가', create_helper: '가져오기 "{0}"', ollama_doc: 'Ollama 공식 웹사이트를 방문하여 더 많은 모델을 검색하고 찾을 수 있습니다.', diff --git a/frontend/src/lang/modules/ms.ts b/frontend/src/lang/modules/ms.ts index ae4b93341143..e4686f1f9b62 100644 --- a/frontend/src/lang/modules/ms.ts +++ b/frontend/src/lang/modules/ms.ts @@ -729,6 +729,7 @@ const message = { }, model: { model: 'Model', + localModel: 'Model Tempatan', create: 'Tambah Model', create_helper: 'Tarik "{0}"', ollama_doc: 'Anda boleh melawat laman web rasmi Ollama untuk mencari dan menemui lebih banyak model.', diff --git a/frontend/src/lang/modules/pt-br.ts b/frontend/src/lang/modules/pt-br.ts index 0ae551481cd9..5efc26cbb4bb 100644 --- a/frontend/src/lang/modules/pt-br.ts +++ b/frontend/src/lang/modules/pt-br.ts @@ -724,6 +724,7 @@ const message = { }, model: { model: 'Modelo', + localModel: 'Modelos locais', create: 'Adicionar Modelo', create_helper: 'Puxar "{0}"', ollama_doc: 'Você pode visitar o site oficial da Ollama para pesquisar e encontrar mais modelos.', diff --git a/frontend/src/lang/modules/ru.ts b/frontend/src/lang/modules/ru.ts index 91125dbebec0..ded6f2303760 100644 --- a/frontend/src/lang/modules/ru.ts +++ b/frontend/src/lang/modules/ru.ts @@ -721,6 +721,7 @@ const message = { }, model: { model: 'Модель', + localModel: 'Локальные модели', create: 'Добавить модель', create_helper: 'Загрузить "{0}"', ollama_doc: 'Вы можете посетить официальный сайт Ollama, чтобы искать и находить больше моделей.', diff --git a/frontend/src/lang/modules/tr.ts b/frontend/src/lang/modules/tr.ts index 40c379e4c0c8..161243b4f3fa 100644 --- a/frontend/src/lang/modules/tr.ts +++ b/frontend/src/lang/modules/tr.ts @@ -725,6 +725,7 @@ const message = { }, model: { model: 'Model', + localModel: 'Yerel Modeller', create: 'Model Ekle', create_helper: '"{0}" çek', ollama_doc: 'Daha fazla model aramak ve bulmak için Ollama resmi web sitesini ziyaret edebilirsiniz.', diff --git a/frontend/src/lang/modules/zh-Hant.ts b/frontend/src/lang/modules/zh-Hant.ts index a6bd0f2fe636..4c7dda628da4 100644 --- a/frontend/src/lang/modules/zh-Hant.ts +++ b/frontend/src/lang/modules/zh-Hant.ts @@ -689,6 +689,7 @@ const message = { }, model: { model: '模型', + localModel: '本地模型', create: '新增模型', create_helper: '拉取 "{0}"', ollama_doc: '您可以瀏覽 Ollama 官方網站,搜尋並尋找更多模型。', diff --git a/frontend/src/lang/modules/zh.ts b/frontend/src/lang/modules/zh.ts index 9fbb2e86488c..dd1097e6be47 100644 --- a/frontend/src/lang/modules/zh.ts +++ b/frontend/src/lang/modules/zh.ts @@ -687,6 +687,7 @@ const message = { }, model: { model: '模型', + localModel: '本地模型', create: '添加模型', create_helper: '拉取 "{0}"', ollama_doc: '您可以访问 Ollama 官网,搜索并查找更多模型。', diff --git a/frontend/src/routers/modules/ai.ts b/frontend/src/routers/modules/ai.ts index 208d6dd4a3d3..8b7b973b7cba 100644 --- a/frontend/src/routers/modules/ai.ts +++ b/frontend/src/routers/modules/ai.ts @@ -37,7 +37,7 @@ const databaseRouter = { component: () => import('@/views/ai/model/ollama/index.vue'), meta: { icon: 'p-moxing-menu', - title: 'aiTools.model.model', + title: 'aiTools.model.localModel', requiresAuth: true, }, },