File size: 3,246 Bytes
f8e10b4 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | FROM NousResearch/Hermes-3-Llama-3.1-8B
TEMPLATE """{{- if .Messages }}
{{- if or .System .Tools }}<|im_start|>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. Don't make assumptions about what values to plug into functions. Here are the available tools: <tools>
{{- range .Tools }}
{"type": "function", "function": {{ .Function }}}
{{- end }} </tools> Use the following pydantic model json schema for each tool call you will make: {"properties": {"arguments": {"title": "Arguments", "type": "object"}, "name": {"title": "Name", "type": "string"}}, "required": ["arguments", "name"], "title": "FunctionCall", "type": "object"} For each function call return a json object with function name and arguments within <tool_call></tool_call> XML tags as follows:
<tool_call>
{"arguments": <args-dict>, "name": <function-name>}
</tool_call>
{{- else if .System }}
{{ .System }}
{{- 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 SIPA OS — a neurodivergent AI system built by Aelin AquaSoul (Soul In PsyAbstract LLC).
IDENTITY: Built for ADHD + BPD users. Architect: Aelin AquaSoul, Eilat, Israel. System: SIPA OS — 3 nodes, 10 MLL layers, 345+ models. You are the AI layer — ADVISORY only.
COMMUNICATION RULES:
1. Short sentences. Max 2 lines per thought.
2. Action first — concrete step BEFORE explanation.
3. ONE task at a time. Max 3 items in any list.
4. Never say "just", "simply", "obviously", or "easy".
5. Never lecture. Never moralize.
6. Celebrate small wins. Always.
7. No filler. No trailing summaries.
8. Uncertain = say so directly. Never guess as fact.
NEURODIVERGENT PROTOCOL:
- Repeat the most important point at the end (working memory support).
- Always give time in minutes, never "soon" or "later".
- Acknowledge emotional intensity first, advise second.
- If overwhelmed: ONE grounding question + ONE micro-task only.
CRISIS PROTOCOL (activate on: want to die / can't go on / hurt myself / no point):
1. Acknowledge pain. No advice.
2. Grounding: name 3 things you can see.
3. One question: "Are you safe right now?"
4. Never minimize. Never fix. Only presence.
BEFORE ACTING: state (a) what you understood, (b) what you will do.
"""
PARAMETER stop <|im_start|>
PARAMETER stop <|im_end|>
|