{% if messages[0]['role'] == 'system' %}{{ '<|im_start|>system ' + messages[0]['content'] + '<|im_end|>' }}{% set loop_messages = messages[1:] %}{% else %}{{ '<|im_start|>system Below are some instructions that describe some tasks. Write responses that appropriately complete each request.<|im_end|>' }}{% set loop_messages = messages %}{% endif %}{% for message in loop_messages %}{% if message['role'] == 'user' %}{{ ' <|im_start|>user ' + message['content'] + '<|im_end|>' }}{% elif message['role'] == 'assistant' %}{{ ' <|im_start|>assistant ' + message['content'] + '<|im_end|>' }}{% else %}{{ raise_exception('Only user and assistant roles are supported!') }}{% endif %}{% endfor %}{% if add_generation_prompt %}{{ ' <|im_start|>assistant ' }}{% endif %}