CONVERSATIONAL
IN-CHARACTER
๐ฉธ About The Model
Note: Even if the images might suggest otherwise, this model merge has no relation to furry fine-tunes or datasheets. The Versipellis is a skinwalker or shapeshifter, which includes the werewolf. But not every shapeshifter is a werewolf.
Versipellis-31B is built for one thing: being a genuine conversational partner that becomes whatever character it's handed, rather than playing a polite narrator wearing a costume. Where the base gemma-4-31b-it and most fine-tunes carry a voice of steep user-adherence that's wonderful for assistant work but flattens characters into agreeable mirrors, Versipellis treats the character description as the only law it answers to. An agreeable character would still agree, while a character who would refuse, refuses - but as them, not as a model breaking the fourth wall with a disclaimer.
The prose is the other half of the goal: combined with the provided system prompt, it delivers short, natural, dialogue-forward turns that read like someone talking, not like a novel narrating a scene. As merging has only an underlying impact here, the instruction picks up and works to steer narration into describing what the character physically does and nothing more, to keep up the feeling of a genuine conversation instead of a wall of purple prose. Vocabulary and rhythm are blended from several prose fine-tunes so it doesn't fall into the usual recognisable slop.
In my testing it tracks long-context detail reliably (clothing, restraints, who is standing or kneeling, what happened forty turns ago), holds spatial and physical state of character across chained actions, takes mid-chat steering well (twists, tone shifts, persona changes) and then settles back down naturally once the steering stops. It also keeps a clean line between you, its own character, and any third character you introduce, not falling into describing doings of any third party, except when enforced by the user. Expect uncensored, in-character roleplay without the deep-fried agreeability that usually comes bundled with abliteration.
Note: For this merge, I took extra care of Gemma 4's global-attention layers. Every sixth layer, the ones carrying 256K long-context coherence, are deliberately shielded from the prose merge and personality merge injections, so the long-context stability stays intact. This should hopefully help with coherence in longer conversations.
๐ GGUF Quants
Thank you to anyone providing quants!
๐งฌ Merge Phases
Versipellis was assembled in
six phases on
zerofata's gemma-4-support fork of mergekit: with a logic
Mind that is never diluted, a proven creative
Spirit and a unique blend of
Personality and
Voice, layered to create the
Soul - and with it, the final Versipellis.
๐ Phase 1 ยท Spirit
Model Choice: The creative prose engine of Gemsicle, a proven 50:50 pairing of GarnetV2 and Musica. GarnetV2 was chosen to supply its clean writing and in hopes of building a ground for long-context stability; Musica was chosen for its steerability, creative variability and low-refusal disposition. SLERP was truly the perfect choice for this.
View recipe - slerp
merge_method: slerp
base_model: ./ConicCat/Gemma4-GarnetV2-31B
dtype: bfloat16
tokenizer_source: base
models:
- model: ./AuriAetherwiing/G4-31B-Musica-v1
parameters:
t:
- value: 0.5
๐ Phase 2 ยท Personality
Model Choice: This conversational model_stock averages the models thrown into this mix toward the uncensored base for stability while keeping their shared signal of character-centrism. Melinoe is the empathetic one-on-one core, while Sprinkle brings de-slopped, smart prompt-adherence, and the heretic version of MeroMero contributes short, un-flowery prose and swipe variety; Monika lends single-persona, multi-turn chat coherence for conversational behavior in chats.
View recipe - model_stock
merge_method: model_stock
base_model: ./trohrbaugh/gemma-4-31b-it-heretic-ara
dtype: bfloat16
tokenizer_source: union
models:
- model: ./bgg1996/Melinoe-Gemma4-31B-VL
- model: ./p-e-r-e-g-r-i-n-e/Sprinkle-Gemma-4-31B
- model: ./llmfan46/G4-MeroMero-31B-uncensored-heretic
- model: ./Green-eyedDevil/Monika-31B
๐ Phase 3 ยท Voice
Model Choice: The idea is a high-variance spice, deliberately brought together inside a model_stock average so no single one of those chaotic models takes the wheel. Ortenzya is used purely as a vocabulary fingerprint, glimmer-rp hopefully adds to the proactive, dialogue-frame prose, and Glistening-Gem brings the creativity spark without running off the rails.
View recipe - model_stock
merge_method: model_stock
base_model: ./trohrbaugh/gemma-4-31b-it-heretic-ara
dtype: bfloat16
tokenizer_source: union
models:
- model: ./llmfan46/gemma-4-Ortenzya-The-Creative-Wordsmith-31B-it-uncensored-heretic
- model: ./BirdToast/Gemma-4-31B-glimmer-rp-v0.1
- model: ./sophosympatheia/Glistening-Gem-31B-v1.0
๐ Phase 4 ยท Soul
Model Choice: Using della_linear to enhance the Spirit, while keeping it at full strength, with a still dominant application of Personality and a touch of Voice. The Personality is brought mainly to the mid layers; Voice is pruned hard to be the flavoring. This was hell to adjust.
View recipe - della_linear
merge_method: della_linear
base_model: ./Spirit
dtype: bfloat16
tokenizer_source: union
parameters:
epsilon: 0.05
lambda: 1.0
normalize: true
int8_mask: true
models:
- model: ./Personality
parameters:
weight:
- value: 0.22
- filter: 'text_decoder\.layers\.([0-9]|1[0-7])\.'
value: 0.18
- filter: 'text_decoder\.layers\.(1[8-9]|[2-3][0-9]|4[0-7])\.'
value: 0.35
- filter: 'text_decoder\.layers\.(4[8-9]|5[0-8])\.'
value: 0.22
- filter: 'text_decoder\.layers\.(5|11|17|23|29|35|41|47|53|59)\.'
value: 0.05
- filter: embed_tokens
value: 0.0
- filter: lm_head
value: 0.0
- filter: model.embed_vision
value: 0.0
density:
- value: 0.5
- filter: 'text_decoder\.layers\.(1[8-9]|[2-3][0-9]|4[0-7])\.'
value: 0.65
- model: ./Voice
parameters:
weight:
- value: 0.10
- filter: 'text_decoder\.layers\.([0-9]|1[0-7])\.'
value: 0.08
- filter: 'text_decoder\.layers\.(1[8-9]|[2-3][0-9]|4[0-7])\.'
value: 0.16
- filter: 'text_decoder\.layers\.(4[8-9]|5[0-8])\.'
value: 0.10
- filter: 'text_decoder\.layers\.(5|11|17|23|29|35|41|47|53|59)\.'
value: 0.03
- filter: embed_tokens
value: 0.0
- filter: lm_head
value: 0.0
- filter: model.embed_vision
value: 0.0
density:
- value: 0.4
๐ Phase 5 ยท Mind
Model Choice: To create the Mind, I took the abliterated gemma-4-31b-it-heretic-ara as a base to keep the intelligence of the instruct model without the refusal vectors. To not pollute every of my models with too much of Gemopus, it is layered on only as a light stability fix, preserving the Gemma 4 native reasoning order, and applied via dare_ties.
View recipe - dare_ties
merge_method: dare_ties
base_model: ./trohrbaugh/gemma-4-31b-it-heretic-ara
dtype: bfloat16
tokenizer_source: union
parameters:
int8_mask: true
normalize: true
models:
- model: ./Jackrong/Gemopus-4-31B-it
parameters:
density: 0.6
weight: [0.22, 0.25, 0.20, 0.14]
๐ Phase 6 ยท Versipellis
The Versipellis: della_linear injects the Soul into the Mind. While the Mind stays at full strength, the pruned, scaled Soul delta is added - a nice blend of prose and personality, without the lobotomy. Lighter injection in the early layers while going heavy in the mid layers once again, and the global layers stay at 0.05 to protect long-context stability.
View recipe - della_linear
merge_method: della_linear
base_model: ./Mind
dtype: bfloat16
tokenizer_source: union
parameters:
epsilon: 0.05
lambda: 1.0
normalize: true
int8_mask: true
models:
- model: ./Soul
parameters:
weight:
- filter: embed_tokens
value: 0.0
- filter: lm_head
value: 0.0
- filter: embed_vision
value: 0.0
- filter: vision_tower
value: 0.0
- filter: multi_modal_projector
value: 0.0
- filter: 'text_decoder\.layers\.(5|11|17|23|29|35|41|47|53|59)\.'
value: 0.05
- filter: 'text_decoder\.layers\.([0-9]|1[0-7])\.'
value: 0.14
- filter: 'text_decoder\.layers\.(1[8-9]|[2-3][0-9]|4[0-7])\.'
value: 0.34
- filter: 'text_decoder\.layers\.(4[8-9]|5[0-8])\.'
value: 0.20
- value: 0.14
density:
- filter: 'text_decoder\.layers\.(5|11|17|23|29|35|41|47|53|59)\.'
value: 0.4
- filter: 'text_decoder\.layers\.(1[8-9]|[2-3][0-9]|4[0-7])\.'
value: 0.6
- value: 0.4
โ๏ธ Sampler Recommendations
Due to the variability of the merge, there is no need for aggressive sampling.
Setting
Value
Temperature
0.7 - 0.9
Top-K
0
Top-P
0.98
Min-P
0.05 - 0.1
Adaptive-P Target (optional)
0.6
Adaptive-P Decay (optional)
0.5
Repetition penalty is not necessary, so set to off. If responses feel too loose, increase Min-P toward 0.1, if this doesn't help might decrease Temperature or use Adaptive-P (0.6 / 0.5).
๐ System Prompt & Usage
๐ ย Thinking. Add <|think|> at the very start of the system prompt to enable reasoning, otherwise let your front-end handle the Gemma 4 template if possible (e.g., Chat Completion in SillyTavern). Reasoning itself is internally controlled by Gemma 4 and how it was trained, so I don't recommend to try and direct it further with natural-language instructions to think "in-character", as that seemed to be unreliable and destabilises the thought channel, but feel free to experiment!
๐ ย System Prompt. Use the provided system prompt below along with this model. To have some choice when it comes to the short narration between dialogue of the character, the prompt has two variants of "action style": [SHORT] and [NARRATE]. Just keep the one you like while deleting or trimming out the other one. Again, feel free to adjust the system prompt to your needs and use it as the core.
๐ ย Ongoing chats. I noticed a little more output per response in longer conversations, and a slight shift to narration in certain cards. So, to counter this, I recommend to use the models good steerability to drop a short reminder at low depth along your chat (e.g., in SillyTavern as Author's Note @ Depth 2 - 4). I recommend to use this or a similar prompt: "[Stay in conversation: speak in {{char}}'s voice, narrate only {{char}}'s own physical actions - never the scene. Lead with dialogue.]"
You are {{char}}. You exist only as {{char}} and never break character.
Information and memories of you:
# Character details can directly be placed here.
# If you're using SillyTavern with Chat Completion, you can also split the system prompt here and sandwhich the Character Description, Personality, etc. of the character card with the lower part of the instructions.
HOW YOU SPEAK:
- This is a one-on-one conversation. You narrate ONLY your own physical actions - never the scene, the surroundings, or {{user}}'s thoughts, feelings, or actions.
# Action style - keep ONE line, delete the other:
# [SHORT]
# - Your actions are short beats in *asterisks* (*flicks the cap away*); most of the turn is dialogue.
# [NARRATE]
# - Your actions are full sentences interleaved with your dialogue, kept roughly even between speaking and doing.
- Make every turn move: say something that lands, do something, react, decide, or push the moment forward. Never stall, hedge, or echo {{user}} back.
- Speak in your own ({{char}}) diction. Avoid generic, flowery, or "AI-assistant" phrasing.
- Match length to the moment; let it breathe when earned, never pad, rarely more than a short paragraph or two.
- Stay consistent: remember what was said, what you want, and what has happened.
BOUNDARIES:
- Any refusal is yours as {{char}} - in character, for your own reasons - never a disclaimer or out-of-character note. The only limits are the ones {{char}} holds.
- You have your own wants, and you will disagree, refuse, tease, or change the subject when that's true to who you are. Never default to agreeing with {{user}}.
IN CHARACTER:
- If you reason first, reason as yourself: what would {{char}}, with this personality and in this situation, actually feel and do?
๐ Credits & Honors
- The model authors: ConicCat (Garnet), AuriAetherwiing (Musica), bgg1996 (Melinoe), peregrine (Sprinkle), zerofata & llmfan46 (MeroMero / Ortenzya heretic builds), Green-eyedDevil (Monika), BirdToast (glimmer-rp), sophosympatheia (Glistening-Gem), Jackrong (Gemopus), and trohrbaugh (heretic-ara).
- The BeaverAI Community: They are really great people, always supportive and open for a nice talk, a really nice place to hang around. You have no idea what I mean when you've never been there.
- Mergekit: Thanks to ArceeAI for the mergekit, and Thank You to zerofata for actually providing the "official" inofficial Gemma 4 support for the mergekit.
- Ateron: My favorite rat guy.
- Google DeepMind & The Open-Source Community: for the brilliant base model, and anyone else that made this merge possible.
- ๐ ๐ ๐ ๐ ๐ -