diff --git a/src/lib/components/chat/Chat.svelte b/src/lib/components/chat/Chat.svelte index 430ab8355..8b8873c02 100644 --- a/src/lib/components/chat/Chat.svelte +++ b/src/lib/components/chat/Chat.svelte @@ -680,9 +680,10 @@ responseMessage.done = true; if (responseMessage.content == '') { - responseMessage.error = true; - responseMessage.content = - 'Oops! No text generated from Ollama, Please try again.'; + responseMessage.error = { + code: 400, + content: `Oops! No text generated from Ollama, Please try again.` + }; } responseMessage.context = data.context ?? null; @@ -754,24 +755,21 @@ console.log(error); if ('detail' in error) { toast.error(error.detail); - responseMessage.content = error.detail; + responseMessage.error = { content: error.detail }; } else { toast.error(error.error); - responseMessage.content = error.error; + responseMessage.error = { content: error.error }; } } else { toast.error( $i18n.t(`Uh-oh! There was an issue connecting to {{provider}}.`, { provider: 'Ollama' }) ); - responseMessage.content = $i18n.t(`Uh-oh! There was an issue connecting to {{provider}}.`, { - provider: 'Ollama' - }); + responseMessage.error = { + content: $i18n.t(`Uh-oh! There was an issue connecting to {{provider}}.`, { + provider: 'Ollama' + }) + }; } - - responseMessage.error = true; - responseMessage.content = $i18n.t(`Uh-oh! There was an issue connecting to {{provider}}.`, { - provider: 'Ollama' - }); responseMessage.done = true; messages = messages; } @@ -1035,13 +1033,13 @@ errorMessage = innerError.message; } - responseMessage.error = true; - responseMessage.content = - $i18n.t(`Uh-oh! There was an issue connecting to {{provider}}.`, { + responseMessage.error = { + content: $i18n.t(`Uh-oh! There was an issue connecting to {{provider}}.`, { provider: model.name ?? model.id }) + '\n' + errorMessage; + }; responseMessage.done = true; messages = messages; diff --git a/src/lib/components/chat/Messages/ResponseMessage.svelte b/src/lib/components/chat/Messages/ResponseMessage.svelte index 2e1b3144a..32da07963 100644 --- a/src/lib/components/chat/Messages/ResponseMessage.svelte +++ b/src/lib/components/chat/Messages/ResponseMessage.svelte @@ -451,7 +451,27 @@ {:else}
- {#if message?.error === true} + {#if message.content === '' && !message.error} + + {:else if !message.error} + {#each tokens as token, tokenIdx} + {#if token.type === 'code'} + + {:else} + {@html marked.parse(token.raw, { + ...defaults, + gfm: true, + breaks: true, + renderer + })} + {/if} + {/each} + {/if} + {#if message.error}
@@ -471,28 +491,9 @@
- {message.content} + {message?.error?.content ?? message.content}
- {:else if message.content === ''} - - {:else} - {#each tokens as token, tokenIdx} - {#if token.type === 'code'} - - {:else} - {@html marked.parse(token.raw, { - ...defaults, - gfm: true, - breaks: true, - renderer - })} - {/if} - {/each} {/if} {#if message.citations}