diff --git a/src/lib/components/chat/Chat.svelte b/src/lib/components/chat/Chat.svelte index fcd5177d7..98be06f5c 100644 --- a/src/lib/components/chat/Chat.svelte +++ b/src/lib/components/chat/Chat.svelte @@ -187,15 +187,20 @@ setToolIds(); } + $: if (atSelectedModel || selectedModels) { + setToolIds(); + } + const setToolIds = async () => { if (!$tools) { tools.set(await getTools(localStorage.token)); } - if (selectedModels.length !== 1) { + if (selectedModels.length !== 1 && !atSelectedModel) { return; } - const model = $models.find((m) => m.id === selectedModels[0]); + + const model = atSelectedModel ?? $models.find((m) => m.id === selectedModels[0]); if (model) { selectedToolIds = (model?.info?.meta?.toolIds ?? []).filter((id) => $tools.find((t) => t.id === id)