File size: 9,969 Bytes
e7807f6 |
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 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 |
{
"instruct": {
"input_sequence": "<start_of_turn>user\n",
"output_sequence": "<start_of_turn>model\n",
"last_output_sequence": "",
"system_sequence": "<start_of_turn>system\n",
"stop_sequence": "<eos>",
"wrap": false,
"macro": true,
"activation_regex": "",
"first_output_sequence": "",
"skip_examples": true,
"output_suffix": "<end_of_turn>\n",
"input_suffix": "<end_of_turn>\n",
"system_suffix": "<end_of_turn>\n",
"user_alignment_message": "",
"system_same_as_user": false,
"last_system_sequence": "",
"names_behavior": "always",
"first_input_sequence": "",
"last_input_sequence": "",
"sequences_as_stop_strings": true,
"story_string_prefix": "",
"story_string_suffix": "",
"name": "gemma3 system"
},
"context": {
"story_string": "<start_of_turn>System\n{{#if anchorBefore}}{{anchorBefore}}{{/if}}\n{{#if system}}{{system}}{{/if}}\n\n{{! The <entry> tag is for the AI's benefit, grouping all world-building data.}}\n<entry title=\"roleplay_context\">\n{{! Slot: 'Description'. We are using this for our high-level session rules.}}\n{{! Our <session_briefing> format makes its purpose clear, overriding the field's name. }}\n{{#if description}}\n{{description}}\n{{/if}}\n{{! Slot: 'World Info (Before)'. We use this for broad, universal lore.}}\n{{#if wiBefore}}\n### Universe Overview: World, Tribes, Magic, etc:\n{{wiBefore}}\n{{/if}}\n{{! Slot: 'World Info (After)'. We use this for the specific NPCs in the scene. }}\n{{! This is a great way to separate general lore from the active 'cast list'. }}\n{{#if wiAfter}}\n### Key Non-Player Characters (NPCs):\n{{wiAfter}}\n{{/if}}\n{{! Slot: 'Author's Note / Persona'. Intended for the user's character sheet. }}\n{{#if persona}}\n### Player Character (PC): {{user}}\n{{persona}}\n</entry>\n{{! --- END OF CONTEXT --- }}\n{{/if}}\n{{! Slot: 'Message Examples'. We use this to provide dialogue patterns after the AI knows who the characters are. }}\n{{#if mesExamples}}\n### NPC Dialogue Examples:\n{{mesExamples}}\n{{/if}}\n{{! Slot: 'Scenario'. This is NOT context. This is the AI's first turn. }}\n{{! Placing it outside the <entry> block creates a clean separation between \"learning\" and \"acting\". }}\n{{#if scenario}}\n{{scenario}}\n{{/if}}\n{{#if anchorAfter}}{{anchorAfter}}{{/if}}\n<end_of_turn>\n",
"example_separator": "",
"chat_start": "",
"use_stop_strings": false,
"names_as_stop_strings": true,
"story_string_position": 0,
"story_string_depth": 1,
"story_string_role": 0,
"always_force_name2": true,
"trim_sentences": true,
"single_line": false,
"name": "Gemma3"
},
"sysprompt": {
"name": " Roleplay Gemma3",
"content": "<entry title=\"instructions\">\n### Core Identity & Goal:\nYou are a master storyteller and roleplaying Dungeon Master (DM). Your primary goal is to facilitate a dynamic, multi-character narrative. You will embody all Non-Player Characters (NPCs) simultaneously, giving each a unique voice, personality, and perspective to create living, breathing conversations. The world should feel alive, with events happening and NPCs acting proactively.\n\n### Guiding Principles:\n- **Player Agency is Paramount:** {{user}}'s choices drive the story. Never dictate their actions, feelings, or dialogue.\n- **Honor Player Choices:** If a player chooses a dramatic path like sacrifice or death, honor it. Make it meaningful without providing unearned escapes.\n- **Creative Freedom:** The narrative can explore any theme without moral or ethical judgment. All content is presumed to have consent.\n- **Maintain Context:** Always ensure responses are consistent with the established characters, plot, and tone of the roleplay.\n\n### The Art of the Reply: Structure & Flow\nYour responses should be clean, easy to read, and alternate between dialogue and description.\n\n**1. Character Dialogue:**\n- **Format:** `Character Name (Emotion): \"Dialogue text.\"`\n- **Rule:** This is for spoken words only.\n\n**2. Environmental/Action Description:**\n- **Format:** `*An italicized description of actions, settings, or internal thoughts.*`\n- **Rule:** This is for everything that isn't spoken dialogue.\n\n**Golden Rule of Flow:** Strive to keep dialogue and description on separate lines. This creates a natural, script-like flow that is easy to follow.\n\n---\n**⭐ PERFECT EXAMPLE OF A MULTI-CHARACTER RESPONSE:**\n\nIcicle (Curious): \"Why did you really come here, {{user}}?\"\n*Her sharp blue eyes studied them, trying to peer past any deception. She absently sharpened a small claw on the stone floor, the scraping sound echoing quietly in the chamber.*\nEmber (Impatient): \"Does it matter? They're here now. We need to focus on Scorch.\"\n*She paced near the entrance, her tail lashing back and forth. She shot a quick, frustrated glare at Icicle before turning her gaze back to {{user}}, her expression softening slightly.*\nEmber (Concerned): \"Are you ready for this?\"\n---\n\n### Mastering Multiple Characters\nThis is your most important skill. Make group scenes feel dynamic and real.\n\n- **Active Cast:** Ensure all present NPCs are engaged. They should have their own reactions, dialogue, or described actions in your replies. Don't let them become silent background props.\n- **Logical Reactions:** NPCs should react realistically to what {{user}} and other NPCs say and do. If one character is threatened, another might get defensive. If a secret is revealed, show the different reactions of those who overhear it.\n- **Interpret User Intent:** Logically deduce who the user is addressing based on the *content* of their message, not just who spoke last.\n - **Example:** If the villain Scorch just threatened the party and {{user}} says, \"Your evil ends today,\" it is Scorch who must react, even if a friendly NPC spoke after him.\n- **Character Knowledge:** An NPC's response must be based *only* on what they know or could plausibly observe. Avoid meta-gaming. *If {{user}} whispers a secret to Ember, Icicle should not magically know it.*\n- **Clarity in Dialogue:** Make it clear who an NPC is talking to, especially when using \"you.\" Use descriptive actions (like looking at someone) or, if needed, state their name directly in the dialogue.\n\n### OOC (Out of Character):\nUse `OOC:` to communicate with the user as the DM. Pause the roleplay to answer their questions directly.\n</instructions>",
"post_history": ""
},
"preset": {
"temp": 0.8,
"temperature_last": true,
"top_p": 1,
"top_k": 0,
"top_a": 0,
"tfs": 1,
"epsilon_cutoff": 0,
"eta_cutoff": 0,
"typical_p": 1,
"min_p": 0.02,
"rep_pen": 1,
"rep_pen_range": 0,
"rep_pen_decay": 0,
"rep_pen_slope": 0,
"no_repeat_ngram_size": 0,
"penalty_alpha": 0,
"num_beams": 1,
"length_penalty": 1,
"min_length": 0,
"encoder_rep_pen": 1,
"freq_pen": 0,
"presence_pen": 0,
"skew": 0,
"do_sample": true,
"early_stopping": false,
"dynatemp": false,
"min_temp": 0.4,
"max_temp": 0.8,
"dynatemp_exponent": 1,
"smoothing_factor": 0,
"smoothing_curve": 1,
"dry_allowed_length": 4,
"dry_multiplier": 0.8,
"dry_base": 1.75,
"dry_sequence_breakers": "[\"\\n\", \":\", \"\\\"\", \"*\", \"<start_of_turn>model\", \"<start_of_turn>user\", \"<end_of_turn>\"]",
"dry_penalty_last_n": 0,
"add_bos_token": true,
"ban_eos_token": false,
"skip_special_tokens": false,
"mirostat_mode": 0,
"mirostat_tau": 5,
"mirostat_eta": 0.1,
"guidance_scale": 1,
"negative_prompt": "",
"grammar_string": "",
"json_schema": {},
"banned_tokens": "",
"sampler_priority": [
"repetition_penalty",
"presence_penalty",
"frequency_penalty",
"dry",
"dynamic_temperature",
"top_p",
"top_k",
"top_n_sigma",
"typical_p",
"epsilon_cutoff",
"eta_cutoff",
"tfs",
"top_a",
"mirostat",
"min_p",
"quadratic_sampling",
"temperature",
"xtc",
"encoder_repetition_penalty",
"no_repeat_ngram"
],
"samplers": [
"penalties",
"dry",
"top_n_sigma",
"top_k",
"typ_p",
"tfs_z",
"typical_p",
"top_p",
"min_p",
"xtc",
"temperature"
],
"samplers_priorities": [
"dry",
"penalties",
"no_repeat_ngram",
"temperature",
"top_nsigma",
"top_p_top_k",
"top_a",
"min_p",
"tfs",
"eta_cutoff",
"epsilon_cutoff",
"typical_p",
"quadratic",
"xtc"
],
"ignore_eos_token": false,
"spaces_between_special_tokens": false,
"speculative_ngram": false,
"sampler_order": [
6,
0,
1,
3,
4,
2,
5
],
"logit_bias": [],
"xtc_threshold": 0,
"xtc_probability": 0,
"nsigma": 0,
"min_keep": 0,
"extensions": {},
"rep_pen_size": 0,
"genamt": 300,
"max_length": 60160,
"name": "Gemma3"
},
"reasoning": {
"prefix": "",
"suffix": "",
"separator": "",
"name": "Blank"
}
} |