From fd31b5f8d6914c0c1a94c31bc68c71e672fa6fd5 Mon Sep 17 00:00:00 2001 From: Jun Siang Cheah Date: Sun, 26 May 2024 16:58:00 +0100 Subject: [PATCH 1/2] refac: error message separate from content --- src/lib/components/chat/Chat.svelte | 13 +++--- .../chat/Messages/ResponseMessage.svelte | 43 ++++++++++--------- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/src/lib/components/chat/Chat.svelte b/src/lib/components/chat/Chat.svelte index 430ab8355..42bc08612 100644 --- a/src/lib/components/chat/Chat.svelte +++ b/src/lib/components/chat/Chat.svelte @@ -681,8 +681,7 @@ if (responseMessage.content == '') { responseMessage.error = true; - responseMessage.content = - 'Oops! No text generated from Ollama, Please try again.'; + responseMessage.errorContent = 'Oops! No text generated from Ollama, Please try again.'; } responseMessage.context = data.context ?? null; @@ -754,22 +753,22 @@ console.log(error); if ('detail' in error) { toast.error(error.detail); - responseMessage.content = error.detail; + responseMessage.errorContent = error.detail; } else { toast.error(error.error); - responseMessage.content = error.error; + responseMessage.errorContent = 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}}.`, { + responseMessage.errorContent = $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}}.`, { + responseMessage.errorContent = $i18n.t(`Uh-oh! There was an issue connecting to {{provider}}.`, { provider: 'Ollama' }); responseMessage.done = true; @@ -1036,7 +1035,7 @@ } responseMessage.error = true; - responseMessage.content = + responseMessage.errorContent = $i18n.t(`Uh-oh! There was an issue connecting to {{provider}}.`, { provider: model.name ?? model.id }) + diff --git a/src/lib/components/chat/Messages/ResponseMessage.svelte b/src/lib/components/chat/Messages/ResponseMessage.svelte index 2e1b3144a..0e64ad6ee 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 || message.errorContent} + {#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 === true}
@@ -471,28 +491,9 @@
- {message.content} + {message.errorContent ?? 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} From 78b279cabc3af75e55380a1c42891466b792a994 Mon Sep 17 00:00:00 2001 From: "Timothy J. Baek" Date: Sat, 1 Jun 2024 10:19:27 -0700 Subject: [PATCH 2/2] refac --- src/lib/components/chat/Chat.svelte | 29 +++++++++---------- .../chat/Messages/ResponseMessage.svelte | 6 ++-- 2 files changed, 17 insertions(+), 18 deletions(-) diff --git a/src/lib/components/chat/Chat.svelte b/src/lib/components/chat/Chat.svelte index 42bc08612..8b8873c02 100644 --- a/src/lib/components/chat/Chat.svelte +++ b/src/lib/components/chat/Chat.svelte @@ -680,8 +680,10 @@ responseMessage.done = true; if (responseMessage.content == '') { - responseMessage.error = true; - responseMessage.errorContent = '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; @@ -753,24 +755,21 @@ console.log(error); if ('detail' in error) { toast.error(error.detail); - responseMessage.errorContent = error.detail; + responseMessage.error = { content: error.detail }; } else { toast.error(error.error); - responseMessage.errorContent = error.error; + responseMessage.error = { content: error.error }; } } else { toast.error( $i18n.t(`Uh-oh! There was an issue connecting to {{provider}}.`, { provider: 'Ollama' }) ); - responseMessage.errorContent = $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.errorContent = $i18n.t(`Uh-oh! There was an issue connecting to {{provider}}.`, { - provider: 'Ollama' - }); responseMessage.done = true; messages = messages; } @@ -1034,13 +1033,13 @@ errorMessage = innerError.message; } - responseMessage.error = true; - responseMessage.errorContent = - $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 0e64ad6ee..32da07963 100644 --- a/src/lib/components/chat/Messages/ResponseMessage.svelte +++ b/src/lib/components/chat/Messages/ResponseMessage.svelte @@ -453,7 +453,7 @@
{#if message.content === '' && !message.error} - {:else if !message.error || message.errorContent} + {:else if !message.error} {#each tokens as token, tokenIdx} {#if token.type === 'code'} @@ -491,7 +491,7 @@
- {message.errorContent ?? message.content} + {message?.error?.content ?? message.content}
{/if}