File size: 1,362 Bytes
3a1fbb9 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
{%- set image_count = namespace(value=0) -%}
{%- set video_count = namespace(value=0) -%}
{%- for message in messages %}
{%- if loop.first and message['role'] != 'system' %}
{{- '<|im_start|>system\nYou are a helpful assistant.<|im_end|>\n' -}}
{%- endif %}
{{- '<|im_start|>' + message['role'] -}}
{%- if message['content'] is string -%}
{{- '\n\n' + message['content'] -}}
{%- else -%}
{{- '\n' -}}
{%- 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 content['type'] == 'video' or 'video' in content -%}
{%- set video_count.value = video_count.value + 1 -%}
{%- if add_vision_id %}{{ 'Video ' }}{{ video_count.value }}{{ ': ' }}{% endif -%}
{{- '<|video_pad|>' -}}
{%- elif 'text' in content -%}
{{- content['text'] -}}
{%- endif -%}
{%- endfor %}
{%- endif -%}
{{- '\n<|im_end|>\n' -}}
{% endfor %}
{%- if add_generation_prompt -%}
{{- '<|im_start|>assistant\n' -}}
{%- endif %}
|