fix: llama.cpp backend shows blank list sometime (#5876)

This commit is contained in:
Louis 2025-07-23 20:04:38 +07:00 committed by GitHub
parent 9a511fd5fa
commit d6ad797769
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 18 additions and 10 deletions

View File

@ -128,6 +128,10 @@ export abstract class BaseExtension implements ExtensionType {
setting.controllerProps.value = oldSettings.find(
(e: any) => e.key === setting.key
)?.controllerProps?.value
if ('options' in setting.controllerProps)
setting.controllerProps.options = setting.controllerProps.options?.length
? setting.controllerProps.options
: oldSettings.find((e: any) => e.key === setting.key)?.controllerProps?.options
})
}
localStorage.setItem(this.name, JSON.stringify(settings))

View File

@ -36,16 +36,20 @@ export const useModelProvider = create<ModelProviderState>()(
},
setProviders: (providers) =>
set((state) => {
const existingProviders = state.providers.map((provider) => {
return {
...provider,
models: provider.models.filter(
(e) =>
('id' in e || 'model' in e) &&
typeof (e.id ?? e.model) === 'string'
),
}
})
const existingProviders = state.providers
// Filter out legacy llama.cpp provider for migration
// Can remove after a couple of releases
.filter((e) => e.provider !== 'llama.cpp')
.map((provider) => {
return {
...provider,
models: provider.models.filter(
(e) =>
('id' in e || 'model' in e) &&
typeof (e.id ?? e.model) === 'string'
),
}
})
// Ensure deletedModels is always an array
const currentDeletedModels = Array.isArray(state.deletedModels)
? state.deletedModels