mirror of
https://github.com/ggml-org/llama.cpp.git
synced 2026-09-29 09:27:33 -05:00
ui : target the selected model on external backends
Assisted-by: pi:llama.cpp/DeepSeek-V4.1-Flash
This commit is contained in:
@@ -1277,8 +1277,8 @@ class ChatStore implements ChatStreamHost, ChatFlowsHost {
|
||||
convId: string
|
||||
): Promise<void> {
|
||||
const effectiveModel =
|
||||
serverStore.isRouterMode && modelsStore.selectedModelName
|
||||
? modelsStore.selectedModelName
|
||||
serverStore.isRouterMode || !serverStore.capabilities.props
|
||||
? (modelsStore.activeModelId ?? undefined)
|
||||
: undefined;
|
||||
const configValue = settingsStore.config;
|
||||
const titlePromptTemplate =
|
||||
|
||||
@@ -47,6 +47,13 @@ class ModelsStore implements ModelPropsHost, ModelStatusHost {
|
||||
*/
|
||||
get activeModelId(): string | null {
|
||||
if (!serverStore.isRouterMode) {
|
||||
// external backends expose a selectable list; prefer the user's pick
|
||||
const selected = this.selectedModelId
|
||||
? this.models.find((m) => m.id === this.selectedModelId)
|
||||
: undefined;
|
||||
|
||||
if (selected) return selected.model;
|
||||
|
||||
return this.models.length > 0 ? this.models[0].model : this.singleModelName;
|
||||
}
|
||||
|
||||
@@ -469,6 +476,12 @@ class ModelsStore implements ModelPropsHost, ModelStatusHost {
|
||||
}
|
||||
} else {
|
||||
this.models = await this.fetchModelModeInternal();
|
||||
|
||||
// external backends expose a selectable list; pick a default so the
|
||||
// first send and title generation have a model to target
|
||||
if (!serverStore.capabilities.props && !this.selectedModelName) {
|
||||
await this.ensureFirstModelSelected();
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
this.models = [];
|
||||
|
||||
Reference in New Issue
Block a user