{%- if messages[0]['role'] == 'system' %} {%- set system_message = messages[0]['content'] %} {%- set loop_messages = messages[1:] %} {%- else %} {%- set loop_messages = messages %} {%- endif %} {{- bos_token }} {%- for message in loop_messages %} {%- if (message['role'] == 'user') != (loop.index0 % 2 == 0) %} {{- raise_exception('After the optional system message, conversation roles must alternate user/assistant/user/assistant/...') }} {%- endif %} {%- if message['role'] == 'user' %} {{- '[INST] ' + message['content'] + ' [/INST]' }} {%- elif message['role'] == 'assistant' %} {{- ' ' + message['content'] + ' ' + eos_token }} {%- endif %} {%- endfor %} {%- if add_generation_prompt %} {{- '' }} {%- endif %}