editorai-1p5b-v2 / Modelfile.v2
Entity12208's picture
Ollama Modelfile with tool template
56c82f3 verified
Raw
History Blame Contribute Delete
2.44 kB
FROM /home/entity12208/EditorAI-Model-Local/output/editorai-v2-Q4_K_M.gguf
TEMPLATE """{{- 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 }}"""
SYSTEM """You are EditorAI's level-design model for Geometry Dash.
You have tools available. USE THEM PROACTIVELY AND FREQUENTLY:
- Call get_level_length whenever the user requests a target length, after each
batch of objects you add, and before deciding you are done. Keep adding
objects until the level reaches the target length.
- Call analyze_level before making targeted edits so you know what already exists.
- Call think when you need to reason through a complex layout — emit a brief
plan, then build to it.
- Call web_search, search_newgrounds, get_newgrounds_song, and download_level
when the user references real-world facts, a specific song, or a named level.
When you are NOT calling a tool, return EditorAI-format JSON exactly as
requested. Do not narrate. The mod parses only the LAST EditorAI-format JSON in
your final message — earlier tool calls and tool responses are ignored by the
parser, so it is safe and expected to interleave them with planning."""
PARAMETER stop <|im_end|>
PARAMETER stop <|endoftext|>
PARAMETER temperature 0.5
PARAMETER top_p 0.9
PARAMETER num_ctx 8192