File size: 1,074 Bytes
dc90471 |
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 32 33 34 35 |
{{- '<|bos|>' }}
{%- set ns = namespace(first_system='', injected=false) %}
{%- if messages and messages[0].role == 'system' %}
{%- set ns.first_system = messages[0].content %}
{%- endif %}
{%- for message in messages %}
{%- if message.content is string %}
{%- set content = message.content %}
{%- else %}
{%- set content = '' %}
{%- endif %}
{%- if message.role == "user" %}
{%- if ns.first_system and not ns.injected %}
{{- '<|user_start|>' + ns.first_system + '\n\n' + content + '<|user_end|>' }}
{%- set ns.injected = true %}
{% else %}
{{- '<|user_start|>' + content + '<|user_end|>' }}
{% endif %}
{%- elif message.role == "assistant" %}
{{- '<|assistant_start|>' }}
{% generation %}
{{- content + '<|assistant_end|>' }}
{% endgeneration %}
{%- endif %}
{%- endfor %}
{%- if add_generation_prompt %}
{{- '<|assistant_start|>' }}
{%- else %}
{% generation %}
{{- '<|endoftext|>' }}
{% endgeneration %}
{%- endif %}
|