{#if webConfig.search.engine === 'searxng'}
diff --git a/src/lib/components/chat/Chat.svelte b/src/lib/components/chat/Chat.svelte
index fcd5177d7..4f4985c73 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)
@@ -1488,7 +1493,10 @@
params?.system ?? $settings?.system ?? '',
$user.name,
$settings?.userLocation
- ? await getAndUpdateUserLocation(localStorage.token)
+ ? await getAndUpdateUserLocation(localStorage.token).catch((err) => {
+ console.error(err);
+ return undefined;
+ })
: undefined
)}${
(responseMessage?.userContext ?? null)
@@ -1573,7 +1581,12 @@
variables: {
...getPromptVariables(
$user.name,
- $settings?.userLocation ? await getAndUpdateUserLocation(localStorage.token) : undefined
+ $settings?.userLocation
+ ? await getAndUpdateUserLocation(localStorage.token).catch((err) => {
+ console.error(err);
+ return undefined;
+ })
+ : undefined
)
},
model_item: $models.find((m) => m.id === model.id),
@@ -1965,6 +1978,7 @@
bind:autoScroll
bind:prompt
{selectedModels}
+ {atSelectedModel}
{sendPrompt}
{showMessage}
{submitMessage}
diff --git a/src/lib/components/chat/ChatPlaceholder.svelte b/src/lib/components/chat/ChatPlaceholder.svelte
index e30213ebb..a2f1f080d 100644
--- a/src/lib/components/chat/ChatPlaceholder.svelte
+++ b/src/lib/components/chat/ChatPlaceholder.svelte
@@ -16,6 +16,7 @@
export let modelIds = [];
export let models = [];
+ export let atSelectedModel;
export let submitPrompt;
@@ -126,7 +127,9 @@
{
diff --git a/src/lib/components/chat/Messages.svelte b/src/lib/components/chat/Messages.svelte
index 7c1c57a3f..611644831 100644
--- a/src/lib/components/chat/Messages.svelte
+++ b/src/lib/components/chat/Messages.svelte
@@ -32,6 +32,7 @@
export let prompt;
export let history = {};
export let selectedModels;
+ export let atSelectedModel;
let messages = [];
@@ -349,6 +350,7 @@
{#if Object.keys(history?.messages ?? {}).length == 0}
{
let text = p;
diff --git a/src/lib/components/chat/Messages/CodeBlock.svelte b/src/lib/components/chat/Messages/CodeBlock.svelte
index a5d08356f..6e5e2359a 100644
--- a/src/lib/components/chat/Messages/CodeBlock.svelte
+++ b/src/lib/components/chat/Messages/CodeBlock.svelte
@@ -1,18 +1,9 @@