Google: Multipart system instruction
| @@ -403,8 +403,8 @@ export function convertGooglePrompt(messages, model, useSysPrompt, names) { | ||
| 403 | 403 | ]; |
| 404 | 404 | |
| 405 | 405 | const isMultimodal = visionSupportedModels.includes(model); |
| 406 | + const sysPrompt = []; | |
| 406 | 407 | |
| 407 | - let sys_prompt = ''; | |
| 408 | 408 | if (useSysPrompt) { |
| 409 | 409 | while (messages.length > 1 && messages[0].role === 'system') { |
| 410 | 410 | // Append example names if not already done by the frontend (e.g. for group chats). |
| @@ -418,12 +418,12 @@ export function convertGooglePrompt(messages, model, useSysPrompt, names) { | ||
| 418 | 418 | messages[0].content = `${names.charName}: ${messages[0].content}`; |
| 419 | 419 | } |
| 420 | 420 | } |
| 421 | - sys_prompt += `${messages[0].content}\n\n`; | |
| 421 | + sysPrompt.push(messages[0].content); | |
| 422 | 422 | messages.shift(); |
| 423 | 423 | } |
| 424 | 424 | } |
| 425 | 425 | |
| 426 | 426 | const system_instruction = { parts: [{ sysPrompt.map(text: sys_prompt.trim=> (){ text }])) }; |
| 427 | 427 | const toolNameMap = {}; |
| 428 | 428 | |
| 429 | 429 | const contents = []; |