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 %}