From cb4ad1ad9efe975ed563ba5667aaff223270004e Mon Sep 17 00:00:00 2001 From: Torsten Dittmann Date: Tue, 13 May 2025 15:37:26 +0200 Subject: [PATCH] Fix chat parser to process messages individually Instead of concatenating all messages into a single text block, this change processes each message individually through the parser with appropriate role information. --- src/lib/components/studio/chatWrapper.svelte | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/lib/components/studio/chatWrapper.svelte b/src/lib/components/studio/chatWrapper.svelte index 93ffcf5be..bb8e01395 100644 --- a/src/lib/components/studio/chatWrapper.svelte +++ b/src/lib/components/studio/chatWrapper.svelte @@ -35,7 +35,7 @@ chatWidth = resizerLeftPosition - resizerLeftOffset; }); - let isResizing = false; + let isResizing = $state(false); function startResize() { isResizing = true; @@ -121,10 +121,14 @@ convo.data.artifactId, convo.data.$id ); - const text = messages.reduce((curr, next) => { - return curr + next.content; - }, ''); - parser.init(text); + + for (const message of messages) { + const from = message.role === 'assistant' ? 'system' : 'user'; + parser.chunk(message.content, from, { + silent: true + }); + parser.end(); + } }); parser.on('complete', async (action) => {