ruke1ire commited on
Commit
10d3da6
·
verified ·
1 Parent(s): 4c62cb7

Update chat_template.jinja

Browse files
Files changed (1) hide show
  1. chat_template.jinja +50 -7
chat_template.jinja CHANGED
@@ -1,7 +1,50 @@
1
- {{- bos_token -}}{%- set system_prompt = "" -%}{%- set ns = namespace(system_prompt="") -%}{%- if messages[0]["role"] == "system" -%} {%- set ns.system_prompt = messages[0]["content"] -%} {%- set messages = messages[1:] -%}{%- endif -%}{%- if tools -%} {%- set ns.system_prompt = ns.system_prompt + ("
2
- " if ns.system_prompt else "") + "List of tools: <|tool_list_start|>[" -%} {%- for tool in tools -%} {%- if tool is not string -%} {%- set tool = tool | tojson -%} {%- endif -%} {%- set ns.system_prompt = ns.system_prompt + tool -%} {%- if not loop.last -%} {%- set ns.system_prompt = ns.system_prompt + ", " -%} {%- endif -%} {%- endfor -%} {%- set ns.system_prompt = ns.system_prompt + "]<|tool_list_end|>" -%}{%- endif -%}{%- if ns.system_prompt -%} {{- "<|im_start|>system
3
- " + ns.system_prompt + "<|im_end|>
4
- " -}}{%- endif -%}{%- for message in messages -%} {{- "<|im_start|>" + message["role"] + "
5
- " -}} {%- 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|>
6
- " -}}{%- endfor -%}{%- if add_generation_prompt -%} {{- "<|im_start|>assistant
7
- " -}}{%- endif -%}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {{- bos_token -}}
2
+ {%- set ns = namespace(system_prompt="") -%}
3
+
4
+ {# --- 1. Extract system prompt if provided --- #}
5
+ {%- if messages[0]["role"] == "system" -%}
6
+ {%- set ns.system_prompt = messages[0]["content"] -%}
7
+ {%- set messages = messages[1:] -%}
8
+ {%- else -%}
9
+ {# --- 2. Default system prompt if none provided --- #}
10
+ {%- set ns.system_prompt = "Extract <address>, <company_name>, <email_address>, <human_name>, <phone_number>" -%}
11
+ {%- endif -%}
12
+
13
+ {# --- 3. Add tool list if any --- #}
14
+ {%- if tools -%}
15
+ {%- set ns.system_prompt = ns.system_prompt + ("
16
+ " if ns.system_prompt else "") + "List of tools: <|tool_list_start|>[" -%}
17
+ {%- for tool in tools -%}
18
+ {%- if tool is not string -%}
19
+ {%- set tool = tool | tojson -%}
20
+ {%- endif -%}
21
+ {%- set ns.system_prompt = ns.system_prompt + tool -%}
22
+ {%- if not loop.last -%}
23
+ {%- set ns.system_prompt = ns.system_prompt + ", " -%}
24
+ {%- endif -%}
25
+ {%- endfor -%}
26
+ {%- set ns.system_prompt = ns.system_prompt + "]<|tool_list_end|>" -%}
27
+ {%- endif -%}
28
+
29
+ {# --- 4. Render system prompt --- #}
30
+ {%- if ns.system_prompt -%}
31
+ {{- "<|im_start|>system\n" + ns.system_prompt + "<|im_end|>\n" -}}
32
+ {%- endif -%}
33
+
34
+ {# --- 5. Render all conversation messages --- #}
35
+ {%- for message in messages -%}
36
+ {{- "<|im_start|>" + message["role"] + "\n" -}}
37
+ {%- set content = message["content"] -%}
38
+ {%- if content is not string -%}
39
+ {%- set content = content | tojson -%}
40
+ {%- endif -%}
41
+ {%- if message["role"] == "tool" -%}
42
+ {%- set content = "<|tool_response_start|>" + content + "<|tool_response_end|>" -%}
43
+ {%- endif -%}
44
+ {{- content + "<|im_end|>\n" -}}
45
+ {%- endfor -%}
46
+
47
+ {# --- 6. Append generation prompt for assistant --- #}
48
+ {%- if add_generation_prompt -%}
49
+ {{- "<|im_start|>assistant\n" -}}
50
+ {%- endif -%}