diff --git a/src/routes/conversation/[id]/+page.svelte b/src/routes/conversation/[id]/+page.svelte index 316851edb55..9dfcf5b8eb1 100644 --- a/src/routes/conversation/[id]/+page.svelte +++ b/src/routes/conversation/[id]/+page.svelte @@ -137,6 +137,7 @@ const encoder = new TextDecoderStream(); const reader = response?.body?.pipeThrough(encoder).getReader(); let finalAnswer = ""; + const messageUpdates: MessageUpdate[] = []; // set str queue // ex) if the last response is => {"type": "stream", "token": @@ -172,6 +173,10 @@ try { const update = JSON.parse(el) as MessageUpdate; + if (update.type !== "stream") { + messageUpdates.push(update); + } + if (update.type === "finalAnswer") { finalAnswer = update.text; reader.cancel(); @@ -224,9 +229,11 @@ }); } - // reset the websearchMessages webSearchMessages = []; + const lastMessage = messages[messages.length - 1]; + lastMessage.updates = messageUpdates; + await invalidate(UrlDependency.ConversationList); } catch (err) { if (err instanceof Error && err.message.includes("overloaded")) {