enhancement: offload model when provider not active

This commit is contained in:
Faisal Amir 2025-08-19 14:15:50 +07:00
parent 55390de070
commit 872284b770

View File

@ -25,6 +25,7 @@ import { useCallback, useState } from 'react'
import { openAIProviderSettings } from '@/consts/providers' import { openAIProviderSettings } from '@/consts/providers'
import cloneDeep from 'lodash/cloneDeep' import cloneDeep from 'lodash/cloneDeep'
import { toast } from 'sonner' import { toast } from 'sonner'
import { stopAllModels } from '@/services/models'
// eslint-disable-next-line @typescript-eslint/no-explicit-any // eslint-disable-next-line @typescript-eslint/no-explicit-any
export const Route = createFileRoute(route.settings.model_providers as any)({ export const Route = createFileRoute(route.settings.model_providers as any)({
@ -169,7 +170,10 @@ function ModelProviders() {
)} )}
<Switch <Switch
checked={provider.active} checked={provider.active}
onCheckedChange={(e) => { onCheckedChange={async (e) => {
if (!e && provider.provider.toLowerCase() === 'llamacpp') {
await stopAllModels()
}
updateProvider(provider.provider, { updateProvider(provider.provider, {
...provider, ...provider,
active: e, active: e,