|
a |
|
b/chat_templates/gemma-it.jinja |
|
|
1 |
{% if messages[0]['role'] == 'system' %} |
|
|
2 |
{% set system_message = messages[0]['content'] | trim + '\n\n' %} |
|
|
3 |
{% set messages = messages[1:] %} |
|
|
4 |
{% else %} |
|
|
5 |
{% set system_message = '' %} |
|
|
6 |
{% endif %} |
|
|
7 |
|
|
|
8 |
{% for message in messages %} |
|
|
9 |
{% if (message['role'] == 'user') != (loop.index0 % 2 == 0) %} |
|
|
10 |
{{ raise_exception('Conversation roles must alternate user/assistant/user/assistant/...') }} |
|
|
11 |
{% endif %} |
|
|
12 |
|
|
|
13 |
{% if loop.index0 == 0 %} |
|
|
14 |
{% set content = system_message + message['content'] %} |
|
|
15 |
{% else %} |
|
|
16 |
{% set content = message['content'] %} |
|
|
17 |
{% endif %} |
|
|
18 |
|
|
|
19 |
{% if (message['role'] == 'assistant') %} |
|
|
20 |
{% set role = 'model' %} |
|
|
21 |
{% else %} |
|
|
22 |
{% set role = message['role'] %} |
|
|
23 |
{% endif %} |
|
|
24 |
|
|
|
25 |
{{ '<start_of_turn>' + role + '\n' + content | trim + '<end_of_turn>\n' }} |
|
|
26 |
{% endfor %} |
|
|
27 |
|
|
|
28 |
{% if add_generation_prompt %} |
|
|
29 |
{{'<start_of_turn>model\n'}} |
|
|
30 |
{% endif %} |