|
a |
|
b/chat_templates/saiga.jinja |
|
|
1 |
{% if messages[0]['role'] == 'system' %} |
|
|
2 |
{% set offset = 1 %} |
|
|
3 |
{% else %} |
|
|
4 |
{% set offset = 0 %} |
|
|
5 |
{% endif %} |
|
|
6 |
|
|
|
7 |
{% for message in messages %} |
|
|
8 |
{% if (message['role'] == 'user') != (loop.index0 % 2 == offset) %} |
|
|
9 |
{{ raise_exception('Conversation roles must alternate user/bot/user/bot/...') }} |
|
|
10 |
{% endif %} |
|
|
11 |
|
|
|
12 |
{% if message['role'] == 'assistant' %} |
|
|
13 |
{{ set role = 'bot' }} |
|
|
14 |
{% else %} |
|
|
15 |
{{ set role = message['role'] }} |
|
|
16 |
{% endif %} |
|
|
17 |
|
|
|
18 |
{{ bos_token + role + '\n' + message['content'] | trim + eos_token }} |
|
|
19 |
{% endfor %} |
|
|
20 |
|
|
|
21 |
{% if add_generation_prompt %} |
|
|
22 |
{{ bos_token + 'bot\n' }} |
|
|
23 |
{% endif %} |