{%- for message in messages -%}{%- if message.role == 'developer' or message.role == 'system' -%}developer {{ message.content }}{%- if tools is defined and tools|length > 0 %} Available tools:{%- for tool in tools %} {%- if tool.function is defined %}{{ tool.function | tojson }}{%- else %}{{ tool | tojson }}{%- endif %}{%- endfor %}{%- endif %} {%- elif message.role == 'user' -%}user {{ message.content }} {%- elif message.role == 'model' or message.role == 'assistant' -%}model {%- if message.tool_calls is defined and message.tool_calls -%}{%- for tc in message.tool_calls -%}call:{{ tc.function.name }}{{ '{' }}{%- for k, v in tc.function.arguments.items() -%}{{ k }}:{{ v }}{%- if not loop.last %},{% endif -%}{%- endfor -%}{{ '}' }}{%- endfor -%}{%- else -%}{{ message.content }}{%- endif -%} {%- elif message.role == 'tool' -%}tool {{ message.content }} {%- endif -%}{%- endfor -%}{%- if add_generation_prompt -%}model {%- endif -%}