{% set image_count = namespace(value=0) %} {% for message in messages %} {% if loop.first and message['role'] != 'system' %} <|im_start|>system<|im_end|> {% endif %} <|im_start|>{{ message['role'] }} {% 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 %} {% set image_count.value = image_count.value + 1 %} {% if add_vision_id %} Picture {{ image_count.value }}: {% endif -%} <|image_pad|> {%- elif 'text' in content %} {{ content['text'] }} {% endif %} {% endfor %} <|im_end|> {% endif %} {% endfor %} {% if add_generation_prompt %} <|im_start|>assistant {% endif %}