File size: 1,232 Bytes
36a88b2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
{%- 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="", is_first_sp=true) -%}
{%- for message in messages -%}
	{%- if message["role"] == "system" -%}
		{%- if ns.is_first_sp -%}
			{%- set ns.system_prompt = ns.system_prompt + message["content"] -%}
			{%- set ns.is_first_sp = false -%}
		{%- else -%}
			{%- set ns.system_prompt = ns.system_prompt + "\n\n" + message["content"] -%}
		{%- endif -%}
	{%- 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 not none -%}
		{%- if ns.is_tool -%}
			{{- "<|tool▁outputs▁end|>" + message["content"] + "<|end▁of▁sentence|>" -}}
			{%- set ns.is_tool = false -%}
		{%- else -%}
			{{- "<|Assistant|>" + message["content"] + "<|end▁of▁sentence|>" -}}
		{%- endif -%}
	{%- endif -%}
{%- endfor -%}
{%- if add_generation_prompt -%}
	{{- "<|Assistant|>" -}}
{%- endif -%}