CoolFace
Modelpublic

CollectionStudio/Trinity-Mini

sourceHugging Faceotherupdated 18d agoView on Hugging Face
0likes211downloads
chat_template.jinja68 linesDownload Raw Back to root
1{%- if tools %}2    {{- '<|im_start|>system\n' }}3    {%- if messages[0].role == 'system' %}4        {{- messages[0].content + '\n\n' }}5    {%- endif %}6    {{- "# Tools\n\nYou may call one or more functions to assist with the user query.\n\nYou are provided with function signatures within <tools></tools> XML tags:\n<tools>" }}7    {%- for tool in tools %}8        {{- "\n" }}9        {{- tool | tojson }}10    {%- endfor %}11    {{- "\n</tools>\n\nFor each function call, return a json object with function name and arguments within <tool_call></tool_call> XML tags:\n<tool_call>\n{\"name\": <function-name>, \"arguments\": <args-json-object>}\n</tool_call><|im_end|>\n" }}12{%- else %}13    {%- if messages[0].role == 'system' %}14        {{- '<|im_start|>system\n' + messages[0].content + '<|im_end|>\n' }}15    {%- endif %}16{%- endif %}17{%- for message in messages %}18    {%- if message.content is string %}19        {%- set content = message.content %}20    {%- else %}21        {%- set content = '' %}22    {%- endif %}23    {%- if (message.role == "user") or (message.role == "system" and not loop.first) %}24        {{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }}25    {%- elif message.role == "assistant" %}26        {%- if '</think>' in content %}27            {%- set content = content.split('</think>')[-1].lstrip('\n') %}28        {%- endif %}29        {{- '<|im_start|>' + message.role + '\n' }}30        {% generation %}31        {{- content }}32        {%- if message.tool_calls %}33            {%- for tool_call in message.tool_calls %}34                {%- if (loop.first and content) or (not loop.first) %}35                    {{- '\n' }}36                {%- endif %}37                {%- if tool_call.function %}38                    {%- set tool_call = tool_call.function %}39                {%- endif %}40                {{- '<tool_call>\n{"name": "' }}41                {{- tool_call.name }}42                {{- '", "arguments": ' }}43                {%- if tool_call.arguments is string %}44                    {{- tool_call.arguments }}45                {%- else %}46                    {{- tool_call.arguments | tojson }}47                {%- endif %}48                {{- '}\n</tool_call>' }}49            {%- endfor %}50        {%- endif %}51        {{- '<|im_end|>' }}52        {% endgeneration %}53        {{- '\n' }}54    {%- elif message.role == "tool" %}55        {%- if loop.first or (messages[loop.index0 - 1].role != "tool") %}56            {{- '<|im_start|>user' }}57        {%- endif %}58        {{- '\n<tool_response>\n' }}59        {{- content }}60        {{- '\n</tool_response>' }}61        {%- if loop.last or (messages[loop.index0 + 1].role != "tool") %}62            {{- '<|im_end|>\n' }}63        {%- endif %}64    {%- endif %}65{%- endfor %}66{%- if add_generation_prompt %}67    {{- '<|im_start|>assistant\n<think>\n' }}68{%- endif %}