Files
DeepSeek-R1-Distill-Qwen-1.5B/chat_template.jinja

10 lines
2.1 KiB
Plaintext
Raw Normal View History

{% if not add_generation_prompt is defined %}{% set add_generation_prompt = false %}{% endif %}{% set ns = namespace(is_first=false, is_tool=false, is_output_first=true, system_prompt='') %}{%- for message in messages %}{%- if message['role'] == 'system' %}{% set ns.system_prompt = message['content'] %}{%- endif %}{%- endfor %}{{ bos_token }}{{ ns.system_prompt }}{%- for message in messages %}{%- if message['role'] == 'user' %}{%- set ns.is_tool = false -%}{{ '<User>' + message['content'] }}{%- endif %}{%- if message['role'] == 'assistant' and message['content'] is none %}{%- set ns.is_tool = false -%}{%- for tool in message['tool_calls'] %}{%- if not ns.is_first %}{{ '<Assistant><tool▁calls▁begin><tool▁call▁begin>' + tool['type'] + '<tool▁sep>' + tool['function']['name'] + '
' + '```json' + '
' + tool['function']['arguments'] + '
' + '```' + '<tool▁call▁end>' }}{%- set ns.is_first = true -%}{%- else %}{{ '
' + '<tool▁call▁begin>' + tool['type'] + '<tool▁sep>' + tool['function']['name'] + '
' + '```json' + '
' + tool['function']['arguments'] + '
' + '```' + '<tool▁call▁end>' }}{{ '<tool▁calls▁end><end▁of▁sentence>' }}{%- endif %}{%- endfor %}{%- endif %}{%- if message['role'] == 'assistant' and message['content'] is not none %}{%- if ns.is_tool %}{{ '<tool▁outputs▁end>' + message['content'] + '<end▁of▁sentence>' }}{%- set ns.is_tool = false -%}{%- else %}{% set content = message['content'] %}{{ '<Assistant>' + content + '<end▁of▁sentence>' }}{%- endif %}{%- endif %}{%- if message['role'] == 'tool' %}{%- set ns.is_tool = true -%}{%- if ns.is_output_first %}{{ '<tool▁outputs▁begin><tool▁output▁begin>' + message['content'] + '<tool▁output▁end>' }}{%- set ns.is_output_first = false %}{%- else %}{{ '
<tool▁output▁begin>' + message['content'] + '<tool▁output▁end>' }}{%- endif %}{%- endif %}{%- endfor -%}{% if ns.is_tool %}{{ '<tool▁outputs▁end>' }}{% endif %}{% if add_generation_prompt and not ns.is_tool %}{{ '<Assistant><think>
' }}{% endif %}