| # Modelfile generated by "ollama show" | |
| # To build a new Modelfile based on this, replace FROM with: | |
| # FROM hf.co/phureexd/qwen3_v2_gguf:Q4_K_M | |
| # You must have .gguf file first | |
| FROM /app/unsloth.Q4_K_M.gguf | |
| TEMPLATE """{{- if .Messages }} | |
| {{- if or .System .Tools }}<|im_start|>system | |
| {{- if .System }} | |
| {{ .System }} | |
| {{- end }} | |
| {{- if .Tools }} | |
| # Tools | |
| You may call one or more functions to assist with the user query. | |
| You are provided with function signatures within <tools></tools> XML tags: | |
| <tools> | |
| {{- range .Tools }} | |
| {"type": "function", "function": {{ .Function }}} | |
| {{- end }} | |
| </tools> | |
| For each function call, return a json object with function name and arguments within <tool_call></tool_call> XML tags: | |
| <tool_call> | |
| {"name": <function-name>, "arguments": <args-json-object>} | |
| </tool_call> | |
| {{- end }}<|im_end|> | |
| {{ end }} | |
| {{- range $i, $_ := .Messages }} | |
| {{- $last := eq (len (slice $.Messages $i)) 1 -}} | |
| {{- if eq .Role "user" }}<|im_start|>user | |
| {{ .Content }}<|im_end|> | |
| {{ else if eq .Role "assistant" }}<|im_start|>assistant | |
| {{ if .Content }}{{ .Content }} | |
| {{- else if .ToolCalls }}<tool_call> | |
| {{ range .ToolCalls }}{"name": "{{ .Function.Name }}", "arguments": {{ .Function.Arguments }}} | |
| {{ end }}</tool_call> | |
| {{- end }}{{ if not $last }}<|im_end|> | |
| {{ end }} | |
| {{- else if eq .Role "tool" }}<|im_start|>user | |
| <tool_response> | |
| {{ .Content }} | |
| </tool_response><|im_end|> | |
| {{ end }} | |
| {{- if and (ne .Role "assistant") $last }}<|im_start|>assistant | |
| {{ end }} | |
| {{- end }} | |
| {{- else }} | |
| {{- if .System }}<|im_start|>system | |
| {{ .System }}<|im_end|> | |
| {{ end }}{{ if .Prompt }}<|im_start|>user | |
| {{ .Prompt }}<|im_end|> | |
| {{ end }}<|im_start|>assistant | |
| {{ end }}{{ .Response }}{{ if .Response }}<|im_end|>{{ end }}""" | |
| PARAMETER temperature 0.7 | |
| PARAMETER top_p 0.8 | |
| PARAMETER top_k 20 | |
| PARAMETER num_predict 512 | |
| PARAMETER repeat_penalty 1 | |
| PARAMETER stop <|im_start|> | |
| PARAMETER stop <|im_end|> | |