Skip to content

Commit 985a8f3

Browse files
authored
fix: migrations model setting (#6165)
1 parent 02ded9b commit 985a8f3

File tree

1 file changed

+13
-39
lines changed

1 file changed

+13
-39
lines changed

web-app/src/hooks/useModelProvider.ts

Lines changed: 13 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -227,42 +227,31 @@ export const useModelProvider = create<ModelProviderState>()(
227227
>
228228
}
229229

230-
// Migration for cont_batching description update (version 0 -> 1)
231230
if (version === 0 && state?.providers) {
232-
state.providers = state.providers.map((provider) => {
231+
state.providers.forEach((provider) => {
232+
// Update cont_batching description for llamacpp provider
233233
if (provider.provider === 'llamacpp' && provider.settings) {
234-
provider.settings = provider.settings.map((setting) => {
235-
if (setting.key === 'cont_batching') {
236-
return {
237-
...setting,
238-
description:
239-
'Enable continuous batching (a.k.a dynamic batching) for concurrent requests.',
240-
}
241-
}
242-
return setting
243-
})
234+
const contBatchingSetting = provider.settings.find(
235+
(s) => s.key === 'cont_batching'
236+
)
237+
if (contBatchingSetting) {
238+
contBatchingSetting.description =
239+
'Enable continuous batching (a.k.a dynamic batching) for concurrent requests.'
240+
}
244241
}
245-
return provider
246-
})
247-
}
248242

249-
// Migration for chatTemplate key to chat_template (version 1 -> 2)
250-
if (version === 1 && state?.providers) {
251-
state.providers.forEach((provider) => {
243+
// Migrate model settings
252244
if (provider.models) {
253245
provider.models.forEach((model) => {
254-
// Initialize settings if it doesn't exist
255-
if (!model.settings) {
256-
model.settings = {}
257-
}
246+
if (!model.settings) model.settings = {}
258247

259248
// Migrate chatTemplate key to chat_template
260249
if (model.settings.chatTemplate) {
261250
model.settings.chat_template = model.settings.chatTemplate
262251
delete model.settings.chatTemplate
263252
}
264253

265-
// Add missing chat_template setting if it doesn't exist
254+
// Add missing settings with defaults
266255
if (!model.settings.chat_template) {
267256
model.settings.chat_template = {
268257
...modelSettings.chatTemplate,
@@ -271,22 +260,7 @@ export const useModelProvider = create<ModelProviderState>()(
271260
},
272261
}
273262
}
274-
})
275-
}
276-
})
277-
}
278-
279-
// Migration for override_tensor_buffer_type key (version 2 -> 3)
280-
if (version === 2 && state?.providers) {
281-
state.providers.forEach((provider) => {
282-
if (provider.models) {
283-
provider.models.forEach((model) => {
284-
// Initialize settings if it doesn't exist
285-
if (!model.settings) {
286-
model.settings = {}
287-
}
288263

289-
// Add missing override_tensor_buffer_type setting if it doesn't exist
290264
if (!model.settings.override_tensor_buffer_t) {
291265
model.settings.override_tensor_buffer_t = {
292266
...modelSettings.override_tensor_buffer_t,
@@ -303,7 +277,7 @@ export const useModelProvider = create<ModelProviderState>()(
303277

304278
return state
305279
},
306-
version: 3,
280+
version: 1,
307281
}
308282
)
309283
)

0 commit comments

Comments
 (0)