| {{ bos_token }}{% if messages[0]['role'] == 'system' %}{{ raise_exception('System role not supported') }}{% endif %}{% for message in messages %}{% if (message['role'] == 'user') != (loop.index0 % 2 == 0) %}{{ raise_exception('Conversation roles must alternate user/assistant/user/assistant/...') }}{% endif %}{% if (message['role'] == 'assistant') %}{% set role = 'model' %}{% else %}{% set role = message['role'] %}{% endif %} |
| {% if message['role'] == 'assistant' %}{% generation %}{{ '<start_of_turn>' + role + ' |
| ' + message['content'] | trim + '<end_of_turn> |
| ' }}{% endgeneration %} |
| {% else %} |
| {{ '<start_of_turn>' + role + ' |
| ' + message['content'] | trim + '<end_of_turn>' }} |
| {% endif %} |
| {% endfor %} |
| {% if add_generation_prompt %} |
| {% generation %}{{ '<start_of_turn>model |
| ' }}{% endgeneration %} |
| {% endif %} |
| |