Fix handling of text parts in convertGooglePrompt function Fixes #3855

8f63edfd30180018b048f9ea65a5dad7160851eb

Cohee <18619528+Cohee1207@users.noreply.github.com>

1 files changed, +6 -1Ignore whitespace
src/prompt-converters.js+6 -1
@@ -508,7 +508,12 @@ export function convertGooglePrompt(messages, model, useSysPrompt, names) {
508 if (index > 0 && message.role === contents[contents.length - 1].role) {508 if (index > 0 && message.role === contents[contents.length - 1].role) {
509 parts.forEach((part) => {509 parts.forEach((part) => {
510 if (part.text) {510 if (part.text) {
511 contents[contents.length - 1].parts[0].text += '\n\n' + part.text;511 const textPart = contents[contents.length - 1].parts.find(p => typeof p.text === 'string');
512 if (textPart) {
513 textPart.text += '\n\n' + part.text;
514 } else {
515 contents[contents.length - 1].parts.push(part);
516 }
512 }517 }
513 if (part.inlineData || part.functionCall || part.functionResponse) {518 if (part.inlineData || part.functionCall || part.functionResponse) {
514 contents[contents.length - 1].parts.push(part);519 contents[contents.length - 1].parts.push(part);