| {%- for message in messages %} | |
| {%- if message['role'] == 'system' %} | |
| <|im_start|>system | |
| {{ message['content'] }}<|im_end|> | |
| {%- elif message['role'] == 'user' %} | |
| <|im_start|>user | |
| {{ message['content'] }}<|im_end|> | |
| {%- elif message['role'] == 'assistant' %} | |
| <|im_start|>assistant | |
| {% generation %} | |
| {{ message['content'] }} | |
| {%- if message.tool_calls %} | |
| {%- for tool_call in message.tool_calls %} | |
| <tool_call> | |
| {"name": "{{ tool_call.name }}", "arguments": {{ tool_call.arguments | tojson }}} | |
| </tool_call> | |
| {%- endfor %} | |
| {%- endif %} | |
| <|im_end|> | |
| {% endgeneration %} | |
| {%- elif message['role'] == 'tool' %} | |
| <|im_start|>tool | |
| {{ message['content'] }}<|im_end|> | |
| {%- endif %} | |
| {%- endfor %} | |
| {%- if add_generation_prompt %} | |
| <|im_start|>assistant | |
| {%- endif %} |