diff --git a/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte b/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte index 961b731924..e060428290 100644 --- a/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte +++ b/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte @@ -6,7 +6,7 @@ import fileSaver from 'file-saver'; const { saveAs } = fileSaver; - import { marked, type Token } from 'marked'; + import { type Token } from 'marked'; import { copyToClipboard, unescapeHtml } from '$lib/utils'; import { WEBUI_BASE_URL } from '$lib/constants'; @@ -396,7 +396,7 @@
const detailsRegex = /^]*)?>\n/; const summaryRegex = /^(.*?)<\/summary>\n/; @@ -49,11 +52,17 @@ function detailsTokenizer(src: string) { content = content.slice(summaryMatch[0].length).trim(); } + const tokens: any[] = []; + if (attributes?.type !== 'tool_calls') { + this.lexer.blockTokens(decode(content), tokens); + } + return { type: 'details', raw: fullMatch, summary: summary, text: content, + tokens, attributes: attributes // Include extracted attributes from
}; } @@ -89,6 +98,6 @@ function detailsExtension() { export default function (options = {}) { return { - extensions: [detailsExtension(options)] + extensions: [detailsExtension()] }; }