RESMP-DEV/LFM2.5-Encoder-230M-Code-MXFP4-GPTQ
029
1{{- bos_token -}}2{%- set keep_past_thinking = keep_past_thinking | default(false) -%}3{%- set ns = namespace(system_prompt="") -%}4{%- if messages[0]["role"] == "system" -%}5 {%- set sys_content = messages[0]["content"] -%}6 {%- if sys_content is not string -%}7 {%- for item in sys_content -%}8 {%- if item["type"] == "text" -%}9 {%- set ns.system_prompt = ns.system_prompt + item["text"] -%}10 {%- endif -%}11 {%- endfor -%}12 {%- else -%}13 {%- set ns.system_prompt = sys_content -%}14 {%- endif -%}15 {%- set messages = messages[1:] -%}16{%- endif -%}17{%- if tools -%}18 {%- set ns.system_prompt = ns.system_prompt + ("\n" if ns.system_prompt else "") + "List of tools: [" -%}19 {%- for tool in tools -%}20 {%- if tool is not string -%}21 {%- set tool = tool | tojson -%}22 {%- endif -%}23 {%- set ns.system_prompt = ns.system_prompt + tool -%}24 {%- if not loop.last -%}25 {%- set ns.system_prompt = ns.system_prompt + ", " -%}26 {%- endif -%}27 {%- endfor -%}28 {%- set ns.system_prompt = ns.system_prompt + "]" -%}29{%- endif -%}30{%- if ns.system_prompt -%}31 {{- "<|im_start|>system\n" + ns.system_prompt + "<|im_end|>\n" -}}32{%- endif -%}33{%- set ns.last_assistant_index = -1 -%}34{%- for message in messages -%}35 {%- if message["role"] == "assistant" -%}36 {%- set ns.last_assistant_index = loop.index0 -%}37 {%- endif -%}38{%- endfor -%}39{%- for message in messages -%}40 {{- "<|im_start|>" + message["role"] + "\n" -}}41 {%- set content = message["content"] -%}42 {%- if content is not string -%}43 {%- set ns.content = "" -%}44 {%- for item in content -%}45 {%- if item["type"] == "image" -%}46 {%- set ns.content = ns.content + "<image>" -%}47 {%- elif item["type"] == "text" -%}48 {%- set ns.content = ns.content + item["text"] -%}49 {%- else -%}50 {%- set ns.content = ns.content + item | tojson -%}51 {%- endif -%}52 {%- endfor -%}53 {%- set content = ns.content -%}54 {%- endif -%}55 {%- if message["role"] == "assistant" and not keep_past_thinking and loop.index0 != ns.last_assistant_index -%}56 {%- if "</think>" in content -%}57 {%- set content = content.split("</think>")[-1] | trim -%}58 {%- endif -%}59 {%- endif -%}60 {{- content + "<|im_end|>\n" -}}61{%- endfor -%}62{%- if add_generation_prompt -%}63 {{- "<|im_start|>assistant\n" -}}64{%- endif -%}