From a7fe8a388cc90f0453329984e69a1b6e86b96180 Mon Sep 17 00:00:00 2001 From: Roland Tannous <115670425+rolandtannous@users.noreply.github.com> Date: Wed, 25 Feb 2026 15:47:45 +0400 Subject: [PATCH] Filter GGUF models from training page model selectors GGUF models can't be fine-tuned, so hide them from the training/studio page while keeping them available for inference on the chat page. - Add "gguf" to EXCLUDED_TAGS in HF model search hook - Filter local models with .gguf extension or -GGUF in ID --- .../studio/sections/model-section.tsx | 21 ++++++++++++++----- .../frontend/src/hooks/use-hf-model-search.ts | 1 + 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/studio/frontend/src/features/studio/sections/model-section.tsx b/studio/frontend/src/features/studio/sections/model-section.tsx index 0c4a71a8c3..5040e5bd77 100644 --- a/studio/frontend/src/features/studio/sections/model-section.tsx +++ b/studio/frontend/src/features/studio/sections/model-section.tsx @@ -170,14 +170,25 @@ export function ModelSection() { return ids; }, [hfResults, selectedModel]); + // Filter out GGUF models — they can't be used for training + const trainableLocalModels = useMemo( + () => + localModels.filter((m) => { + if (m.path.endsWith(".gguf")) return false; + if (m.id.toLowerCase().includes("-gguf")) return false; + return true; + }), + [localModels], + ); + const localMetaById = useMemo(() => { const map = new Map(); - for (const model of localModels) map.set(model.id, model); + for (const model of trainableLocalModels) map.set(model.id, model); return map; - }, [localModels]); + }, [trainableLocalModels]); const localResultIds = useMemo(() => { - const ids = localModels.map((model) => model.id); + const ids = trainableLocalModels.map((model) => model.id); const manual = localModelInput.trim(); if (manual && !ids.includes(manual)) { ids.unshift(manual); @@ -341,8 +352,8 @@ export function ModelSection() {

{localModelsError}

) : (

- {localModels.length > 0 - ? `${localModels.length} local/cached models found` + {trainableLocalModels.length > 0 + ? `${trainableLocalModels.length} local/cached models found` : "No local models found. Enter path manually."}

)} diff --git a/studio/frontend/src/hooks/use-hf-model-search.ts b/studio/frontend/src/hooks/use-hf-model-search.ts index 0029f13317..6ba70a4d5c 100644 --- a/studio/frontend/src/hooks/use-hf-model-search.ts +++ b/studio/frontend/src/hooks/use-hf-model-search.ts @@ -11,6 +11,7 @@ export interface HfModelResult { } const EXCLUDED_TAGS = new Set([ + "gguf", "gptq", "awq", "exl2",