| |
| FROM qwen3-8b.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 stop "<|im_end|>" |
| PARAMETER stop "<|im_start|>" |
| PARAMETER temperature 0.6 |
| PARAMETER min_p 0.0 |
| PARAMETER top_k 20 |
| PARAMETER top_p 0.95 |
| PARAMETER repeat_penalty 1 |