| {%- set ns = namespace(has_head=true) -%} |
| {%- set loop_messages = messages -%} |
| {%- for message in loop_messages -%} |
| {%- set content = message['content'] -%} |
| {%- if loop.index0 == 0 -%} |
| {%- if content == '' -%} |
| {%- set ns.has_head = false -%} |
| {%- elif message['role'] == 'system' -%} |
| {%- set content = '<|startoftext|>' + content + '<|extra_4|>' -%} |
| {%- endif -%} |
| {%- endif -%} |
| {%- if message['role'] == 'user' -%} |
| {%- if loop.index0 == 1 and not ns.has_head -%} |
| {%- set content = '<|startoftext|>' + content -%} |
| {%- endif -%} |
| {%- if loop.index0 == 1 and ns.has_head -%} |
| {%- set content = content + '<|extra_0|>' -%} |
| {%- else -%} |
| {%- set content = '<|startoftext|>' + content + '<|extra_0|>' -%} |
| {%- endif -%} |
| {%- elif message['role'] == 'assistant' -%} |
| {%- set content = content + '<|eos|>' -%} |
| {%- endif -%} |
| {{- content -}} |
| {%- endfor -%} |
| |