diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index f04f36004..c34353d22 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -85,7 +85,7 @@ pub fn run() { .setup(|app| { app.handle().plugin( tauri_plugin_log::Builder::default() - .level(log::LevelFilter::Info) + .level(log::LevelFilter::Debug) .targets([ tauri_plugin_log::Target::new(tauri_plugin_log::TargetKind::Stdout), tauri_plugin_log::Target::new(tauri_plugin_log::TargetKind::Webview), diff --git a/web-app/src/containers/ThinkingBlock.tsx b/web-app/src/containers/ThinkingBlock.tsx index c2f119d92..1353474d5 100644 --- a/web-app/src/containers/ThinkingBlock.tsx +++ b/web-app/src/containers/ThinkingBlock.tsx @@ -1,6 +1,7 @@ import { ChevronDown, ChevronUp, Loader } from 'lucide-react' import { create } from 'zustand' import { RenderMarkdown } from './RenderMarkdown' +import { useAppState } from '@/hooks/useAppState' interface Props { text: string @@ -26,7 +27,8 @@ const useThinkingStore = create((set) => ({ const ThinkingBlock = ({ id, text }: Props) => { const { thinkingState, toggleState } = useThinkingStore() - const loading = !text.includes('') + const { streamingContent } = useAppState() + const loading = !text.includes('') && streamingContent const isExpanded = thinkingState[id] ?? false const handleClick = () => toggleState(id) diff --git a/web-app/src/mock/data.ts b/web-app/src/mock/data.ts index 415052984..9ee3fdb2d 100644 --- a/web-app/src/mock/data.ts +++ b/web-app/src/mock/data.ts @@ -306,7 +306,7 @@ export const mockModelProvider = [ { active: true, api_key: '', - base_url: 'https://api.mistral.ai/v1', + base_url: 'https://api.mistral.ai', explore_models_url: 'https://docs.mistral.ai/getting-started/models/models_overview/', provider: 'mistral', @@ -331,8 +331,8 @@ export const mockModelProvider = [ 'The base endpoint to use. See the [Mistral documentation](https://docs.mistral.ai/getting-started/models/models_overview/) for more information.', controller_type: 'input', controller_props: { - placeholder: 'https://api.mistral.ai/v1', - value: 'https://api.mistral.ai/v1', + placeholder: 'https://api.mistral.ai', + value: 'https://api.mistral.ai', }, }, ], diff --git a/web-app/src/services/models.ts b/web-app/src/services/models.ts index fe67f0388..1d9405b9c 100644 --- a/web-app/src/services/models.ts +++ b/web-app/src/services/models.ts @@ -194,7 +194,12 @@ export const importModel = async ( if (!path) throw new Error('No file selected') // Extract filename from path to use as model ID if not provided - const defaultModelId = path.split(/[/\\]/).pop()?.replace(/ /g, '-') || path + const defaultModelId = + path + .split(/[/\\]/) + .pop() + ?.replace(/ /g, '-') + .replace(/\.gguf$/i, '') || path const modelIdToUse = modelId || defaultModelId return await extension.importModel(modelIdToUse, path, provider)