From 45ba949d966f6966869f08178f87cb59164be1a4 Mon Sep 17 00:00:00 2001 From: Faisal Amir Date: Mon, 25 Aug 2025 10:28:18 +0700 Subject: [PATCH 1/3] fix: toggle vision for remote model --- web-app/src/containers/ChatInput.tsx | 12 ++++++++--- web-app/src/containers/dialogs/EditModel.tsx | 22 +++++++------------- 2 files changed, 16 insertions(+), 18 deletions(-) diff --git a/web-app/src/containers/ChatInput.tsx b/web-app/src/containers/ChatInput.tsx index 0fa7a4b32..df73b3bac 100644 --- a/web-app/src/containers/ChatInput.tsx +++ b/web-app/src/containers/ChatInput.tsx @@ -107,9 +107,15 @@ const ChatInput = ({ model, className, initialMessage }: ChatInputProps) => { if (selectedProvider === 'llamacpp') { const hasLocalMmproj = await checkMmprojExists(selectedModel.id) setHasMmproj(hasLocalMmproj) - } else { - // For non-llamacpp providers, only check vision capability + } + // For non-llamacpp providers, only check vision capability + else if ( + selectedProvider !== 'llamacpp' && + selectedModel?.capabilities?.includes('vision') + ) { setHasMmproj(true) + } else { + setHasMmproj(false) } } catch (error) { console.error('Error checking mmproj:', error) @@ -119,7 +125,7 @@ const ChatInput = ({ model, className, initialMessage }: ChatInputProps) => { } checkMmprojSupport() - }, [selectedModel?.id, selectedProvider]) + }, [selectedModel?.capabilities, selectedModel?.id, selectedProvider]) // Check if there are active MCP servers const hasActiveMCPServers = connectedServers.length > 0 || tools.length > 0 diff --git a/web-app/src/containers/dialogs/EditModel.tsx b/web-app/src/containers/dialogs/EditModel.tsx index 5fd9b3f85..0f39216ae 100644 --- a/web-app/src/containers/dialogs/EditModel.tsx +++ b/web-app/src/containers/dialogs/EditModel.tsx @@ -177,21 +177,13 @@ export const DialogEditModel = ({ {t('providers:editModel.vision')} - - - - handleCapabilityChange('vision', checked) - } - /> - - - {t('providers:editModel.notAvailable')} - - + + handleCapabilityChange('vision', checked) + } + />
From 8d06c3addf9cbdecd9c5831b68de9b654286beb1 Mon Sep 17 00:00:00 2001 From: Faisal Amir Date: Mon, 25 Aug 2025 10:47:18 +0700 Subject: [PATCH 2/3] chore: add tooltip visions --- web-app/src/containers/ChatInput.tsx | 48 +++++++++++++++++----------- 1 file changed, 30 insertions(+), 18 deletions(-) diff --git a/web-app/src/containers/ChatInput.tsx b/web-app/src/containers/ChatInput.tsx index df73b3bac..86f7e6b19 100644 --- a/web-app/src/containers/ChatInput.tsx +++ b/web-app/src/containers/ChatInput.tsx @@ -541,29 +541,41 @@ const ChatInput = ({ model, className, initialMessage }: ChatInputProps) => { )} {/* File attachment - show only for models with mmproj */} {hasMmproj && ( -
- - -
+ + + +
+ + +
+
+ +

{t('visions')}

+
+
+
)} {/* Microphone - always available - Temp Hide */} - {/*
+ {/*
*/} {selectedModel?.capabilities?.includes('embeddings') && ( -
+
{ return (
@@ -638,7 +650,7 @@ const ChatInput = ({ model, className, initialMessage }: ChatInputProps) => { -
+
{ -
+
Date: Mon, 25 Aug 2025 11:26:56 +0700 Subject: [PATCH 3/3] chore: show model setting only for local provider --- web-app/src/containers/DropdownModelProvider.tsx | 16 +++++++++------- web-app/src/hooks/useModelProvider.ts | 2 +- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/web-app/src/containers/DropdownModelProvider.tsx b/web-app/src/containers/DropdownModelProvider.tsx index 005580890..e47c31503 100644 --- a/web-app/src/containers/DropdownModelProvider.tsx +++ b/web-app/src/containers/DropdownModelProvider.tsx @@ -414,13 +414,15 @@ const DropdownModelProvider = ({ - {currentModel?.settings && provider && ( - - )} + {currentModel?.settings && + provider && + provider.provider === 'llamacpp' && ( + + )} ()( } // Migrate model settings - if (provider.models) { + if (provider.models && provider.provider === 'llamacpp') { provider.models.forEach((model) => { if (!model.settings) model.settings = {}