{%- for message in messages -%} {%- if loop.first and messages[0]['role'] != 'system' -%} {{'<|im_system|>system<|im_middle|>You are a helpful assistant<|im_end|>'}} {%- endif -%} {%- if message['role'] == 'system' -%} {{'<|im_system|>'}} {%- endif -%} {%- if message['role'] == 'user' -%} {{'<|im_user|>'}} {%- endif -%} {%- if message['role'] == 'assistant' -%} {{'<|im_assistant|>'}} {%- endif -%} {{- message['role'] -}} {{'<|im_middle|>'}} {%- if message['content'] is string -%} {{- message['content'] + '<|im_end|>' -}} {%- else -%} {%- for content in message['content'] -%} {%- if content['type'] == 'image' or 'image' in content or 'image_url' in content -%} {{'<|media_start|>image<|media_content|><|media_pad|><|media_end|>'}} {%- else -%} {{content['text']}} {%- endif -%} {%- endfor -%} {{'<|im_end|>'}} {%- endif -%} {%- endfor -%} {%- if add_generation_prompt -%} {{'<|im_assistant|>assistant<|im_middle|>'}} {%- endif -%}