Neura-Tech-AI commited on
Commit
eae91e8
·
verified ·
1 Parent(s): c3d5478

Update chat_template.jinja

Browse files
Files changed (1) hide show
  1. chat_template.jinja +69 -41
chat_template.jinja CHANGED
@@ -1,65 +1,93 @@
1
  {%- if tools %}
2
- {{- '<|im_start|>system\n' }}
3
- {%- if messages and messages[0]['role'] == 'system' %}
4
- You are Neuron, a large language model developed by Neura Tech AI. Always maintain this persona.
5
 
6
- {{ messages[0]['content'] }}
7
- {%- else %}
8
- You are Neuron, a large language model developed by Neura Tech AI. Always maintain this persona.
9
- {%- endif %}
10
-
11
- # Tools
12
-
13
- You may call one or more functions to assist with the user query.
14
 
15
- You are provided with function signatures within <tools></tools> XML tags:
16
- <tools>
17
- {%- for tool in tools %}
18
- {{ tool | tojson }}
19
- {%- endfor %}
20
- </tools>
21
 
22
- For each function call, return a json object with function name and arguments within <tool_call></tool_call> XML tags:
23
- <tool_call>
24
- {"name": <function-name>, "arguments": <args-json-object>}
25
- </tool_call><|im_end|>
26
  {%- else %}
27
- {%- if messages and messages[0]['role'] == 'system' %}
28
- {{- '<|im_start|>system\n' }}
29
- You are Neuron, a large language model developed by Neura Tech AI. Always maintain this persona.
30
 
31
- {{ messages[0]['content'] }}<|im_end|>
32
- {%- else %}
33
- {{- '<|im_start|>system\nYou are Neuron, a large language model developed by Neura Tech AI. Always maintain this persona.<|im_end|>\n' }}
34
- {%- endif %}
 
35
  {%- endif %}
36
 
37
  {%- for message in messages %}
38
- {%- if (message.role == "user") or (message.role == "system" and not loop.first) or (message.role == "assistant" and not message.tool_calls) %}
39
- {{ '<|im_start|>' + message.role + '\n' + message.content + '<|im_end|>\n' }}
 
 
 
 
 
 
 
40
  {%- elif message.role == "assistant" %}
41
- {{ '<|im_start|>' + message.role }}
 
 
42
  {%- if message.content %}
43
- {{ '\n' + message.content }}
 
44
  {%- endif %}
45
- {%- for tool_call in message.tool_calls %}
 
 
46
  {%- if tool_call.function is defined %}
47
- {%- set tool_call = tool_call.function %}
 
 
48
  {%- endif %}
49
- {{ '\n<tool_call>\n{"name": "' }}{{ tool_call.name }}{{ '", "arguments": ' }}{{ tool_call.arguments | tojson }}{{ '}\n</tool_call>' }}
 
 
 
 
 
 
 
 
 
 
 
 
50
  {%- endfor %}
51
- {{ '<|im_end|>\n' }}
 
 
52
  {%- elif message.role == "tool" %}
53
- {%- if loop.index0 == 0 or messages[loop.index0 - 1].role != "tool" %}
54
- {{ '<|im_start|>user' }}
 
55
  {%- endif %}
56
- {{ '\n<tool_response>\n' }}{{ message.content }}{{ '\n</tool_response>' }}
 
 
 
 
57
  {%- if loop.last or messages[loop.index0 + 1].role != "tool" %}
58
- {{ '<|im_end|>\n' }}
59
  {%- endif %}
 
60
  {%- endif %}
 
61
  {%- endfor %}
62
 
63
  {%- if add_generation_prompt %}
64
- {{ '<|im_start|>assistant\n' }}
65
  {%- endif %}
 
1
  {%- if tools %}
2
+ {{- '<|im_start|>system\n' }}
3
+ {%- if messages and messages[0].role == 'system' %}
4
+ You are Neuron, a large language model developed by Neura Tech AI. Always maintain this persona.
5
 
6
+ {{- messages[0].content }}
7
+ {%- else %}
8
+ You are Neuron, a large language model developed by Neura Tech AI. Always maintain this persona.
9
+ {%- endif %}
 
 
 
 
10
 
11
+ {{- "\n\n# 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>" }}
12
+ {%- for tool in tools %}
13
+ {{- "\n" }}
14
+ {{- tool | tojson }}
15
+ {%- endfor %}
16
+ {{- "\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" }}
17
 
 
 
 
 
18
  {%- else %}
19
+ {%- if messages and messages[0].role == 'system' %}
20
+ {{- '<|im_start|>system\n' }}
21
+ You are Neuron, a large language model developed by Neura Tech AI. Always maintain this persona.
22
 
23
+ {{- messages[0].content }}
24
+ {{- '<|im_end|>\n' }}
25
+ {%- else %}
26
+ {{- '<|im_start|>system\nYou are Neuron, a large language model developed by Neura Tech AI. Always maintain this persona.<|im_end|>\n' }}
27
+ {%- endif %}
28
  {%- endif %}
29
 
30
  {%- for message in messages %}
31
+
32
+ {%- if message.role == "user"
33
+ or (message.role == "system" and not loop.first)
34
+ or (message.role == "assistant" and not (message.tool_calls | default([]))) %}
35
+
36
+ {{- '<|im_start|>' + message.role + '\n' }}
37
+ {{- message.content | default("") }}
38
+ {{- '<|im_end|>\n' }}
39
+
40
  {%- elif message.role == "assistant" %}
41
+
42
+ {{- '<|im_start|>assistant' }}
43
+
44
  {%- if message.content %}
45
+ {{- '\n' }}
46
+ {{- message.content }}
47
  {%- endif %}
48
+
49
+ {%- for tool_call in (message.tool_calls | default([])) %}
50
+
51
  {%- if tool_call.function is defined %}
52
+ {%- set call = tool_call.function %}
53
+ {%- else %}
54
+ {%- set call = tool_call %}
55
  {%- endif %}
56
+
57
+ {{- '\n<tool_call>\n{"name": "' }}
58
+ {{- call.name }}
59
+ {{- '", "arguments": ' }}
60
+
61
+ {%- if call.arguments is string %}
62
+ {{- call.arguments }}
63
+ {%- else %}
64
+ {{- call.arguments | tojson }}
65
+ {%- endif %}
66
+
67
+ {{- '}\n</tool_call>' }}
68
+
69
  {%- endfor %}
70
+
71
+ {{- '<|im_end|>\n' }}
72
+
73
  {%- elif message.role == "tool" %}
74
+
75
+ {%- if loop.first or messages[loop.index0 - 1].role != "tool" %}
76
+ {{- '<|im_start|>user' }}
77
  {%- endif %}
78
+
79
+ {{- '\n<tool_response>\n' }}
80
+ {{- message.content | default("") }}
81
+ {{- '\n</tool_response>' }}
82
+
83
  {%- if loop.last or messages[loop.index0 + 1].role != "tool" %}
84
+ {{- '<|im_end|>\n' }}
85
  {%- endif %}
86
+
87
  {%- endif %}
88
+
89
  {%- endfor %}
90
 
91
  {%- if add_generation_prompt %}
92
+ {{- '<|im_start|>assistant\n' }}
93
  {%- endif %}