diff --git a/server/modules/providers/list/gemini/gemini-models.provider.ts b/server/modules/providers/list/gemini/gemini-models.provider.ts index fc830394..d59612cd 100644 --- a/server/modules/providers/list/gemini/gemini-models.provider.ts +++ b/server/modules/providers/list/gemini/gemini-models.provider.ts @@ -12,17 +12,14 @@ import { export const GEMINI_FALLBACK_MODELS: ProviderModelsDefinition = { OPTIONS: [ - { value: 'gemini-3.1-pro-preview', label: 'Gemini 3.1 Pro Preview' }, - { value: 'gemini-3-pro-preview', label: 'Gemini 3 Pro Preview' }, { value: 'gemini-3-flash-preview', label: 'Gemini 3 Flash Preview' }, + { value: 'gemini-3.1-flash-lite-preview', label: 'Gemini 3.1 Flash Lite Preview' }, { value: 'gemini-2.5-flash', label: 'Gemini 2.5 Flash' }, - { value: 'gemini-2.5-pro', label: 'Gemini 2.5 Pro' }, - { value: 'gemini-2.0-flash-lite', label: 'Gemini 2.0 Flash Lite' }, - { value: 'gemini-2.0-flash', label: 'Gemini 2.0 Flash' }, - { value: 'gemini-2.0-pro-exp', label: 'Gemini 2.0 Pro Experimental' }, - { value: 'gemini-2.0-flash-thinking-exp', label: 'Gemini 2.0 Flash Thinking' }, + { value: 'gemini-2.5-flash-lite', label: 'Gemini 2.5 Flash Lite' }, + { value: 'gemma-4-31b-it', label: 'Gemma 4 31B IT' }, + { value: 'gemma-4-26b-a4b-it', label: 'Gemma 4 26B A4B IT' }, ], - DEFAULT: 'gemini-3.1-pro-preview', + DEFAULT: 'gemini-3-flash-preview', }; export class GeminiProviderModels implements IProviderModels { diff --git a/server/modules/providers/services/provider-models.service.ts b/server/modules/providers/services/provider-models.service.ts index 9d3402b5..9162df0c 100644 --- a/server/modules/providers/services/provider-models.service.ts +++ b/server/modules/providers/services/provider-models.service.ts @@ -17,7 +17,7 @@ import { readProviderSessionActiveModelChange } from '@/shared/utils.js'; export const PROVIDER_MODELS_CACHE_TTL_MS = 3 * 24 * 60 * 60 * 1000; const PROVIDER_MODELS_CACHE_VERSION = 1; -const UNCACHED_PROVIDERS = new Set(['claude']); +const UNCACHED_PROVIDERS = new Set(['claude', 'gemini']); type ProviderModelsServiceDependencies = { resolveProvider?: (provider: LLMProvider) => Pick; diff --git a/src/components/chat/hooks/useChatRealtimeHandlers.ts b/src/components/chat/hooks/useChatRealtimeHandlers.ts index 25e10029..816576af 100644 --- a/src/components/chat/hooks/useChatRealtimeHandlers.ts +++ b/src/components/chat/hooks/useChatRealtimeHandlers.ts @@ -279,6 +279,7 @@ export function useChatRealtimeHandlers({ if (isVisibleSession) { setCurrentSessionId(actualSessionId); + void sessionStore.refreshFromServer(actualSessionId); } if (isVisibleSession) { @@ -288,6 +289,10 @@ export function useChatRealtimeHandlers({ break; } + if (sid && isVisibleSession) { + void sessionStore.refreshFromServer(sid); + } + break; }