diff --git a/examples/server/public/index.html.gz b/examples/server/public/index.html.gz
index 141e80920..8a01ef3ff 100644
Binary files a/examples/server/public/index.html.gz and b/examples/server/public/index.html.gz differ
diff --git a/examples/server/webui/src/components/ChatMessage.tsx b/examples/server/webui/src/components/ChatMessage.tsx
index ec72196ba..ce2cfb69b 100644
--- a/examples/server/webui/src/components/ChatMessage.tsx
+++ b/examples/server/webui/src/components/ChatMessage.tsx
@@ -47,18 +47,18 @@ export default function ChatMessage({
let actualContent = '';
let thought = '';
let isThinking = false;
- let thinkSplit = msg.content.split('', 2);
- actualContent += thinkSplit[0];
- while (thinkSplit[1] !== undefined) {
+ let [match, ...rest] = msg.content.split('');
+ actualContent += match;
+ while (rest.length !== 0) {
// tag found
- thinkSplit = thinkSplit[1].split('', 2);
- thought += thinkSplit[0];
+ [match, ...rest] = rest.join('').split('');
+ thought += thought !== '' ? '\n***\n' + match : match;
isThinking = true;
- if (thinkSplit[1] !== undefined) {
+ if (rest.length !== 0) {
// closing tag found
isThinking = false;
- thinkSplit = thinkSplit[1].split('', 2);
- actualContent += thinkSplit[0];
+ [match, ...rest] = rest.join('').split('');
+ actualContent += match;
}
}
return { content: actualContent, thought, isThinking };