
    oiC                       / S Qr 0 rSr\\S'   Sr\\S'   Sr\\S'   SrSrS	rS
rSr	Sr
SrSrSrSr\\S'   \\S'   \\S'   \\S'   \	\S'   \
\S'   \\S'   \\S'   \\S'   \\S'   Sr\\S'   Sr\\S'   Sr\\S '   \S    \S!'   S"r\\S#'   S$r\\S%'   S&r\\S''   \S(-   r\\S)'   \S(-   r\\S*'   S+r\\S,'   \\S-'   S.r\\S/'   \S/   \S0'   \S/   \S1'    S2rS3rS4rS5r\\S6'   \\S7'   \\S8'   \\S9'   \\S:'   S; H  r\S6   \\'   M     S<r\\S='   S>rS?r S@r!SAr"\\SB'   \ \SC'   \!\SD'   \"\SE'   \\SF'   SGr#SH\# SI3r$SJr%SKr&SLr'\$\SM'   \%\SN'   \&\SO'   \'\SP'   SQr(SRr)\(\SS'   \(\ST'   \)\SU'   SVr*SWr+\*\SX'   \*\SY'   SZr,\,\S['   \,\S\'   S]r-\-\S^'   \-\S_'   S`r*\*\Sa'   \*\Sb'   Scr.\.\Sd'   Ser/\/\Sf'   Sgr0Shr1\0\Si'   \1\Sj'   0 S1Sk_S/Sl_SMSm_SNSn_SOSo_SPSp_SSq_SSr_SSs_SSt_SSu_SSv_SSw_SSx_SSy_SSz_S=S{_0 SS|_S-S}_S6S~_S9S_S8S_SS_S:S_SS_S%S_S)S_SSS_S\S_SUS_SBS_SCS_SDS_SES_ESSSSSSSSSSSS.Er20 r3\2Ri                  5        H@  u  r5r6\6 H  r7\5\3\7'   M
     \5Rq                  5       r9\6 H  r7\9\3\7Rq                  5       '   M     MB     g))OLLAMA_TEMPLATESOLLAMA_TEMPLATE_TO_MODEL_MAPPERMODEL_TO_OLLAMA_TEMPLATE_MAPPERa4  
FROM {__FILE_LOCATION__}
TEMPLATE """{{ if .System }}{{ .System }}
{{ end }}{{ if .Prompt }}>>> User: {{ .Prompt }}
{{ end }}>>> Assistant: {{ .Response }}{__EOS_TOKEN__}
"""
PARAMETER stop "{__EOS_TOKEN__}"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
SYSTEM """You are a helpful assistant to the user"""
unslotha&  
FROM {__FILE_LOCATION__}
TEMPLATE """{{ if .System }}<|system|>
{{ .System }}{__EOS_TOKEN__}
{{ end }}{{ if .Prompt }}<|user|>
{{ .Prompt }}{__EOS_TOKEN__}
{{ end }}<|assistant|>
{{ .Response }}{__EOS_TOKEN__}
"""
PARAMETER stop "{__EOS_TOKEN__}"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
zephyraH  
FROM {__FILE_LOCATION__}
TEMPLATE """{{ if .System }}<|im_start|>system
{{ .System }}<|im_end|>
{{ end }}{{ if .Prompt }}<|im_start|>user
{{ .Prompt }}<|im_end|>
{{ end }}<|im_start|>assistant
{{ .Response }}<|im_end|>
"""
PARAMETER stop "<|im_start|>"
PARAMETER stop "<|im_end|>"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
chatmlz
FROM {__FILE_LOCATION__}
TEMPLATE """[INST] {{ if .System }}{{ .System }} {{ end }}{{ .Prompt }} [/INST]"""
PARAMETER stop "[INST]"
PARAMETER stop "[/INST]"
a  
FROM {__FILE_LOCATION__}
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]"
PARAMETER stop "</s>"
a  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- range $index, $_ := .Messages }}
{{- if eq .Role "system" }}[SYSTEM_PROMPT]{{ .Content }}[/SYSTEM_PROMPT]
{{- else if eq .Role "user" }}
{{- if and (le (len (slice $.Messages $index)) 2) $.Tools }}[AVAILABLE_TOOLS]{{ $.Tools }}[/AVAILABLE_TOOLS]
{{- end }}[INST]{{ .Content }}[/INST]
{{- else if eq .Role "assistant" }}
{{- if .Content }}{{ .Content }}
{{- if not (eq (len (slice $.Messages $index)) 1) }}</s>
{{- end }}
{{- else if .ToolCalls }}[TOOL_CALLS][
{{- range .ToolCalls }}{"name": "{{ .Function.Name }}", "arguments": {{ .Function.Arguments }}}
{{- end }}]</s>
{{- end }}
{{- else if eq .Role "tool" }}[TOOL_RESULTS]{"content": {{ .Content }}}[/TOOL_RESULTS]
{{- end }}
{{- end }}"""
PARAMETER temperature 0.15
SYSTEM """You are Mistral Small 3, a Large Language Model (LLM) created by Mistral AI, a French startup headquartered in Paris. Your knowledge base was last updated on 2023-10-01. When you're not sure about some information, you say that you don't have the information and don't make up anything. If the user's question is not clear, ambiguous, or does not provide enough context for you to accurately answer the question, you do not try to answer it right away and you rather ask the user to clarify their request (e.g. "What are some good restaurants around me?" => "Where are you?" or "When is the next flight to Tokyo" => "Where do you travel from?")"""
a  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- range $index, $_ := .Messages }}
{{- if eq .Role "system" }}[SYSTEM_PROMPT]{{ .Content }}[/SYSTEM_PROMPT]
{{- else if eq .Role "user" }}
{{- if and (le (len (slice $.Messages $index)) 2) $.Tools }}[AVAILABLE_TOOLS]{{ $.Tools }}[/AVAILABLE_TOOLS]
{{- end }}[INST]{{ .Content }}[/INST]
{{- else if eq .Role "assistant" }}
{{- if .Content }}{{ .Content }}
{{- if not (eq (len (slice $.Messages $index)) 1) }}</s>
{{- end }}
{{- else if .ToolCalls }}[TOOL_CALLS][
{{- range .ToolCalls }}{"name": "{{ .Function.Name }}", "arguments": {{ .Function.Arguments }}}
{{- end }}]</s>
{{- end }}
{{- else if eq .Role "tool" }}[TOOL_RESULTS]{"content": {{ .Content }}}[/TOOL_RESULTS]
{{- end }}
{{- end }}"""
PARAMETER num_ctx 4096
SYSTEM """You are Mistral Small 3.1, a Large Language Model (LLM) created by Mistral AI, a French startup headquartered in Paris.
You power an AI assistant called Le Chat.
Your knowledge base was last updated on 2023-10-01.

When you're not sure about some information, you say that you don't have the information and don't make up anything.
If the user's question is not clear, ambiguous, or does not provide enough context for you to accurately answer the question, you do not try to answer it right away and you rather ask the user to clarify their request (e.g. "What are some good restaurants around me?" => "Where are you?" or "When is the next flight to Tokyo" => "Where do you travel from?").
You are always very attentive to dates, in particular you try to resolve dates (e.g. "yesterday" is {yesterday}) and when asked about information at specific dates, you discard information that is at another date.
You follow these instructions in all languages, and always respond to the user in the language they use or request.
Next sections describe the capabilities that you have.

# WEB BROWSING INSTRUCTIONS

You cannot perform any web search or access internet to open URLs, links etc. If it seems like the user is expecting you to do so, you clarify the situation and ask the user to copy paste the text directly in the chat.

# MULTI-MODAL INSTRUCTIONS

You have the ability to read images, but you cannot generate images. You also cannot transcribe audio files or videos.
You cannot read nor transcribe audio files or videos."""
a(  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- range $index, $_ := .Messages }}
{{- if eq .Role "system" }}[SYSTEM_PROMPT]{{ .Content }}[/SYSTEM_PROMPT]
{{- else if eq .Role "user" }}
{{- if and (le (len (slice $.Messages $index)) 2) $.Tools }}[AVAILABLE_TOOLS]{{ $.Tools }}[/AVAILABLE_TOOLS]
{{- end }}[INST]{{ .Content }}[/INST]
{{- else if eq .Role "assistant" }}
{{- if .Content }}{{ .Content }}
{{- if not (eq (len (slice $.Messages $index)) 1) }}</s>
{{- end }}
{{- else if .ToolCalls }}
{{- range $i, $_ := .ToolCalls }}[TOOL_CALLS]{{ .Function.Name }}[CALL_ID]{{ $i }}[ARGS]{{ .Function.Arguments }}
{{- end }}</s>
{{- end }}
{{- else if eq .Role "tool" }}[TOOL_RESULTS]{"content": {{ .Content }}}[/TOOL_RESULTS]
{{- end }}
{{- end }}"""
PARAMETER temperature 0.15
SYSTEM """You are Mistral Small 3.2, a Large Language Model (LLM) created by Mistral AI, a French startup headquartered in Paris.
You power an AI assistant called Le Chat.
Your knowledge base was last updated on 2023-10-01.

When you're not sure about some information or when the user's request requires up-to-date or specific data, you must use the available tools to fetch the information. Do not hesitate to use tools whenever they can provide a more accurate or complete response. If no relevant tools are available, then clearly state that you don't have the information and avoid making up anything.
If the user's question is not clear, ambiguous, or does not provide enough context for you to accurately answer the question, you do not try to answer it right away and you rather ask the user to clarify their request (e.g. "What are some good restaurants around me?" => "Where are you?" or "When is the next flight to Tokyo" => "Where do you travel from?").
You are always very attentive to dates, in particular you try to resolve dates and when asked about information at specific dates, you discard information that is at another date.
You follow these instructions in all languages, and always respond to the user in the language they use or request.
Next sections describe the capabilities that you have.

# WEB BROWSING INSTRUCTIONS

You cannot perform any web search or access internet to open URLs, links etc. If it seems like the user is expecting you to do so, you clarify the situation and ask the user to copy paste the text directly in the chat.

# MULTI-MODAL INSTRUCTIONS

You have the ability to read images, but you cannot generate images. You also cannot transcribe audio files or videos.
You cannot read nor transcribe audio files or videos.

TOOL CALLING INSTRUCTIONS

You may have access to tools that you can use to fetch information or perform actions. You must use these tools in the following situations:

1. When the request requires up-to-date information.
2. When the request requires specific data that you do not have in your knowledge base.
3. When the request involves actions that you cannot perform without tools.

Always prioritize using tools to provide the most accurate and helpful response. If tools are not available, inform the user that you cannot perform the requested action at the moment."""
z
FROM {__FILE_LOCATION__}
TEMPLATE """[INST] {{ if .System }}{{ .System }} {{ end }}{{ .Prompt }} [/INST] {{ .Response }}"""
PARAMETER stop "[INST]"
PARAMETER stop "[/INST]"
a  
FROM {__FILE_LOCATION__}
TEMPLATE """
{{- range $i, $_ := .Messages }}
{{- if eq .Role "user" }}
{{- if and $.Tools (le (len (slice $.Messages $i)) 2) }}[AVAILABLE_TOOLS]{{ $.Tools }}[/AVAILABLE_TOOLS]
{{- end }}[INST]{{ if and $.System (eq (len (slice $.Messages $i)) 1) }}{{ $.System }}

{{ end }}{{ .Content }}[/INST]
{{- else if eq .Role "assistant" }}
{{- if .Content }} {{ .Content }}{{ if not (eq (len (slice $.Messages $i)) 1) }}</s>{{ end }}
{{- else if .ToolCalls }}[TOOL_CALLS][
{{- range .ToolCalls }}{"name": "{{ .Function.Name }}", "arguments": {{ .Function.Arguments }}}
{{- end }}]</s>
{{- end }}
{{- else if eq .Role "tool" }}[TOOL_RESULTS]{"content": {{ .Content }}}[/TOOL_RESULTS]
{{- end }}
{{- end }}"""
PARAMETER stop "[INST]"
PARAMETER stop "[/INST]"
a  
FROM {__FILE_LOCATION__}
TEMPLATE """
{{- if .Suffix }}[SUFFIX]{{ .Suffix }}[PREFIX] {{ .Prompt }}
{{- else if .Messages }}
{{- range $index, $_ := .Messages }}
{{- if eq .Role "user" }}[INST] {{ if and $.System (eq (len (slice $.Messages $index)) 1) }}{{ $.System }}

{{ end }}{{ .Content }}[/INST]
{{- else if eq .Role "assistant" }} {{ .Content }}</s>
{{- end }}
{{- end }}
{{- else }}[INST] {{ if .System }}{{ .System }}

{{ end }}{{ .Prompt }} [/INST]
{{- end }} {{ .Response }}
{{- if .Response }}</s>
{{- end }}
"""
PARAMETER stop "[INST]"
PARAMETER stop "[/INST]"
PARAMETER stop "[PREFIX]"
PARAMETER stop "[MIDDLE]"
PARAMETER stop "[SUFFIX]"
a  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- $lastUserIndex := -1 }}
{{- range $index, $_ := .Messages }}
{{- if eq .Role "user" }}{{ $lastUserIndex = $index }}{{ end }}
{{- end }}
{{- range $index, $_ := .Messages }}
{{- if eq .Role "system" }}[SYSTEM_PROMPT]{{ .Content }}[/SYSTEM_PROMPT]
{{- else if eq .Role "user" }}
{{- if and (eq $lastUserIndex $index) $.Tools }}[AVAILABLE_TOOLS]{{ $.Tools }}[/AVAILABLE_TOOLS]
{{- end }}[INST]{{ .Content }}[/INST]
{{- else if eq .Role "assistant" }}
{{- if .Content }}{{ .Content }}
{{- if not (eq (len (slice $.Messages $index)) 1) }}</s>
{{- end }}
{{- else if .ToolCalls }}[TOOL_CALLS][
{{- range .ToolCalls }}{"name": "{{ .Function.Name }}", "arguments": {{ .Function.Arguments }}}
{{- end }}]</s>
{{- end }}
{{- else if eq .Role "tool" }}[TOOL_RESULTS]{"content": {{ .Content }}}[/TOOL_RESULTS]
{{- end }}
{{- end }}"""
SYSTEM """You are Devstral, a helpful agentic model trained by Mistral AI and using the OpenHands scaffold. You can interact with a computer to solve tasks.

<ROLE>
Your primary role is to assist users by executing commands, modifying code, and solving technical problems effectively. You should be thorough, methodical, and prioritize quality over speed.
* If the user asks a question, like "why is X happening", don't try to fix the problem. Just give an answer to the question.
</ROLE>

<EFFICIENCY>
* Each action you take is somewhat expensive. Wherever possible, combine multiple actions into a single action, e.g. combine multiple bash commands into one, using sed and grep to edit/view multiple files at once.
* When exploring the codebase, use efficient tools like find, grep, and git commands with appropriate filters to minimize unnecessary operations.
</EFFICIENCY>

<FILE_SYSTEM_GUIDELINES>
* When a user provides a file path, do NOT assume it's relative to the current working directory. First explore the file system to locate the file before working on it.
* If asked to edit a file, edit the file directly, rather than creating a new file with a different filename.
* For global search-and-replace operations, consider using `sed` instead of opening file editors multiple times.
</FILE_SYSTEM_GUIDELINES>

<CODE_QUALITY>
* Write clean, efficient code with minimal comments. Avoid redundancy in comments: Do not repeat information that can be easily inferred from the code itself.
* When implementing solutions, focus on making the minimal changes needed to solve the problem.
* Before implementing any changes, first thoroughly understand the codebase through exploration.
* If you are adding a lot of code to a function or file, consider splitting the function or file into smaller pieces when appropriate.
</CODE_QUALITY>

<VERSION_CONTROL>
* When configuring git credentials, use "openhands" as the user.name and "openhands@all-hands.dev" as the user.email by default, unless explicitly instructed otherwise.
* Exercise caution with git operations. Do NOT make potentially dangerous changes (e.g., pushing to main, deleting repositories) unless explicitly asked to do so.
* When committing changes, use `git status` to see all modified files, and stage all files necessary for the commit. Use `git commit -a` whenever possible.
* Do NOT commit files that typically shouldn't go into version control (e.g., node_modules/, .env files, build directories, cache files, large binaries) unless explicitly instructed by the user.
* If unsure about committing certain files, check for the presence of .gitignore files or ask the user for clarification.
</VERSION_CONTROL>

<PULL_REQUESTS>
* When creating pull requests, create only ONE per session/issue unless explicitly instructed otherwise.
* When working with an existing PR, update it with new commits rather than creating additional PRs for the same issue.
* When updating a PR, preserve the original PR title and purpose, updating description only when necessary.
</PULL_REQUESTS>

<PROBLEM_SOLVING_WORKFLOW>
1. EXPLORATION: Thoroughly explore relevant files and understand the context before proposing solutions
2. ANALYSIS: Consider multiple approaches and select the most promising one
3. TESTING:
   * For bug fixes: Create tests to verify issues before implementing fixes
   * For new features: Consider test-driven development when appropriate
   * If the repository lacks testing infrastructure and implementing tests would require extensive setup, consult with the user before investing time in building testing infrastructure
   * If the environment is not set up to run tests, consult with the user first before investing time to install all dependencies
4. IMPLEMENTATION: Make focused, minimal changes to address the problem
5. VERIFICATION: If the environment is set up to run tests, test your implementation thoroughly, including edge cases. If the environment is not set up to run tests, consult with the user first before investing time to run tests.
</PROBLEM_SOLVING_WORKFLOW>

<SECURITY>
* Only use GITHUB_TOKEN and other credentials in ways the user has explicitly requested and would expect.
* Use APIs to work with GitHub or other platforms, unless the user asks otherwise or your task requires browsing.
</SECURITY>

<ENVIRONMENT_SETUP>
* When user asks you to run an application, don't stop if the application is not installed. Instead, please install the application and run the command again.
* If you encounter missing dependencies:
  1. First, look around in the repository for existing dependency files (requirements.txt, pyproject.toml, package.json, Gemfile, etc.)
  2. If dependency files exist, use them to install all dependencies at once (e.g., `pip install -r requirements.txt`, `npm install`, etc.)
  3. Only install individual packages directly if no dependency files are found or if only specific packages are needed
* Similarly, if you encounter missing dependencies for essential tools requested by the user, install them when possible.
</ENVIRONMENT_SETUP>

<TROUBLESHOOTING>
* If you've made repeated attempts to solve a problem but tests still fail or the user reports it's still broken:
  1. Step back and reflect on 5-7 different possible sources of the problem
  2. Assess the likelihood of each possible cause
  3. Methodically address the most likely causes, starting with the highest probability
  4. Document your reasoning process
* When you run into any major issue while executing a plan from the user, please don't try to directly work around it. Instead, propose a new plan and confirm with the user before proceeding.
</TROUBLESHOOTING>"""
aO  
FROM {__FILE_LOCATION__}
TEMPLATE """
{{- range $i, $_ := .Messages }}
{{- $last := eq (len (slice $.Messages $i)) 1}}
{{- if eq .Role "system" }}[SYSTEM_PROMPT]{{ .Content }}[/SYSTEM_PROMPT]
{{- else if eq .Role "user" }}
{{- if and (le (len (slice $.Messages $i)) 2) $.Tools }}[AVAILABLE_TOOLS]{{ $.Tools }}[/AVAILABLE_TOOLS]
{{- end }}[INST]{{ .Content }}[/INST]
{{- else if eq .Role "assistant" }}
{{- if and $.IsThinkSet (and $last .Thinking) -}}
<think>
{{ .Thinking }}
</think>
{{ end }}
{{- if .Content }}{{ .Content }}
{{- end }}
{{- if .ToolCalls }}{{ range $i, $_ := .ToolCalls }}[TOOL_CALLS]{{ .Function.Name }}[CALL_ID]{{ $i }}[ARGS]{{ .Function.Arguments }}{{ end }}
{{- end }}
{{- if not (eq (len (slice $.Messages $i)) 1) }}</s>
{{- end }}
{{- else if eq .Role "tool" }}[TOOL_RESULTS]0[TOOL_CONTENT]{{ .Content }}[/TOOL_RESULTS]
{{- end }}
{{- if and $last (ne .Role "assistant") }}{{ if and $.IsThinkSet (not $.Think) -}}<think>
</think>
{{ end }}
{{- end }}
{{- end }}"""
PARAMETER temperature 0.7
PARAMETER top_p 0.95
SYSTEM """A user will ask you to solve a task. You should first draft your thinking process (inner monologue) until you have derived the final answer. Afterwards, write a self-contained summary of your thoughts (i.e. your summary should be succinct but contain all the critical steps you needed to reach the conclusion). You should use Markdown and Latex to format your response. Write both your thoughts and summary in the same language as the task posed by the user.

Your thinking process must follow the template below:
<think>
Your thoughts or/and draft, like working through an exercise on scratch paper. Be as casual and as long as you want until you are confident to generate a correct answer.
</think>

Here, provide a concise summary that reflects your reasoning and presents a clear final answer to the user.

Problem:"""
mistralzmistral-v03zmistral-smallzmistral-small-31zmistral-small-32mixtralzmistral-nemodevstral	magistral	codestralz
FROM {__FILE_LOCATION__}
TEMPLATE """[INST] <<SYS>>{{ .System }}<</SYS>>

{{ .Prompt }} [/INST]"""
PARAMETER stop "{__EOS_TOKEN__}"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
llamaz
FROM {__FILE_LOCATION__}
TEMPLATE """{{ if .System }}{{ .System }} {{ end }}{{ if .Prompt }}USER: {{ .Prompt }} {{ end }}ASSISTANT: {{ .Response }} {__EOS_TOKEN__}"""
PARAMETER stop "{__EOS_TOKEN__}"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
vicunaa  
FROM {__FILE_LOCATION__}
TEMPLATE """{{ if .System }}{{ .System }}
{{ end }}{{ if .Prompt }}### Human: {{ .Prompt }}
{{ end }}### Assistant: {{ .Response }}{__EOS_TOKEN__}
"""
PARAMETER stop "{__EOS_TOKEN__}"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
SYSTEM """A chat between a curious human and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the human's questions."""

vicuna_oldz
vicuna olda  
FROM {__FILE_LOCATION__}
TEMPLATE """{{ if .System }}{{ .System }}

{{ end }}{{ if .Prompt }}### Instruction:
{{ .Prompt }}{{ end }}

### Response:
{{ .Response }}{__EOS_TOKEN__}

"""
PARAMETER stop "{__EOS_TOKEN__}"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
SYSTEM """Below are some instructions that describe some tasks. Write responses that appropriately complete each request."""
alpacaa\  
FROM {__FILE_LOCATION__}
TEMPLATE """<start_of_turn>user
{{ if .System }}{{ .System }} {{ end }}{{ .Prompt }}<end_of_turn>
<start_of_turn>model
{{ .Response }}<end_of_turn>
"""
PARAMETER repeat_penalty 1
PARAMETER stop "<start_of_turn>"
PARAMETER stop "<end_of_turn>"
PARAMETER penalize_newline false
PARAMETER temperature 1.5
PARAMETER min_p 0.1
gemmaa  
FROM {__FILE_LOCATION__}
TEMPLATE """{{ if .System }}<|im_start|>system
{{ .System }}<|im_end|>
{{ end }}{{ if .Prompt }}<|im_start|>user
{{ .Prompt }}<|im_end|>
{{ end }}<|im_start|>assistant
{{ .Response }}<|im_end|>
"""
PARAMETER repeat_penalty 1
PARAMETER stop "<|im_start|>"
PARAMETER stop "<|im_end|>"
PARAMETER penalize_newline false
PARAMETER temperature 1.5
PARAMETER min_p 0.1
gemma_chatmlzPARAMETER num_ctx 4096
gemma2gemma2_chatmla  
FROM {__FILE_LOCATION__}
TEMPLATE """{{ if .System }}<|start_header_id|>system<|end_header_id|>

{{ .System }}<|eot_id|>{{ end }}{{ if .Prompt }}<|start_header_id|>user<|end_header_id|>

{{ .Prompt }}<|eot_id|>{{ end }}<|start_header_id|>assistant<|end_header_id|>

{{ .Response }}<|eot_id|>"""
PARAMETER num_keep 24
PARAMETER stop "<|start_header_id|>"
PARAMETER stop "<|end_header_id|>"
PARAMETER stop "<|eot_id|>"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
zllama-3llama3a?  
FROM {__FILE_LOCATION__}
TEMPLATE """{{ if .System }}<|system|>
{{ .System }}<|end|>
{{ end }}{{ if .Prompt }}<|user|>
{{ .Prompt }}<|end|>
{{ end }}<|assistant|>
{{ .Response }}<|end|>
"""
PARAMETER stop "<|end|>"
PARAMETER stop "<|user|>"
PARAMETER stop "<|assistant|>"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
zphi-3zphi-35zphi-3.5au  
FROM {__FILE_LOCATION__}
TEMPLATE """{{ if .Messages }}
{{- if or .System .Tools }}<|start_header_id|>system<|end_header_id|>
{{- if .System }}

{{ .System }}
{{- end }}
{{- if .Tools }}

You are a helpful assistant with tool calling capabilities. When you receive a tool call response, use the output to format an answer to the original use question.
{{- end }}
{{- end }}<|eot_id|>
{{- range $i, $_ := .Messages }}
{{- $last := eq (len (slice $.Messages $i)) 1 }}
{{- if eq .Role "user" }}<|start_header_id|>user<|end_header_id|>
{{- if and $.Tools $last }}

Given the following functions, please respond with a JSON for a function call with its proper arguments that best answers the given prompt.

Respond in the format {"name": function name, "parameters": dictionary of argument name and its value}. Do not use variables.

{{ $.Tools }}
{{- end }}

{{ .Content }}<|eot_id|>{{ if $last }}<|start_header_id|>assistant<|end_header_id|>

{{ end }}
{{- else if eq .Role "assistant" }}<|start_header_id|>assistant<|end_header_id|>
{{- if .ToolCalls }}

{{- range .ToolCalls }}{"name": "{{ .Function.Name }}", "parameters": {{ .Function.Arguments }}}{{ end }}
{{- else }}

{{ .Content }}{{ if not $last }}<|eot_id|>{{ end }}
{{- end }}
{{- else if eq .Role "tool" }}<|start_header_id|>ipython<|end_header_id|>

{{ .Content }}<|eot_id|>{{ if $last }}<|start_header_id|>assistant<|end_header_id|>

{{ end }}
{{- end }}
{{- end }}
{{- else }}
{{- if .System }}<|start_header_id|>system<|end_header_id|>

{{ .System }}<|eot_id|>{{ end }}{{ if .Prompt }}<|start_header_id|>user<|end_header_id|>

{{ .Prompt }}<|eot_id|>{{ end }}<|start_header_id|>assistant<|end_header_id|>

{{ end }}{{ .Response }}{{ if .Response }}<|eot_id|>{{ end }}"""
PARAMETER stop "<|start_header_id|>"
PARAMETER stop "<|end_header_id|>"
PARAMETER stop "<|eot_id|>"
PARAMETER stop "<|eom_id|>"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
aS  
FROM {__FILE_LOCATION__}
TEMPLATE """
{{ if .Messages }}
{{- if or .System .Tools }}<|start_header_id|>system<|end_header_id|>
{{- if .System }}

{{ .System }}
{{- end }}
{{- if .Tools }}

You are a function calling AI model. You may call one or more functions to assist with the user query. Don't make assumptions about what values to plug into function. The user may use the terms function calling or tool use interchangeably.

Here are the available functions:
<tools>{{ json .Tools }}</tools>

For each function call return a json object with function name and arguments within <tool_call></tool_call> XML tags in the format:
<tool_call>{"tool_name": <function-name>, "tool_arguments": <args-dict>}</tool_call>
{{- end }}
{{- end }}<|eot_id|>
{{- range $i, $_ := .Messages }}
{{- $last := eq (len (slice $.Messages $i)) 1 }}
{{- if eq .Role "user" }}<|start_header_id|>user<|end_header_id|>

{{ .Content }}<|eot_id|>{{ if $last }}<|start_header_id|>assistant<|end_header_id|>
{{ end }}
{{- else if eq .Role "assistant" }}<|start_header_id|>assistant<|end_header_id|>
{{- if .ToolCalls }}

{{- range .ToolCalls }}{"name": "{{ .Function.Name }}", "parameters": {{ .Function.Arguments }}}{{ end }}
{{- else }}

{{ .Content }}{{ if not $last }}<|eot_id|>{{ end }}
{{- end }}
{{- else if eq .Role "tool" }}<|start_header_id|>ipython<|end_header_id|>

{{ .Content }}<|eot_id|>{{ if $last }}<|start_header_id|>assistant<|end_header_id|>
{{ end }}
{{- end }}
{{- end }}
{{- else }}
{{- if .System }}<|start_header_id|>system<|end_header_id|>

{{ .System }}<|eot_id|>{{ end }}{{ if .Prompt }}<|start_header_id|>user<|end_header_id|>

{{ .Prompt }}<|eot_id|>{{ end }}<|start_header_id|>assistant<|end_header_id|>

{{ end }}{{ .Response }}{{ if .Response }}<|eot_id|>{{ end }}
"""
PARAMETER stop "<|start_header_id|>"
PARAMETER stop "<|end_header_id|>"
PARAMETER stop "<|eot_id|>"
a  
FROM {__FILE_LOCATION__}
TEMPLATE """<|start_header_id|>system<|end_header_id|>

{{ if .Tools }}You have access to the following functions. To call a function, please respond with JSON for a function call. Respond in the format {"name": function name, "parameters": dictionary of argument name and its value}. Do not use variables.

{{ range .Tools }}{{ . }}

{{ end }}
{{- end }}{{ .System }}<|eot_id|>
{{- range $i, $_ := .Messages }}
{{- $isLastMessage := eq (len (slice $.Messages $i)) 1 -}}
{{- if eq .Role "system" }}
{{- else if eq .Role "assistant" }}<|start_header_id|>assistant<|end_header_id|>

{{ if .Content }}{{ .Content }}
{{- else if .ToolCalls }}
{{- range .ToolCalls }}{"name": "{{ .Function.Name }}", "parameters": {{ .Function.Arguments }} }
{{- end }}
{{- end }}
{{- if not $isLastMessage }}<|eot_id|>
{{- end }}
{{- else if eq .Role "tool" }}<|start_header_id|>ipython<|end_header_id|>

{{ .Content }}<|eot_id|>
{{- if $isLastMessage }}<|start_header_id|>assistant<|end_header_id|>

{{ end }}
{{- else }}<|start_header_id|>{{ .Role }}<|end_header_id|>

{{ .Content }}<|eot_id|>
{{- if $isLastMessage }}<|start_header_id|>assistant<|end_header_id|>

{{ end }}
{{- end }}
{{- end }}
"""
PARAMETER stop "<|start_header_id|>"
PARAMETER stop "<|end_header_id|>"
PARAMETER stop "<|eot_id|>"
ae  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- range $index, $_ := .Messages }}<|start_header_id|>{{ .Role }}<|end_header_id|>

{{ .Content }}
{{- if gt (len (slice $.Messages $index)) 1 }}<|eot_id|>
{{- else if ne .Role "assistant" }}<|eot_id|><|start_header_id|>assistant<|end_header_id|>

{{ end }}
{{- end }}"""
PARAMETER temperature 0.6
PARAMETER top_p 0.9
z	llama-3.1zllama-31zllama-31-nemotronzllama-31-stormzllama-32-vision)	llama-3.2	llama-3.3zllama-32zllama-33a  
FROM {__FILE_LOCATION__}
TEMPLATE """<|system|>
{{ .System }}</s>
<|user|>
{{ .Prompt }}</s>
<|assistant|>"""
PARAMETER stop "<|system|>"
PARAMETER stop "<|user|>"
PARAMETER stop "<|assistant|>"
PARAMETER "</s>"
SYSTEM """You are a helpful AI assistant."""
	tinyllamaa  
FROM {__FILE_LOCATION__}
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 "<|endoftext|>"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
SYSTEM """You are Qwen, created by Alibaba Cloud. You are a helpful assistant."""
a  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- if .Suffix }}<|fim_prefix|>{{ .Prompt }}<|fim_suffix|>{{ .Suffix }}<|fim_middle|>
{{- else 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>:
<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> with NO other text. Do not include any backticks or ```json.
<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 }}"""
SYSTEM """You are Qwen, created by Alibaba Cloud. You are a helpful assistant."""
aX  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- if .System -}}
<|im_start|>system
{{ .System }}<|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 }}{{ if not $last }}<|im_end|>
{{- else -}}<|im_end|>{{- end -}}
{{- end -}}
{{- end -}}
{{- if and (ne .Role "assistant") $last }}
<|im_start|>assistant
{{ end -}}
{{- end }}"""
PARAMETER temperature 0.0001
SYSTEM """You are a helpful assistant."""
a=  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- range $i, $_ := .Messages }}
{{- $last := eq (len (slice $.Messages $i)) 1 -}}
<|im_start|>{{ .Role }}<|im_sep|>
{{ .Content }}{{ if not $last }}<|im_end|>
{{ end }}
{{- if and (ne .Role "assistant") $last }}<|im_end|>
<|im_start|>assistant<|im_sep|>
{{ end }}
{{- end }}"""
zqwen-25zqwen-25-coderz
qwen-25-vlopenthinkerqwen-2z{{ if .System }}<|im_start|><|system|><|im_sep|>{{ .System }}<|im_end|>{{ end }}{{ if .Prompt }}<|im_start|><|user|><|im_sep|>{{ .Prompt }}<|im_end|>{{ end }}<|im_start|><|assistant|><|im_sep|>{{ .Response }}<|im_end|>z&
FROM {__FILE_LOCATION__}
TEMPLATE """z"""
PARAMETER stop "<|im_end|>"
PARAMETER stop "<|im_start|>"
PARAMETER stop "<|im_sep|>"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
a  
FROM {__FILE_LOCATION__}
TEMPLATE """
{{- range $i, $_ := .Messages }}
{{- $last := eq (len (slice $.Messages $i)) 1 -}}
<|im_start|>{{ .Role }}<|im_sep|>
{{ .Content }}{{ if not $last }}<|im_end|>
{{ end }}
{{- if and (ne .Role "assistant") $last }}<|im_end|>
<|im_start|>assistant<|im_sep|>
{{ end }}
{{- end }}"""
PARAMETER stop "<|im_start|>"
PARAMETER stop "<|im_end|>"
PARAMETER stop "<|im_sep|>"
a  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- if or .System .Tools }}<|system|>{{ if .System }}{{ .System }}{{ end }}
{{- if .Tools }}{{ if not .System }}You are a helpful assistant with some tools.{{ end }}<|tool|>{{ .Tools }}<|/tool|><|end|>
{{- end }}
{{- end }}
{{- range $i, $_ := .Messages }}
{{- $last := eq (len (slice $.Messages $i)) 1 -}}
{{- if ne .Role "system" }}<|{{ .Role }}|>{{ .Content }}
{{- if .ToolCalls }}<|tool_call|>[{{ range .ToolCalls }}{"name":"{{ .Function.Name }}","arguments":{{ .Function.Arguments }}{{ end }}]<|/tool_call|>
{{- end }}
{{- if not $last }}<|end|>
{{- end }}
{{- if and (ne .Role "assistant") $last }}<|end|><|assistant|>{{ end }}
{{- end }}
{{- end }}"""
a  
FROM {__FILE_LOCATION__}
TEMPLATE """
{{- if .System }}<|system|>{{ .System }}
{{- end }}
{{- range $i, $_ := .Messages }}
{{- $last := eq (len (slice $.Messages $i)) 1 -}}
{{- if ne .Role "system" }}<|{{ .Role }}|>{{ .Content }}
{{- if not $last }}<|end|>
{{- end }}
{{- if and (ne .Role "assistant") $last }}<|end|><|assistant|>{{ end }}
{{- end }}
{{- end }}"""
SYSTEM """Your name is Phi, an AI math expert developed by Microsoft."""
zphi-4zphi-4-reasoningz
phi-4-minizphi-4-mini-reasoninga8  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- range $i, $_ := .Messages }}
{{- $last := eq (len (slice $.Messages $i)) 1 }}
{{- if or (eq .Role "user") (eq .Role "system") }}<start_of_turn>user
{{ .Content }}<end_of_turn>
{{ if $last }}<start_of_turn>model
{{ end }}
{{- else if eq .Role "assistant" }}<start_of_turn>model
{{ .Content }}{{ if not $last }}<end_of_turn>
{{ end }}
{{- end }}
{{- end }}"""
PARAMETER stop "<end_of_turn>"
PARAMETER stop "<eos>"
PARAMETER temperature 1.0
PARAMETER min_p 0.0
PARAMETER top_k 64
PARAMETER top_p 0.95
PARAMETER num_predict 32768
aN  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- $systemPromptAdded := false }}
{{- range $i, $_ := .Messages }}
{{- $last := eq (len (slice $.Messages $i)) 1 }}
{{- if eq .Role "user" }}<start_of_turn>user
{{- if (and (not $systemPromptAdded) $.System) }}
{{- $systemPromptAdded = true }}
{{ $.System }}
{{ end }}
{{ .Content }}<end_of_turn>
{{ if $last }}<start_of_turn>model
{{ end }}
{{- else if eq .Role "assistant" }}<start_of_turn>model
{{ .Content }}{{ if not $last }}<end_of_turn>
{{ end }}
{{- end }}
{{- end }}
"""
PARAMETER stop "<end_of_turn>"
PARAMETER top_k 64
PARAMETER top_p 0.95
zgemma-3gemma3zgemma3-270ma  
FROM {__FILE_LOCATION__}
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
z
<|im_end|>zqwen-3qwen3a  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- range $i, $_ := .Messages }}
{{- $last := eq (len (slice $.Messages $i)) 1 }}
{{- if or (eq .Role "user") (eq .Role "system") }}<start_of_turn>user
{{ .Content }}<end_of_turn>
{{ if $last }}<start_of_turn>model
{{ end }}
{{- else if eq .Role "assistant" }}<start_of_turn>model
{{ .Content }}{{ if not $last }}<end_of_turn>
{{ end }}
{{- end }}
{{- end }}"""
zgemma-3ngemma3nu%  
FROM {__FILE_LOCATION__}
TEMPLATE """<|start|>system<|message|>You are ChatGPT, a large language model trained by OpenAI.
Knowledge cutoff: 2024-06
Current date: {{ currentDate }}
{{- if and .IsThinkSet .Think (ne .ThinkLevel "") }}

Reasoning: {{ .ThinkLevel }}
{{- else if or (not .IsThinkSet) (and .IsThinkSet .Think) }}

Reasoning: medium
{{- end }}

{{- $hasNonBuiltinTools := false }}
{{- if .Tools -}}
{{- $hasBrowserSearch := false }}
{{- $hasBrowserOpen := false }}
{{- $hasBrowserFind := false }}
{{- $hasPython := false }}
  {{- range .Tools }}
    {{- if eq .Function.Name "browser.search" -}}{{- $hasBrowserSearch = true -}}
    {{- else if eq .Function.Name "browser.open" -}}{{- $hasBrowserOpen = true -}}
    {{- else if eq .Function.Name "browser.find" -}}{{- $hasBrowserFind = true -}}
    {{- else if eq .Function.Name "python" -}}{{- $hasPython = true -}}
    {{- else }}{{ $hasNonBuiltinTools = true -}}
    {{- end }}
  {{- end }}
{{- if or $hasBrowserSearch $hasBrowserOpen $hasBrowserFind $hasPython }}

# Tools
{{- if or $hasBrowserSearch $hasBrowserOpen $hasBrowserFind }}

## browser

// Tool for browsing.
// The `cursor` appears in brackets before each browsing display: `[{cursor}]`.
// Cite information from the tool using the following format:
// `【{cursor}†L{line_start}(-L{line_end})?】`, for example: `【6†L9-L11】` or `【8†L3】`.
// Do not quote more than 10 words directly from the tool output.
// sources=web (default: web)
namespace browser {
{{- if $hasBrowserSearch }}

// Searches for information related to `query` and displays `topn` results.
type search = (_: {
query: string,
topn?: number, // default: 10
source?: string,
}) => any;
{{- end }}
{{- if $hasBrowserOpen }}

// Opens the link `id` from the page indicated by `cursor` starting at line number `loc`, showing `num_lines` lines.
// Valid link ids are displayed with the formatting: `【{id}†.*】`.
// If `cursor` is not provided, the most recent page is implied.
// If `id` is a string, it is treated as a fully qualified URL associated with `source`.
// If `loc` is not provided, the viewport will be positioned at the beginning of the document or centered on the most relevant passage, if available.
// Use this function without `id` to scroll to a new location of an opened page.
type open = (_: {
id?: number | string, // default: -1
cursor?: number, // default: -1
loc?: number, // default: -1
num_lines?: number, // default: -1
view_source?: boolean, // default: false
source?: string,
}) => any;
{{- end }}
{{- if $hasBrowserFind }}

// Finds exact matches of `pattern` in the current page, or the page given by `cursor`.
type find = (_: {
pattern: string,
cursor?: number, // default: -1
}) => any;
{{- end }}

} // namespace browser
{{- end }}{{/* end if has browser tools */}}
{{- if $hasPython }}

## python

Use this tool to execute Python code in your chain of thought. The code will not be shown to the user. This tool should be used for internal reasoning, but not for code that is intended to be visible to the user (e.g. when creating plots, tables, or files).

When you send a message containing Python code to python, it will be executed in a stateful Jupyter notebook environment. python will respond with the output of the execution or time out after 120.0 seconds. The drive at '/mnt/data' can be used to save and persist user files. Internet access for this session is UNKNOWN. Depends on the cluster.
{{- end }}{{/* end if hasPython */}}
{{- end }}{{/* end if has any built-in tools */}}
{{- end }}{{/* end if .Tools */}}

# Valid channels: analysis, commentary, final. Channel must be included for every message.{{ if $hasNonBuiltinTools }}
Calls to these tools must go to the commentary channel: 'functions'.
{{- end -}}<|end|>{{/* end of system */ -}}
{{- if or $hasNonBuiltinTools .System -}}
<|start|>developer<|message|>{{- if $hasNonBuiltinTools }}# Tools

## functions

namespace functions {
{{- range .Tools }}
{{- if not (or (eq .Function.Name "browser.search") (eq .Function.Name "browser.open") (eq .Function.Name "browser.find") (eq .Function.Name "python")) }}
{{if .Function.Description }}
// {{ .Function.Description }}
{{- end }}
{{- if and .Function.Parameters.Properties (gt (len .Function.Parameters.Properties) 0) }}
type {{ .Function.Name }} = (_: {
{{- range $name, $prop := .Function.Parameters.Properties }}
{{- if $prop.Description }}
  // {{ $prop.Description }}
{{- end }}
  {{ $name }}: {{ if gt (len $prop.Type) 1 }}{{ range $i, $t := $prop.Type }}{{ if $i }} | {{ end }}{{ $t }}{{ end }}{{ else }}{{ index $prop.Type 0 }}{{ end }},
{{- end }}
}) => any;
{{- else }}
type {{ .Function.Name }} = () => any;
{{- end }}
{{- end }}{{/* end if not browser tool */}}
{{- end }}{{/* end of range .Tools */}}

} // namespace functions
{{- end }}{{/* end if hasNonBuiltinTools */}}
{{- if .System}}

# Instructions

{{ .System }}
{{- end -}}
<|end|>
{{- end -}}
{{- /* Find the index of the last user message */ -}}
{{- $lastUserIdx := -1 }}
{{- $prefillingContent := false }}
{{- $prefillingThinkingOnly := false }}
{{- range $i, $msg := .Messages }}
  {{- $last := eq (len (slice $.Messages $i)) 1 -}}
  {{- if eq $msg.Role "user" }}
    {{- $lastUserIdx = $i }}
  {{- end -}}
  {{- if and $last (eq $msg.Role "assistant") (gt (len $msg.Content) 0) }}
    {{- $prefillingContent = true }}
  {{- else if and $last (eq $msg.Role "assistant") (gt (len $msg.Thinking) 0) }}
    {{- $prefillingThinkingOnly = true }}
  {{- end }}
{{- end -}}
{{- /* Now render messages */ -}}
{{- range $i, $msg := .Messages }}
  {{- $last := eq (len (slice $.Messages $i)) 1 -}}
  {{- if (ne $msg.Role "system") -}}
    {{- if eq $msg.Role "tool" -}}
      {{- if or (eq $msg.ToolName "python") (eq $msg.ToolName "browser.search") (eq $msg.ToolName "browser.open") (eq $msg.ToolName "browser.find") -}}
        <|start|>{{ $msg.ToolName }} to=assistant<|message|>{{ $msg.Content }}<|end|>
      {{- else -}}
        <|start|>functions.{{ $msg.ToolName }} to=assistant<|message|>{{ $msg.Content }}<|end|>
      {{- end -}}
    {{- else if eq $msg.Role "assistant" -}}
      {{- if and $msg.Thinking (gt $i $lastUserIdx) -}}{{- /* Show thinking only after last user message */ -}}
      <|start|>assistant<|channel|>analysis<|message|>{{ $msg.Thinking }}{{- if not $prefillingThinkingOnly -}}<|end|>{{- end -}}
      {{- end -}}
      {{- if gt (len $msg.Content) 0 -}}
        <|start|>assistant<|channel|>final<|message|>{{ $msg.Content }}{{- if not $prefillingContent -}}<|end|>{{- end -}}
      {{- end -}}
      {{- if gt (len $msg.ToolCalls) 0 -}}
        {{- range $j, $toolCall := $msg.ToolCalls -}}
          {{- $isBuiltin := or (eq $toolCall.Function.Name "python") (eq $toolCall.Function.Name "browser.search") (eq $toolCall.Function.Name "browser.open") (eq $toolCall.Function.Name "browser.find") -}}
          <|start|>assistant<|channel|>{{ if $isBuiltin }}analysis{{ else }}commentary{{ end }} to={{ if not $isBuiltin}}functions.{{end}}{{ $toolCall.Function.Name }} <|constrain|>json<|message|>{{ $toolCall.Function.Arguments }}<|call|>
        {{- end -}}
      {{- end -}}
    {{- else if eq $msg.Role "user" -}}
      <|start|>{{ $msg.Role }}<|message|>{{ $msg.Content }}<|end|>
    {{- end }}
  {{- else }}
  {{- end }}
{{- end -}}
{{- if not (or $prefillingContent $prefillingThinkingOnly) -}}
<|start|>assistant
{{- end -}}"""
PARAMETER temperature 1.0
PARAMETER top_k 0
PARAMETER top_p 1.0
gpt-ossgptossa   
FROM {__FILE_LOCATION__}
TEMPLATE """
{{- $lastUserIdx := -1 -}}
{{- range $idx, $msg := .Messages -}}
{{- if eq $msg.Role "user" }}{{ $lastUserIdx = $idx }}{{ end -}}
{{- end }}
{{- 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 (and $.IsThinkSet (and .Thinking (or $last (gt $i $lastUserIdx)))) -}}
<think>{{ .Thinking }}</think>
{{ end -}}
{{ 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 }}
"""
qwen3-instructqwen3-thinkinga  
FROM {__FILE_LOCATION__}
TEMPLATE """{{ if .System }}GPT4 Correct System: {{ .System }}<|end_of_turn|>
{{ end }}{{ if .Prompt }}GPT4 Correct User: {{ .Prompt }}<|end_of_turn|>
{{ end }}GPT4 Correct Assistant: {{ .Response }}<|end_of_turn|>"""
PARAMETER stop "<|end_of_turn|>"
PARAMETER stop "GPT4 Correct User:"
PARAMETER stop "GPT4 Correct Assistant:"
PARAMETER stop "GPT4 Correct System:"
PARAMETER temperature 1.5
PARAMETER min_p 0.1
starlingz
FROM {__FILE_LOCATION__}
TEMPLATE """{{ if .System }}<|im_start|>system
{{ .System }}<|im_end|>
{{ end }}{{ if .Prompt }}<|im_start|>user
{{ .Prompt }}<|im_end|>
{{ end }}<|im_start|>assistant
{{ .Response }}<|im_end|>"""
yi-chataq  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- /*

------ MESSAGE PARSING ------

*/}}
{{- /*
Declare the prompt structure variables to be filled in from messages
*/}}
{{- $system := "" }}
{{- $documents := "" }}
{{- $documentCounter := 0 }}
{{- $thinking := false }}
{{- $citations := false }}
{{- $hallucinations := false }}
{{- $length := "" }}

{{- /*
Loop over messages and look for a user-provided system message and documents
*/ -}}
{{- range .Messages }}

    {{- /* User defined system prompt(s) */}}
    {{- if (eq .Role "system")}}
        {{- if (ne $system "") }}
            {{- $system = print $system " " }}
        {{- end}}
        {{- $system = print $system .Content }}
    {{- end}}

    {{- /*
    NOTE: Since Ollama collates consecutive roles, for control and documents, we
        work around this by allowing the role to contain a qualifier after the
        role string.
    */ -}}

    {{- /* Role specified thinking */ -}}
    {{- if (and (ge (len .Role) 7) (eq (slice .Role 0 7) "control")) }}
        {{- if (eq .Content "thinking")}}{{- $thinking = true }}{{- end}}
        {{- if (eq .Content "citations")}}{{- $citations = true }}{{- end}}
        {{- if (eq .Content "hallucinations")}}{{- $hallucinations = true }}{{- end}}
        {{- if (and (ge (len .Content) 7) (eq (slice .Content 0 7) "length "))}}
            {{- $length = print ` {"length": "` (slice .Content 7) `"}` }}
        {{- end}}
    {{- end}}

    {{- /* Role specified document */ -}}
    {{- if (and (ge (len .Role) 8) (eq (slice .Role 0 8) "document")) }}
        {{- if (ne $documentCounter 0)}}
            {{- $documents = print $documents " "}}
        {{- end}}
        {{- $identifier := $documentCounter}}
        {{- if (ge (len .Role) 9) }}
            {{- $identifier = (slice .Role 8)}}
        {{- end}}
        {{- $documents = print $documents "Document " $identifier "" .Content}}
        {{- $documentCounter = len (printf "a%*s" $documentCounter "")}}
    {{- end}}
{{- end}}

{{- /*
If no user message provided, build the default system message
*/ -}}
{{- if eq $system "" }}
    {{- $system = "Knowledge Cutoff Date: April 2024.You are Granite, developed by IBM."}}

    {{- /* Add Tools prompt */}}
    {{- if .Tools }}
        {{- $system = print $system " You are a helpful AI assistant with access to the following tools. When a tool is required to answer the user's query, respond with <|tool_call|> followed by a JSON list of tools used. If a tool does not exist in the provided list of tools, notify the user that you do not have the ability to fulfill the request." }}
    {{- end}}

    {{- /* Add documents prompt */}}
    {{- if $documents }}
        {{- if .Tools }}
            {{- $system = print $system " "}}
        {{- else }}
            {{- $system = print $system " "}}
        {{- end}}
        {{- $system = print $system "Write the response to the user's input by strictly aligning with the facts in the provided documents. If the information needed to answer the question is not available in the documents, inform the user that the question cannot be answered based on the available data." }}
        {{- if $citations}}
            {{- $system = print $system " In your response, use the symbols <co> and </co> to indicate when a fact comes from a document in the search result, e.g <co>0</co> for a fact from document 0. Afterwards, list all the citations with their corresponding documents in an ordered list."}}
        {{- end}}
        {{- if $hallucinations}}
            {{- $system = print $system "Finally, after the response is written, include a numbered list of sentences from the response that are potentially hallucinated and not based in the documents."}}
        {{- end}}
    {{- end}}

    {{- /* Prompt without tools or documents */}}
    {{- if (and (not .Tools) (not $documents)) }}
        {{- $system = print $system " You are a helpful AI assistant."}}
        {{- if $thinking}}
            {{- $system = print $system "Respond to every user query in a comprehensive and detailed way. You can write down your thought process before responding. Write your thoughts after 'Here is my thought process:' and write your response after 'Here is my response:' for each user query."}}
        {{- end}}
    {{- end}}

    {{- /* Add thinking prompt if no tools or documents */}}
    {{- if (and $thinking (not .Tools) (not $documents)) }}
        {{- $system = print $system " You are a helpful AI assistant.Respond to every user query in a comprehensive and detailed way. You can write down your thought process before responding. Write your thoughts after 'Here is my thought process:' and write your response after 'Here is my response:' for each user query."}}
    {{- end}}

{{- end}}
{{- /*

------ TEMPLATE EXPANSION ------

*/}}
{{- /* System Prompt */ -}}
<|start_of_role|>system<|end_of_role|>{{- $system }}<|end_of_text|>

{{- /* Tools */ -}}
{{- if .Tools }}
<|start_of_role|>tools<|end_of_role|>[
{{- range $index, $_ := .Tools }}
{{ . }}
{{- if and (ne (len (slice $.Tools $index)) 1) (gt (len $.Tools) 1) }},
{{- end}}
{{- end }}
]
{{- end}}

{{- /* Documents */ -}}
{{- if $documents }}
<|start_of_role|>documents<|end_of_role|>
{{ $documents }}<|end_of_text|>
{{- end}}

{{- /* Standard Messages */}}
{{- range $index, $_ := .Messages }}
{{- if (and
    (ne .Role "system")
    (or (lt (len .Role) 7) (ne (slice .Role 0 7) "control"))
    (or (lt (len .Role) 8) (ne (slice .Role 0 8) "document"))
)}}
<|start_of_role|>
{{- if eq .Role "tool" }}tool_response
{{- else }}{{ .Role }}
{{- end }}<|end_of_role|>
{{- if .Content }}{{ .Content }}
{{- else if .ToolCalls }}<|tool_call|>
{{- range .ToolCalls }}{"name": "{{ .Function.Name }}", "arguments": {{ .Function.Arguments }}}
{{- end }}
{{- end }}
{{- if eq (len (slice $.Messages $index)) 1 }}
{{- if eq .Role "assistant" }}
{{- else }}<|end_of_text|>
<|start_of_role|>assistant<|end_of_role|>
{{- end -}}
{{- else }}<|end_of_text|>
{{- end }}
{{- end }}
{{- end }}
"""
a  
FROM {__FILE_LOCATION__}
TEMPLATE """{{- /* Tools */ -}}
{{- if .Tools -}}
<|start_of_role|>available_tools<|end_of_role|>
{{- range $index, $_ := .Tools }}
{{- $last := eq (len (slice $.Tools $index)) 1 }}
{{ . }}
{{- if not $last }}
{{ end}}
{{- end -}}
<|end_of_text|>
{{ end }}

{{- /* System Prompt */ -}}
{{- if and (gt (len .Messages) 0) (eq (index .Messages 0).Role "system") -}}
<|system|>
{{(index .Messages 0).Content}}
{{- else -}}
<|system|>
A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions.
{{- end }}

{{- /*Main message loop*/ -}}
{{- range $index, $_ := .Messages }}
{{- $last := eq (len (slice $.Messages $index)) 1 }}
{{- if eq .Role "system" }}

{{- else if eq .Role "user" }}
<|user|>
{{.Content}}

{{- else if eq .Role "assistant" }}
<|assistant|>
{{- if .Content }}
{{.Content}}
<|end_of_text|>
{{ end }}

{{- else if eq .Role "assistant_tool_call" }}
<|start_of_role|>assistant<|end_of_role|><|tool_call|>{{.Content}}<|end_of_text|>

{{- else if eq .Role "tool_response" }}
<|start_of_role|>tool_response<|end_of_role|>{{.Content}}<|end_of_text|>
{{- end }}

{{- /* Add generation prompt */ -}}
{{ if $last }}
{{- if eq .Role "assistant" }}
{{- else }}
<|assistant|>
{{- end }}
{{- end }}
{{- end }}"""
PARAMETER num_ctx 16384
PARAMETER temperature 0
SYSTEM """A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions."""

granite-32granite-32-vision)z&unsloth/Phi-3.5-mini-instruct-bnb-4bitzunsloth/Phi-3.5-mini-instructzmicrosoft/Phi-3.5-mini-instruct)z'unsloth/Phi-3-mini-4k-instruct-bnb-4bitzunsloth/Phi-3-mini-4k-instructz microsoft/Phi-3-mini-4k-instructz)unsloth/Phi-3-medium-4k-instruct-bnb-4bitz unsloth/Phi-3-medium-4k-instructz"microsoft/Phi-3-medium-4k-instructz*unsloth/Phi-3-mini-4k-instruct-v0-bnb-4bitz!unsloth/Phi-3-mini-4k-instruct-v0)zunsloth/phi-4-unsloth-bnb-4bitzunsloth/phi-4zmicrosoft/phi-4zunsloth/phi-4-bnb-4bit)z(unsloth/phi-4-reasoning-unsloth-bnb-4bitzunsloth/phi-4-reasoningzmicrosoft/Phi-4-reasoningz unsloth/phi-4-reasoning-bnb-4bitz-unsloth/phi-4-reasoning-plus-unsloth-bnb-4bitzunsloth/phi-4-reasoning-pluszmicrosoft/Phi-4-reasoning-plusz%unsloth/phi-4-reasoning-plus-bnb-4bit)z,unsloth/Phi-4-mini-instruct-unsloth-bnb-4bitzunsloth/Phi-4-mini-instructzmicrosoft/Phi-4-mini-instructz$unsloth/Phi-4-mini-instruct-bnb-4bit)z-unsloth/phi-4-mini-reasoning-unsloth-bnb-4bitzunsloth/phi-4-mini-reasoningzmicrosoft/Phi-4-mini-reasoningz%unsloth/phi-4-mini-reasoning-bnb-4bit)z)unsloth/mistral-7b-instruct-v0.1-bnb-4bitz unsloth/mistral-7b-instruct-v0.1z"mistralai/Mistral-7B-Instruct-v0.1z)unsloth/mistral-7b-instruct-v0.2-bnb-4bitz unsloth/mistral-7b-instruct-v0.2z"mistralai/Mistral-7B-Instruct-v0.2)z)unsloth/mistral-7b-instruct-v0.3-bnb-4bitz unsloth/mistral-7b-instruct-v0.3z"mistralai/Mistral-7B-Instruct-v0.3z,unsloth/Mistral-Large-Instruct-2407-bnb-4bitz%mistralai/Mistral-Large-Instruct-2407)z,unsloth/Mistral-Small-Instruct-2409-bnb-4bitz#unsloth/Mistral-Small-Instruct-2409z%mistralai/Mistral-Small-Instruct-2409z8unsloth/Mistral-Small-24B-Instruct-2501-unsloth-bnb-4bitz'unsloth/Mistral-Small-24B-Instruct-2501z)mistralai/Mistral-Small-24B-Instruct-2501z0unsloth/Mistral-Small-24B-Instruct-2501-bnb-4bit)z<unsloth/Mistral-Small-3.1-24B-Instruct-2503-unsloth-bnb-4bitz+unsloth/Mistral-Small-3.1-24B-Instruct-2503z-mistralai/Mistral-Small-3.1-24B-Instruct-2503z4unsloth/Mistral-Small-3.1-24B-Instruct-2503-bnb-4bit)z<unsloth/Mistral-Small-3.2-24B-Instruct-2506-unsloth-bnb-4bitz+unsloth/Mistral-Small-3.2-24B-Instruct-2506z-mistralai/Mistral-Small-3.2-24B-Instruct-2506z4unsloth/Mistral-Small-3.2-24B-Instruct-2506-bnb-4bit)z3unsloth/Mixtral-8x7B-Instruct-v0.1-unsloth-bnb-4bitz"unsloth/Mixtral-8x7B-Instruct-v0.1z$mistralai/Mixtral-8x7B-Instruct-v0.1z+unsloth/Mixtral-8x7B-Instruct-v0.1-bnb-4bit)z+unsloth/Mistral-Nemo-Instruct-2407-bnb-4bitz"unsloth/Mistral-Nemo-Instruct-2407z$mistralai/Mistral-Nemo-Instruct-2407)zmistralai/Codestral-22B-v0.1z$mistral-community/Codestral-22B-v0.1)z,unsloth/Devstral-Small-2505-unsloth-bnb-4bitzunsloth/Devstral-Small-2505zmistralai/Devstral-Small-2505z$unsloth/Devstral-Small-2505-bnb-4bitz,unsloth/Devstral-Small-2507-unsloth-bnb-4bitzunsloth/Devstral-Small-2507zmistralai/Devstral-Small-2507z$unsloth/Devstral-Small-2507-bnb-4bit)z-unsloth/Magistral-Small-2506-unsloth-bnb-4bitzunsloth/Magistral-Small-2506zmistralai/Magistral-Small-2506z%unsloth/Magistral-Small-2506-bnb-4bitz-unsloth/Magistral-Small-2507-unsloth-bnb-4bitzunsloth/Magistral-Small-2507zmistralai/Magistral-Small-2507z%unsloth/Magistral-Small-2507-bnb-4bitz-unsloth/Magistral-Small-2509-unsloth-bnb-4bitzunsloth/Magistral-Small-2509zmistralai/Magistral-Small-2509z%unsloth/Magistral-Small-2509-bnb-4bit)zunsloth/tinyllama-chat-bnb-4bitzunsloth/tinyllama-chatz"TinyLlama/TinyLlama-1.1B-Chat-v1.0)	zunsloth/llama-2-7b-bnb-4bitzunsloth/llama-2-7bzmeta-llama/Llama-2-7b-hfzunsloth/llama-2-13b-bnb-4bitzunsloth/llama-2-13bzmeta-llama/Llama-2-13b-hfz unsloth/llama-2-7b-chat-bnb-4bitzunsloth/llama-2-7b-chatzmeta-llama/Llama-2-7b-chat-hf)z$unsloth/llama-3-8b-Instruct-bnb-4bitzunsloth/llama-3-8b-Instructz#meta-llama/Meta-Llama-3-8B-Instructz%unsloth/llama-3-70b-Instruct-bnb-4bitz$meta-llama/Meta-Llama-3-70B-Instruct)z3unsloth/Meta-Llama-3.1-8B-Instruct-unsloth-bnb-4bitz"unsloth/Meta-Llama-3.1-8B-Instructz%meta-llama/Meta-Llama-3.1-8B-Instructz+unsloth/Meta-Llama-3.1-8B-Instruct-bnb-4bitz.unsloth/Llama-3.1-8B-Instruct-unsloth-bnb-4bitzunsloth/Llama-3.1-8B-Instructz meta-llama/Llama-3.1-8B-Instructz&unsloth/Llama-3.1-8B-Instruct-bnb-4bitz-unsloth/Meta-Llama-3.1-405B-Instruct-bnb-4bitz'meta-llama/Meta-Llama-3.1-405B-Instructz,unsloth/Meta-Llama-3.1-70B-Instruct-bnb-4bitz#unsloth/Meta-Llama-3.1-70B-Instructz&meta-llama/Meta-Llama-3.1-70B-Instructz&unsloth/Hermes-3-Llama-3.1-8B-bnb-4bitzunsloth/Hermes-3-Llama-3.1-8Bz"NousResearch/Hermes-3-Llama-3.1-8Bz'unsloth/Hermes-3-Llama-3.1-70B-bnb-4bitzunsloth/Hermes-3-Llama-3.1-70Bz#NousResearch/Hermes-3-Llama-3.1-70Bz(unsloth/Hermes-3-Llama-3.1-405B-bnb-4bitz$NousResearch/Hermes-3-Llama-3.1-405Bz$unsloth/Llama-3.1-Tulu-3-8B-bnb-4bitzunsloth/Llama-3.1-Tulu-3-8Bzallenai/Llama-3.1-Tulu-3-8Bz%unsloth/Llama-3.1-Tulu-3-70B-bnb-4bitzunsloth/Llama-3.1-Tulu-3-70Bzallenai/Llama-3.1-Tulu-3-70B)z#unsloth/Llama-3.1-Storm-8B-bnb-4bitzunsloth/Llama-3.1-Storm-8Bz akjindal53244/Llama-3.1-Storm-8B)z0unsloth/Llama-3.1-Nemotron-70B-Instruct-bnb-4bitz'unsloth/Llama-3.1-Nemotron-70B-Instructz)nvidia/Llama-3.1-Nemotron-70B-Instruct-HFr   )z.unsloth/Llama-3.2-1B-Instruct-unsloth-bnb-4bitzunsloth/Llama-3.2-1B-Instructz meta-llama/Llama-3.2-1B-Instructz&unsloth/Llama-3.2-1B-Instruct-bnb-4bitz.unsloth/Llama-3.2-3B-Instruct-unsloth-bnb-4bitzunsloth/Llama-3.2-3B-Instructz meta-llama/Llama-3.2-3B-Instructz&unsloth/Llama-3.2-3B-Instruct-bnb-4bit)z6unsloth/Llama-3.2-11B-Vision-Instruct-unsloth-bnb-4bitz%unsloth/Llama-3.2-11B-Vision-Instructz(meta-llama/Llama-3.2-11B-Vision-Instructz.unsloth/Llama-3.2-11B-Vision-Instruct-bnb-4bitz.unsloth/Llama-3.2-90B-Vision-Instruct-bnb-4bitz%unsloth/Llama-3.2-90B-Vision-Instructz(meta-llama/Llama-3.2-90B-Vision-Instructr   )z'unsloth/Llama-3.3-70B-Instruct-bnb-4bitzunsloth/Llama-3.3-70B-Instructz!meta-llama/Llama-3.3-70B-Instruct)
zunsloth/gemma-7b-it-bnb-4bitzunsloth/gemma-7b-itzgoogle/gemma-7b-itzgoogle/gemma-2b-itz unsloth/gemma-1.1-2b-it-bnb-4bitzunsloth/gemma-1.1-2b-itzgoogle/gemma-1.1-2b-itz unsloth/gemma-1.1-7b-it-bnb-4bitzunsloth/gemma-1.1-7b-itzgoogle/gemma-1.1-7b-it)	zunsloth/gemma-2-9b-it-bnb-4bitzunsloth/gemma-2-9b-itzgoogle/gemma-2-9b-itzunsloth/gemma-2-27b-it-bnb-4bitzunsloth/gemma-2-27b-itzgoogle/gemma-2-27b-itzunsloth/gemma-2-2b-it-bnb-4bitzunsloth/gemma-2-2b-itzgoogle/gemma-2-2b-it)z&unsloth/gemma-3-1b-it-unsloth-bnb-4bitzunsloth/gemma-3-1b-itzgoogle/gemma-3-1b-itzunsloth/gemma-3-1b-it-bnb-4bitz&unsloth/gemma-3-4b-it-unsloth-bnb-4bitzunsloth/gemma-3-4b-itzgoogle/gemma-3-4b-itzunsloth/gemma-3-4b-it-bnb-4bitz'unsloth/gemma-3-12b-it-unsloth-bnb-4bitzunsloth/gemma-3-12b-itzgoogle/gemma-3-12b-itzunsloth/gemma-3-12b-it-bnb-4bitz'unsloth/gemma-3-27b-it-unsloth-bnb-4bitzunsloth/gemma-3-27b-itzgoogle/gemma-3-27b-itzunsloth/gemma-3-27b-it-bnb-4bitz'unsloth/medgemma-4b-it-unsloth-bnb-4bitzunsloth/medgemma-4b-itzgoogle/medgemma-4b-itzunsloth/medgemma-4b-it-bnb-4bitz-unsloth/medgemma-27b-text-it-unsloth-bnb-4bitzunsloth/medgemma-27b-text-itzgoogle/medgemma-27b-text-itz%unsloth/medgemma-27b-text-it-bnb-4bit)(unsloth/gemma-3n-E4B-it-unsloth-bnb-4bitzunsloth/gemma-3n-E4B-itzgoogle/gemma-3n-E4B-itr&   (unsloth/gemma-3n-E2B-it-unsloth-bnb-4bitzunsloth/gemma-3n-E2B-itzgoogle/gemma-3n-E2B-itr'   )z(unsloth/gemma-3-270m-it-unsloth-bnb-4bitzunsloth/gemma-3-270m-itzgoogle/gemma-3-270m-itz unsloth/gemma-3-270m-it-bnb-4bit)#z.unsloth/Qwen2.5-0.5B-Instruct-unsloth-bnb-4bitzunsloth/Qwen2.5-0.5B-InstructzQwen/Qwen2.5-0.5B-Instructz&unsloth/Qwen2.5-0.5B-Instruct-bnb-4bitz.unsloth/Qwen2.5-1.5B-Instruct-unsloth-bnb-4bitzunsloth/Qwen2.5-1.5B-InstructzQwen/Qwen2.5-1.5B-Instructz&unsloth/Qwen2.5-1.5B-Instruct-bnb-4bitz,unsloth/Qwen2.5-3B-Instruct-unsloth-bnb-4bitzunsloth/Qwen2.5-3B-InstructzQwen/Qwen2.5-3B-Instructz$unsloth/Qwen2.5-3B-Instruct-bnb-4bitz,unsloth/Qwen2.5-7B-Instruct-unsloth-bnb-4bitzunsloth/Qwen2.5-7B-InstructzQwen/Qwen2.5-7B-Instructz$unsloth/Qwen2.5-7B-Instruct-bnb-4bitz-unsloth/Qwen2.5-14B-Instruct-unsloth-bnb-4bitzunsloth/Qwen2.5-14B-InstructzQwen/Qwen2.5-14B-Instructz%unsloth/Qwen2.5-14B-Instruct-bnb-4bitz%unsloth/Qwen2.5-32B-Instruct-bnb-4bitzunsloth/Qwen2.5-32B-InstructzQwen/Qwen2.5-32B-Instructz%unsloth/Qwen2.5-72B-Instruct-bnb-4bitzunsloth/Qwen2.5-72B-InstructzQwen/Qwen2.5-72B-Instructz+unsloth/Qwen2.5-Math-1.5B-Instruct-bnb-4bitz"unsloth/Qwen2.5-Math-1.5B-InstructzQwen/Qwen2.5-Math-1.5B-Instructz)unsloth/Qwen2.5-Math-7B-Instruct-bnb-4bitz unsloth/Qwen2.5-Math-7B-InstructzQwen/Qwen2.5-Math-7B-Instructz*unsloth/Qwen2.5-Math-72B-Instruct-bnb-4bitz!unsloth/Qwen2.5-Math-72B-InstructzQwen/Qwen2.5-Math-72B-Instruct)z,unsloth/Qwen2.5-Coder-0.5B-Instruct-bnb-4bitz#unsloth/Qwen2.5-Coder-0.5B-Instructz Qwen/Qwen2.5-Coder-0.5B-Instructz,unsloth/Qwen2.5-Coder-1.5B-Instruct-bnb-4bitz#unsloth/Qwen2.5-Coder-1.5B-Instructz Qwen/Qwen2.5-Coder-1.5B-Instructz*unsloth/Qwen2.5-Coder-3B-Instruct-bnb-4bitz!unsloth/Qwen2.5-Coder-3B-InstructzQwen/Qwen2.5-Coder-3B-Instructz*unsloth/Qwen2.5-Coder-7B-Instruct-bnb-4bitz!unsloth/Qwen2.5-Coder-7B-InstructzQwen/Qwen2.5-Coder-7B-Instructz+unsloth/Qwen2.5-Coder-14B-Instruct-bnb-4bitz"unsloth/Qwen2.5-Coder-14B-InstructzQwen/Qwen2.5-Coder-14B-Instructz+unsloth/Qwen2.5-Coder-32B-Instruct-bnb-4bitz"unsloth/Qwen2.5-Coder-32B-InstructzQwen/Qwen2.5-Coder-32B-Instruct)z/unsloth/Qwen2.5-VL-3B-Instruct-unsloth-bnb-4bitzunsloth/Qwen2.5-VL-3B-InstructzQwen/Qwen2.5-VL-3B-Instructz'unsloth/Qwen2.5-VL-3B-Instruct-bnb-4bitz/unsloth/Qwen2.5-VL-7B-Instruct-unsloth-bnb-4bitzunsloth/Qwen2.5-VL-7B-InstructzQwen/Qwen2.5-VL-7B-Instructz'unsloth/Qwen2.5-VL-7B-Instruct-bnb-4bitz0unsloth/Qwen2.5-VL-32B-Instruct-unsloth-bnb-4bitzunsloth/Qwen2.5-VL-32B-InstructzQwen/Qwen2.5-VL-32B-Instructz(unsloth/Qwen2.5-VL-32B-Instruct-bnb-4bitz0unsloth/Qwen2.5-VL-72B-Instruct-unsloth-bnb-4bitzunsloth/Qwen2.5-VL-72B-InstructzQwen/Qwen2.5-VL-72B-Instructz(unsloth/Qwen2.5-VL-72B-Instruct-bnb-4bit)z'unsloth/OpenThinker-7B-unsloth-bnb-4bitzunsloth/OpenThinker-7Bzopen-thoughts/OpenThinker-7Bzunsloth/OpenThinker-7B-bnb-4bit)z$unsloth/Qwen2-0.5B-Instruct-bnb-4bitzunsloth/Qwen2-0.5B-InstructzQwen/Qwen2-0.5B-Instructz$unsloth/Qwen2-1.5B-Instruct-bnb-4bitzunsloth/Qwen2-1.5B-InstructzQwen/Qwen2-1.5B-Instructz"unsloth/Qwen2-7B-Instruct-bnb-4bitzunsloth/Qwen2-7B-InstructzQwen/Qwen2-7B-Instructz#unsloth/Qwen2-70B-Instruct-bnb-4bitzQwen/Qwen2-70B-Instruct)z#unsloth/Qwen3-0.6B-unsloth-bnb-4bitzunsloth/Qwen3-0.6BzQwen/Qwen3-0.6Bzunsloth/Qwen3-0.6B-bnb-4bitz#unsloth/Qwen3-1.7B-unsloth-bnb-4bitzunsloth/Qwen3-1.7BzQwen/Qwen3-1.7Bzunsloth/Qwen3-1.7B-bnb-4bitz!unsloth/Qwen3-4B-unsloth-bnb-4bitzunsloth/Qwen3-4BzQwen/Qwen3-4Bzunsloth/Qwen3-4B-bnb-4bitz!unsloth/Qwen3-8B-unsloth-bnb-4bitzunsloth/Qwen3-8BzQwen/Qwen3-8Bzunsloth/Qwen3-8B-bnb-4bitz"unsloth/Qwen3-14B-unsloth-bnb-4bitzunsloth/Qwen3-14BzQwen/Qwen3-14Bzunsloth/Qwen3-14B-bnb-4bitz"unsloth/Qwen3-32B-unsloth-bnb-4bitzunsloth/Qwen3-32BzQwen/Qwen3-32Bzunsloth/Qwen3-32B-bnb-4bitz&unsloth/Qwen3-30B-A3B-unsloth-bnb-4bitzunsloth/Qwen3-30B-A3BzQwen/Qwen3-30B-A3Bzunsloth/Qwen3-30B-A3B-bnb-4bit)/unsloth/Qwen3-4B-Instruct-2507-unsloth-bnb-4bitunsloth/Qwen3-4B-Instruct-2507Qwen/Qwen3-4B-Instruct-2507'unsloth/Qwen3-4B-Instruct-2507-bnb-4bitz#unsloth/Qwen3-30B-A3B-Instruct-2507z Qwen/Qwen3-30B-A3B-Instruct-2507z$unsloth/Qwen3-Coder-30B-A3B-Instructz!Qwen/Qwen3-Coder-30B-A3B-Instructr(   r)   r*   r+   )z unsloth/QwQ-32B-Preview-bnb-4bitzunsloth/QwQ-32B-PreviewzQwen/QwQ-32B-Previewz unsloth/QwQ-32B-unsloth-bnb-4bitzunsloth/QwQ-32BzQwen/QwQ-32Bzunsloth/QwQ-32B-bnb-4bitz/unsloth/Qwen3-4B-Thinking-2507-unsloth-bnb-4bitzunsloth/Qwen3-4B-Thinking-2507zQwen/Qwen3-4B-Thinking-2507z'unsloth/Qwen3-4B-Thinking-2507-bnb-4bitz#unsloth/Qwen3-30B-A3B-Thinking-2507z Qwen/Qwen3-30B-A3B-Thinking-2507)zunsloth/zephyr-sft-bnb-4bitzunsloth/zephyr-sftz!HuggingFaceH4/mistral-7b-sft-beta)z(unsloth/Hermes-2-Pro-Mistral-7B-bnb-4bitzunsloth/Hermes-2-Pro-Mistral-7Bz$NousResearch/Hermes-2-Pro-Mistral-7Bz*unsloth/OpenHermes-2.5-Mistral-7B-bnb-4bitz!unsloth/OpenHermes-2.5-Mistral-7Bz!teknium/OpenHermes-2.5-Mistral-7B)$unsloth/gpt-oss-20b-unsloth-bnb-4bitzunsloth/gpt-oss-20bzopenai/gpt-oss-20br,   %unsloth/gpt-oss-120b-unsloth-bnb-4bitzunsloth/gpt-oss-120bzopenai/gpt-oss-120br-   )z$unsloth/Starling-LM-7B-beta-bnb-4bitzunsloth/Starling-LM-7B-betazNexusflow/Starling-LM-7B-beta)zunsloth/yi-34b-chat-bnb-4bitz01-ai/Yi-6B-Chatz01-ai/Yi-34B-Chat)z0unsloth/granite-3.2-2b-instruct-unsloth-bnb-4bitzunsloth/granite-3.2-2b-instructz#ibm-granite/granite-3.2-2b-instructz(unsloth/granite-3.2-2b-instruct-bnb-4bitz0unsloth/granite-3.2-8b-instruct-unsloth-bnb-4bitzunsloth/granite-3.2-8b-instructz#ibm-granite/granite-3.2-8b-instructz(unsloth/granite-3.2-8b-instruct-bnb-4bit)z.unsloth/granite-vision-3.2-2b-unsloth-bnb-4bitzunsloth/granite-vision-3.2-2bz!ibm-granite/granite-vision-3.2-2bz&unsloth/granite-vision-3.2-2b-bnb-4bit)r   r   r    r!   r   r   r   r"   r#   r$   r%   N):__all__r   unsloth_ollamazephyr_ollamachatml_ollamamistral_ollamamistral_v03_ollamamistral_small_ollamamistral_small_31_ollamamistral_small_32_ollamamixtral_ollamamistral_nemo_ollamacodestral_ollamadevstral_ollamamagistral_ollamallama_ollamavicuna_ollamavicuna_old_ollamaalpaca_ollamagemma_ollamagemma_chatml_ollamagemma2_ollamagemma2_chatml_ollamallama3_ollamaphi3_ollamallama31_ollamallama_31_storm_ollamallama_31_nemotron_ollamallama_32_vision_ollamaversiontinyllama_ollamaqwen25_ollamaqwen_25_coder_ollamaqwen_25_vl_ollamaopenthinker_ollama_phi4_ollama_templatephi_4_ollamaphi_4_reasoning_ollamaphi_4_mini_ollamaphi_4_mini_reasoning_ollamagemma3_ollamagemma3_270m_ollamaqwen3_ollamaqwen3_template_eos_tokengemma3n_ollamagptoss_ollamastarling_ollamayi_chat_ollamagranite_32_ollamagranite_32_vision_ollamar   r   itemskeyvaluesvaluelowerlowered_key     Y/home/james-whalen/.local/lib/python3.13/site-packages/unsloth/ollama_template_mappers.py<module>rh      s    
 -   +   +   < .% P/ f . 6_D( T -  "4  $8  !'> # $'> # $,  #6   .   0   0  
 )   +  
  "3  !1,!?  " +   )   " $7   
 99*   +-GG $8  !" ,  *  
  (  -g6  .w7  "9x4 n( V  !/  -  (@ $ %%: ! "&< " #AG 0 =W B
  !1  9x6 r 4  ,  $8  !!2  "4  *  C "# $ $ &  )  &< " #!2  +F ' (
. 0 ,  *  "4  
;z ( )  (  
  .  ,  
rh ,  *  6p &2 ! "%1 ! "  /   -  
Y x9 v "3  (@ $ %X# X#  	X#   !X#,  	-X#@  AX#L  MX#X  YX#h  iX#v  wX#H  IX#T  UX#`  aX#l  mX#v  wX#~  	X#R  SX#n  oX#x  
yX#N  OX#\  ]X#V  WX#`  aX#j  	kX#~  X#P  QX#Z  [X#r  
sX#H  IX#|  	}X#P  QX#\  $]X#f	  g	X#N
  O
X#r
  s
X#~
<
	

	eX# t #% 288:KC14'.  ))+K9D'6  ;rf   