21 lines
712 B
Django/Jinja
21 lines
712 B
Django/Jinja
{%- if messages[0]['role'] == 'system' -%}
|
|
<|im_start|>system
|
|
{{ messages[0]['content'] | trim }}<|im_end|>
|
|
{%- else -%}
|
|
<|im_start|>system
|
|
<|im_end|>
|
|
{%- endif -%}
|
|
{%- for message in messages -%}
|
|
{%- if (message.role == 'user') or (message.role == 'system' and not loop.first) or (message.role == 'assistant') -%}
|
|
<|im_start|>{{ message.role }}
|
|
{%- if message['role'] == 'assistant' %}
|
|
{% generation %}{{ message['content'] | trim }}<|im_end|>{% endgeneration %}
|
|
{%- else %}
|
|
{{ message['content'] | trim }}<|im_end|>
|
|
{%- endif %}
|
|
{%- endif -%}
|
|
{%- endfor -%}
|
|
{%- if add_generation_prompt %}
|
|
<|im_start|>assistant
|
|
{%- endif -%}
|
|
|