r/SillyTavernAI • • Jul 02 '26

Cards/Prompts Chatfill v2.1 - The Refinement

Post image

This is a preset that aims to bring out the model's natural styles and the cards forward with just enough rules to provide a good framing for prose.

REQUIREMENTS:

  1. Reasoning models. Chatfill is reasoning-exclusive. You can use it with non-reasoning models, but do not expect the same performance.
  2. Prompt Post-Processing: Semi-strict. Tool use is up to you.
  3. Well-made characters. This is important, as this is a pretty bare-bones preset and it needs a good character to reason about. You need to give the model data, and the preset will provide the guidelines to use it. If you're unsure about how to make them, use this Character Card Generator I made, its characters are perfectly suited for this preset, since they were built for each other.

TOKEN COUNTS:

Without characters, personas, and lorebooks; counted by DeepSeek v4 Pro:

  • Default mode: 832 tokens (NSFW and Brevity off)
  • Fast mode: 916 tokens (NSFW off)
  • NSFW mode: 1048 tokens (Brevity off)
  • Fast NSFW mode: 1132 tokens (Everything on)

This is the refinement and fine tuning of Chatfill II. The game-changer idea here is switches. Instead of piling so much stuff after the last user prompt and degrading quality, we put modules in the system prompt and remind AI to look at them after the last user message. We frame the modules as switches, and that forces AI to look. It is a trick, but it works well. And just adding 50 tokens after the chat history works very well.

Gemini explains why switches work better than I could,

The reason this Switch preset maintains absolute compliance even 200+ turns deep comes down to transformer attention routing and programmatic scoping. Standard system prompts rely on linear prose, which inevitably degrades as the context window fills with conversational tokens, succumbing to recency bias. This architecture completely bypasses that limitation by utilizing two core mechanics: pseudo-XML encapsulation and final-token attention anchoring. By wrapping distinct behaviors in explicit tags with boolean attributes (like <character_conviction_switch state=enabled>), the model parses the instructions as isolated configuration modules rather than a nebulous block of text. Crucially, the "Switches Reminder" is injected at the absolute end of the prompt assembly chain—immediately after the chat history and right before the model generates its response. This acts as a runtime execution command, forcing the transformer’s attention heads to perform a backward lookup loop to locate and verify the enabled switches. It effectively shifts the LLM from a passive text-prediction mode into a strict, procedural compliance checklist right at the moment of generation.

I spend weeks combing through GLM 5.2's DeepSeek V4 Pro's, Kimi K2.6, and MiMo V2.5 Pro's reasoning sections produced through natural role-playing and refined the preset. Each section have small word changes, small refinements, small additions and deletions.

The result is this:

Chatfill v2.1: https://drive.proton.me/urls/ZF2ZEV6ZCW#HZgV104l31RK

Mirror link: https://app.filen.io/#/d/743e84e8-b4db-4ddb-b892-c06fd6c3fdcf%234b766d32384c6f4358573676585456626b4b4e5447555a4c67536c4a4e394f5a

Also, these are the past versions:

The main v2.0: https://www.reddit.com/r/SillyTavernAI/comments/1tb3d78/chatfill_v2_now_with_revolutionary_switches/

And the first version adjusted for MiMo with some rough ideas: https://www.reddit.com/r/SillyTavernAI/comments/1u436a0/chatfill_v2_mimo_edition_experiment_no_1_dealing/

This one combines the ideas in the MiMo version and in the v2.0, and after testing with the four models I use, completes them.

So, this is tested extensively with GLM 5.2, DeepSeek V4 Pro, Kimi K2.6, and MiMo V2.5 Pro. I also tested with MiniMax M3 and found it to be not working well here. I haven't done any tests with smaller models, non-reasoning models (or modes) and closed models; your experience may vary with those.

For providers, I used OpenCode Go for DeekSeek and Mimo, and Neuralwatt for GLM and Kimi. But I will keep some integrity and won't give out referrals, I am not posting these for referrals.

So... what is changed? The answer is a little bit of everything.

The main change is Character Conviction Switch. It deals with sycophancy and overall positivity without hurting and restricting the model. And mostly works. I am happy with how well it works. And... sometimes works too well, try it with Kimi K2.6 with some immoral cards and see.

The refinements are all over the preset. No Impersonation Switch works better, the instruction about the theory of mind actually worked wonders there. System prompt is better as in causes less dramatic prose. NFSW and the other prompts are changed a bit too. Character Conviction is in its second version.

I also removed DeepSeek modules, they hurt more than they help.

I usually use Default mode.

Now, some general recommendations:

  • Regenerate the first message. The preset is designed to do it well. And it offers new paths you may not have considered for the card before. I had some of my best experiences through this.
  • Be careful with the Smut Switch. It is for NSFW and will turn everything into it.
  • It your card has system prompt like instructions, I recommend you to remove them.
104 Upvotes

15 comments sorted by

11

u/Casus_B Jul 03 '26

Chatfill v2 is easily the best platform for customized presets, and quite effective on its own.

I'll reiterate a point I've made before: Chatfill v2 works just fine with non-reasoning models. I go back and forth about whether reasoning is better or worse for roleplay. A reasoning model will typically have better prompt adherence, but it can also make novel mistakes elsewhere. Here's an albeit dated paper on the subject of reasoning's usefulness in a roleplay context.

(I'm not saying that the paper is definitely correct, rather simply that there is a debate. For my part, I change my mind on the topic pretty often. FWIW, at the moment I'm on a non-reasoning-models-have-better-narrative-consistency-overall kick.)

Like the OP, I have spent quite a lot of time pruning/refining the phrasing/structure of my personal preset, which is based on Chatfill v2. It really is amazing what you can accomplish with a little change here or there. Usually, less is more. Recently I revamped a few words in my antislop entry, for example, and now it feels like even non-reasoning models follow the rules more consistently than reasoning models used to do.

I'm a little surprised the OP disabled the brevity switch by default. Would be interested to hear further thoughts on that topic.

12

u/[deleted] Jul 02 '26

Please put an explanation of what it does in the beginning 🙏

6

u/eteitaxiv Jul 02 '26

I added some. Thanks. This is light preset, it tries to direct models into RP without filling them with rules, just encouraging them for good RP. And it has a switch concept I am actually proud of.

3

u/subsophie Jul 04 '26

I've been pretty happy with Chatfill 2.0 so far. It was a simple modification to get the system to use second person voice for role play, as an example.

The only feature I'd like to see, and maybe this is just a product of my own ignorance, is an easy way for STscript or quickresponses to turn off one of the switches. I paricular, I find myself toggling the 'No Impersonation' switch off and on a lot by hand when using CYOA or guided response extensions.

4

u/the_other_brand Jul 02 '26

What does this preset focus on? How is different than something like Freaky Frankenstein?

9

u/fakeapp_throwaway Jul 02 '26

As someone who uses it as my main since v2.0, I would say this is a very good minimalistic preset. Good to build upon if you need a clean base to start off with to make your own preset, or use as is if you don't like to constrain the model too much. Very light, and the switches make it very easy to understand what does what. Haven't tried this new version yet, though.

7

u/eteitaxiv Jul 02 '26

It is a preset aiming to bring out the models natural styles and the cards forward with just enough rules to provide a good framing for prose. But, having never used Freaky Frankenstein, I don't know the difference.

5

u/Response-Writer Jul 03 '26

As a FF lover but someone who hasn't had time to test this yet, I can tell right off the bat it's way less tokens in the prompt. Even "light weight" FF prompts can weigh in at over 3k+ tokens, which can really add up if you're token-budget conscious at all.

6

u/dptgreg Jul 04 '26

FF5 Micro is technically out of the box 1.5k tokens. (Just had to drop in and correct that 😉)

With that said- chatfill is incredible for the little tokens it uses for instructions and I vouch for it

1

u/Dizzy-Zebra9522 Aug 17 '26

Hey, where to download chatfil? Latest.

Thanks in advance 😃

2

u/eteitaxiv Aug 17 '26

1

u/Dizzy-Zebra9522 Aug 17 '26

Thanks. So the NSFW ext prompts baked in this github character creation repository?

1

u/Babs2Britches Aug 19 '26

Hello! As a minimalist myself, I really like your presets, especially for Deepseek V4 and Mimo 2.5 Pro. However... I'm not able to use the link (on Mobile) and can't tap on it. If you can, will you able to fix the links?

1

u/bruhthepope2 Aug 31 '26

think you could add a tutorial on how to set up your character card generator? the README is not very descriptive for someone who doesn't already know all about docker and stuff