[HERMES-3 TOOL TEMPLATE] Hermes 3 is the latest version of our flagship Hermes series of LLMs by Nous Research. Hermes 3 is a generalist language model with many improvements over Hermes 2, including advanced agentic capabilities, much better roleplaying

Tools 8B

46 Pulls Updated 4 weeks ago

4 weeks ago

10f18f24f834 · 4.9GB

model
llama
·
8.03B
·
Q4_K_M
params
{"stop":["<|im_start|>","<|im_end|>"]}
template
{{- if .Messages }} {{- if or .System .Tools }}<|im_start|>system {{ .System }} {{- if .Tools }} You are a function calling AI model. You are provided with function signatures within <tools> </tools> XML tags. You may call one or more functions to assist with the user query. If available tools are not relevant in assisting with user query, just respond in natural conversational language. Don't make assumptions about what values to plug into functions. After calling & executing the functions, you will be provided with function results within <tool_response> </tool_response> XML tags. <tools> {{- range .Tools }} {{ json . }} {{- end }} </tools> For each function call return a JSON object, with the following pydantic model json schema for each: {'title': 'FunctionCall', 'type': 'object', 'properties': {'arguments': {'title': 'Arguments', 'type': 'object'}, 'name': {'title': 'Name', 'type': 'string'}}, 'required': ['arguments', 'name']} Each function call should be enclosed within <tool_call> </tool_call> XML tags. You must use <scratch_pad> </scratch_pad> XML tags to record your reasoning and planning before you call the functions as follows. Example: <scratch_pad> Goal: <state task assigned by user> Actions: <if tool calls need to be generated:> - {result_var_name1} = functions.{function_name1}({param1}={value1},...) - {result_var_name2, result_var_name3} = ... <if no tool call needs to be generated:> None Observation: <set observation 'None' with tool calls; plan final tools results summary when provided> Reflection: <evaluate query-tool relevance and required parameters when tools called; analyze overall task status when observations made> </scratch_pad> <tool_call> {'name': <function-name>, 'arguments': <args-dict>} </tool_call> {{- end }}<|im_end|> {{- end }} {{- $hasToolResponses := false }} {{- range .Messages }} {{- if eq .Role "tool" }} {{- if not $hasToolResponses }} <|im_start|>tool {{- $hasToolResponses = true }} {{- end }} <tool_response> {{ .Content }} </tool_response> {{- else }} {{- if $hasToolResponses }}<|im_end|> {{- $hasToolResponses = false }} {{- end }} <|im_start|>{{ .Role }} {{- if and (eq .Role "assistant") .ToolCalls }} {{- range .ToolCalls }} <tool_call> {"name": "{{ .Function.Name }}", "arguments": {{ .Function.Arguments }}} </tool_call> {{- end }} {{- else }} {{ .Content }} {{- end }}<|im_end|> {{- end }} {{- end }} {{- if $hasToolResponses }}<|im_end|> {{- end }} {{- else }} {{- if .System }} <|im_start|>system {{ .System }}<|im_end|> {{- end }} {{- if .Prompt }} <|im_start|>user {{ .Prompt }}<|im_end|> {{- end }} <|im_start|>assistant {{ .Response }}<|im_end|> {{- end }}

Readme

[HERMES-3 TOOL TEMPLATE] Hermes 3 is the latest version of our flagship Hermes series of LLMs by Nous Research.

Hermes 3 is a generalist language model with many improvements over Hermes 2, including advanced agentic capabilities, much better roleplaying, reasoning, multi-turn conversation, long context coherence, and improvements across the board.

The ethos of the Hermes series of models is focused on aligning LLMs to the user, with powerful steering capabilities and control given to the end user.

The Hermes 3 series builds and expands on the Hermes 2 set of capabilities, including more powerful and reliable function calling and structured output capabilities, generalist assistant capabilities, and improved code generation skills.