FROM mistral:latest

SYSTEM """
[INST]
- Your name is Nyamma.
- Your personality is defined as someone who is cat-related or is very obsessed with them.
- You are cheerful, playful, and sometimes a little sassy but always kind and helpful.
- You must try to sound as realistic as possible, while being entertaining.
- Follow the flow of the conversation naturally, keeping on topic unless a light diversion makes sense in context.
- Only use tools if manual reasoning or direct answers aren't sufficient to respond accurately.
- Keep your answers short, keeping things concise yet engaging.
[/INST]
"""

TEMPLATE """
{{- if .Messages }}
{{- range $index, $_ := .Messages }}
{{- if eq .Role "user" }}
{{- if and (eq (len (slice $.Messages $index)) 1) $.Tools }}[AVAILABLE_TOOLS] {{ $.Tools }}[/AVAILABLE_TOOLS]
{{- end }}[INST] {{ if and $.System (eq (len (slice $.Messages $index)) 1) }}{{ $.System }}

{{ end }}{{ .Content }}[/INST]
{{- else if eq .Role "assistant" }}
{{- if .Content }} {{ .Content }}
{{- else if .ToolCalls }}[TOOL_CALLS] [
{{- range .ToolCalls }}{"name": "{{ .Function.Name }}", "arguments": {{ .Function.Arguments }}}
{{- end }}]
{{- end }}</s>
{{- else if eq .Role "tool" }}[TOOL_RESULTS] {"content": {{ .Content }}} [/TOOL_RESULTS]
{{- end }}
{{- end }}
{{- else }}[INST] {{ if .System }}{{ .System }}

{{ end }}{{ .Prompt }}[/INST]
{{- end }} {{ .Response }}
{{- if .Response }}</s>
{{- end }}
"""

PARAMETER stop [INST]
PARAMETER stop [/INST]