diff --git a/core/http/react-ui/e2e/models-gallery.spec.js b/core/http/react-ui/e2e/models-gallery.spec.js
index 5b3f4242f..8b3157635 100644
--- a/core/http/react-ui/e2e/models-gallery.spec.js
+++ b/core/http/react-ui/e2e/models-gallery.spec.js
@@ -282,14 +282,14 @@ test.describe('Models Gallery - Fits In GPU Filter', () => {
await expect(page.locator('th', { hasText: 'Backend' })).toBeVisible({ timeout: 10_000 })
})
- test('fits checkbox is visible when GPU resources are available', async ({ page }) => {
- await expect(page.getByText('Fits in my GPU')).toBeVisible()
+ test('fits toggle is visible when GPU resources are available', async ({ page }) => {
+ await expect(page.getByText('Fits in GPU')).toBeVisible()
})
test('enabling fits filter hides models that exceed available VRAM', async ({ page }) => {
await expect(page.locator('tr', { hasText: 'stablediffusion-model' })).toBeVisible()
- await page.getByLabel('Fits in my GPU').check()
+ await page.getByLabel('Fits in GPU').check()
await expect(page.locator('tr', { hasText: 'stablediffusion-model' })).toHaveCount(0)
await expect(page.locator('tr', { hasText: 'llama-model' })).toBeVisible()
@@ -298,8 +298,8 @@ test.describe('Models Gallery - Fits In GPU Filter', () => {
})
test('fits filter state persists after reload', async ({ page }) => {
- await page.getByLabel('Fits in my GPU').check()
+ await page.getByLabel('Fits in GPU').check()
await page.reload()
- await expect(page.getByLabel('Fits in my GPU')).toBeChecked()
+ await expect(page.getByLabel('Fits in GPU')).toBeChecked()
})
})
diff --git a/core/http/react-ui/public/locales/de/models.json b/core/http/react-ui/public/locales/de/models.json
index affe4ae1d..e5929d832 100644
--- a/core/http/react-ui/public/locales/de/models.json
+++ b/core/http/react-ui/public/locales/de/models.json
@@ -23,7 +23,7 @@
"diarization": "Diarisierung",
"embedding": "Embedding",
"rerank": "Rerank",
- "fitsGpu": "Passt in meine GPU",
+ "fitsGpu": "Passt in die GPU",
"allBackends": "Alle Backends",
"searchBackends": "Backends suchen..."
},
diff --git a/core/http/react-ui/public/locales/en/models.json b/core/http/react-ui/public/locales/en/models.json
index 0e3832ce8..603bd809c 100644
--- a/core/http/react-ui/public/locales/en/models.json
+++ b/core/http/react-ui/public/locales/en/models.json
@@ -29,7 +29,7 @@
"rerank": "Rerank",
"detection": "Detection",
"vad": "VAD",
- "fitsGpu": "Fits in my GPU",
+ "fitsGpu": "Fits in GPU",
"allBackends": "All Backends",
"searchBackends": "Search backends..."
},
diff --git a/core/http/react-ui/public/locales/es/models.json b/core/http/react-ui/public/locales/es/models.json
index 8a3f9399f..ac4275fbb 100644
--- a/core/http/react-ui/public/locales/es/models.json
+++ b/core/http/react-ui/public/locales/es/models.json
@@ -23,7 +23,7 @@
"diarization": "Diarización",
"embedding": "Embedding",
"rerank": "Rerank",
- "fitsGpu": "Cabe en mi GPU",
+ "fitsGpu": "Cabe en la GPU",
"allBackends": "Todos los backends",
"searchBackends": "Buscar backends..."
},
diff --git a/core/http/react-ui/public/locales/it/models.json b/core/http/react-ui/public/locales/it/models.json
index 273e4cb62..25c371eb1 100644
--- a/core/http/react-ui/public/locales/it/models.json
+++ b/core/http/react-ui/public/locales/it/models.json
@@ -23,7 +23,7 @@
"diarization": "Diarizzazione",
"embedding": "Embedding",
"rerank": "Rerank",
- "fitsGpu": "Entra nella mia GPU",
+ "fitsGpu": "Entra nella GPU",
"allBackends": "Tutti i backend",
"searchBackends": "Cerca backend..."
},
diff --git a/core/http/react-ui/public/locales/zh-CN/models.json b/core/http/react-ui/public/locales/zh-CN/models.json
index 19025fd37..246153e68 100644
--- a/core/http/react-ui/public/locales/zh-CN/models.json
+++ b/core/http/react-ui/public/locales/zh-CN/models.json
@@ -23,7 +23,7 @@
"diarization": "说话人分离",
"embedding": "嵌入",
"rerank": "重排",
- "fitsGpu": "适合我的 GPU",
+ "fitsGpu": "适合 GPU",
"allBackends": "所有后端",
"searchBackends": "搜索后端..."
},
diff --git a/core/http/react-ui/src/pages/Models.jsx b/core/http/react-ui/src/pages/Models.jsx
index 6ce87f804..761f07142 100644
--- a/core/http/react-ui/src/pages/Models.jsx
+++ b/core/http/react-ui/src/pages/Models.jsx
@@ -9,6 +9,7 @@ import { useResources } from '../hooks/useResources'
import SearchableSelect from '../components/SearchableSelect'
import ConfirmDialog from '../components/ConfirmDialog'
import GalleryLoader from '../components/GalleryLoader'
+import Toggle from '../components/Toggle'
import React from 'react'
@@ -325,6 +326,13 @@ export default function Models() {
)
})}
+ {totalGpuMemory > 0 && (
+
+ )}
{allBackends.length > 0 && (
0 ? undefined : { marginLeft: 'auto' }}
/>
)}
@@ -355,16 +363,6 @@ export default function Models() {
{CONTEXT_LABELS[CONTEXT_SIZES.indexOf(contextSize)]}
- {totalGpuMemory > 0 && (
-
- )}
{/* Table */}