File size: 1,099 Bytes
0d63ff1 | 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 ns = namespace(system_text="") -%}
{%- for m in messages -%}
{%- if m.role == 'system' -%}
{%- if m.content is string -%}
{%- set ns.system_text = ns.system_text + m.content -%}
{%- else -%}
{%- for c in m.content -%}
{%- if c.type == 'text' and (c.text is defined) -%}
{%- set ns.system_text = ns.system_text + c.text -%}
{%- endif -%}
{%- endfor -%}
{%- endif -%}
{%- endif -%}
{%- endfor -%}
{%- set ns2 = namespace(audio_tokens="") -%}
{%- for m in messages -%}
{%- if m.content is not string -%}
{%- for c in m.content -%}
{%- if c.type == 'audio' or ('audio' in c) or ('audio_url' in c) -%}
{%- set ns2.audio_tokens = ns2.audio_tokens + "<|audio_start|><|audio_pad|><|audio_end|>" -%}
{%- endif -%}
{%- endfor -%}
{%- endif -%}
{%- endfor -%}
{{- '<|im_start|>system\n' + (ns.system_text if ns.system_text is string else '') + '<|im_end|>\n' -}}
{{- '<|im_start|>user\n' + ns2.audio_tokens + '<|im_end|>\n' -}}
{%- if add_generation_prompt -%}
{{- '<|im_start|>assistant\n' -}}
{%- endif -%} |