diff --git a/src/routes/(app)/+page.svelte b/src/routes/(app)/+page.svelte index 07fcc176..924d0c5b 100644 --- a/src/routes/(app)/+page.svelte +++ b/src/routes/(app)/+page.svelte @@ -308,7 +308,7 @@ .map((file) => file.url.slice(file.url.indexOf(',') + 1)); // Add images array only if it contains elements - if (imageUrls && imageUrls.length > 0) { + if (imageUrls && imageUrls.length > 0 && message.role === 'user') { baseMessage.images = imageUrls; } @@ -532,7 +532,8 @@ .filter((message) => message) .map((message, idx, arr) => ({ role: message.role, - ...(message.files?.filter((file) => file.type === 'image').length > 0 ?? false + ...((message.files?.filter((file) => file.type === 'image').length > 0 ?? false) && + message.role === 'user' ? { content: [ { diff --git a/src/routes/(app)/c/[id]/+page.svelte b/src/routes/(app)/c/[id]/+page.svelte index 4bc6acfa..56bd2f89 100644 --- a/src/routes/(app)/c/[id]/+page.svelte +++ b/src/routes/(app)/c/[id]/+page.svelte @@ -321,7 +321,7 @@ .map((file) => file.url.slice(file.url.indexOf(',') + 1)); // Add images array only if it contains elements - if (imageUrls && imageUrls.length > 0) { + if (imageUrls && imageUrls.length > 0 && message.role === 'user') { baseMessage.images = imageUrls; } @@ -545,7 +545,8 @@ .filter((message) => message) .map((message, idx, arr) => ({ role: message.role, - ...(message.files?.filter((file) => file.type === 'image').length > 0 ?? false + ...((message.files?.filter((file) => file.type === 'image').length > 0 ?? false) && + message.role === 'user' ? { content: [ { @@ -688,7 +689,12 @@ if (messages.length == 2) { window.history.replaceState(history.state, '', `/c/${_chatId}`); - await setChatTitle(_chatId, userPrompt); + + if ($settings?.titleAutoGenerateModel) { + await generateChatTitle(_chatId, userPrompt); + } else { + await setChatTitle(_chatId, userPrompt); + } } };