merge_consecutive_system_messages

Function merge_consecutive_system_messages 

Source
fn merge_consecutive_system_messages(
    messages: Vec<ChatMessage>,
) -> Vec<ChatMessage>
Expand description

Merge consecutive system messages into a single message.

This is universally safe because:

  • No model template requires multiple system messages
  • Merging preserves all content with clear separation
  • It prevents errors in strict-turn templates (e.g., gemma3/medgemma)

§Arguments

  • messages - The input chat messages

§Returns

Messages with consecutive system messages merged