LFM2-700M / chat_template.jinja
mlabonne's picture
Add tool calling support to chat template (#4)
d3c36d9 verified
{{- bos_token -}}
{%- set system_prompt = "" -%}
{%- if messages[0]["role"] == "system" -%}
{%- set system_prompt = messages[0]["content"] -%}
{%- set messages = messages[1:] -%}
{%- endif -%}
{%- if tools -%}
{%- set system_prompt = system_prompt + ("\n" if system_prompt else "") + "List of tools: <|tool_list_start|>" + tools | tojson + "<|tool_list_end|>" -%}
{%- endif -%}
{%- if system_prompt -%}
{{- "<|im_start|>system\n" + system_prompt + "<|im_end|>\n" -}}
{%- endif -%}
{%- for message in messages -%}
{{- "<|im_start|>" + message["role"] + "\n" -}}
{%- set content = message["content"] -%}
{%- if content is not string -%}
{%- set content = content | tojson -%}
{%- endif -%}
{%- if message["role"] == "tool" -%}
{%- set content = "<|tool_response_start|>" + content + "<|tool_response_end|>" -%}
{%- endif -%}
{{- content + "<|im_end|>\n" -}}
{%- endfor -%}
{%- if add_generation_prompt -%}
{{- "<|im_start|>assistant\n" -}}
{%- endif -%}