Finally here, Chaifighter Latte is the successor to the Chaifighter 20B models. Like its predecessors, it is Mistral-based, but now it is dramatically reduced in size. Chaifighter Latte is formulated for creative, rich, verbose writing without sacrificing intelligence, awareness, and context-following abilities. Chaifighter Latte retains the great taste of the original, and despite being significantly lighter at 14 billion parameters, it performs even better. Try it for yourself!
Prompt Template: Alpaca
Below is an instruction that describes a task. Write a response that appropriately completes the request.
### Instruction:
{prompt}
### Response:
Recommended Settings: Universal-Light
Here are some settings ranges that tend to work for me. They aren't strict values, and there's a bit of leeway in them. Feel free to experiment a bit!
Temperature: 1.0to1.25 (adjust to taste, but keep it low. Chaifighter is creative enough on its own)
Min-P: 0.1 (increasing might help if it goes cuckoo, but I suggest keeping it there)
Repetition Penalty: 1.05to1.1 (high values aren't needed and usually degrade output)
Rep. Penalty Range: 256or512
(all other samplers disabled)
The Deets
Mergekit
This is a merge of pre-trained language models created using mergekit.
Merge Method
This model was merged using the passthrough merge method.
The following YAML configuration was used to produce this model:
yaml
1slices:2-sources:3-model: SanjiWatsuki/Kunoichi-7B
4layer_range:[16,24]5merge_method: passthrough
6dtype: float32
7name: Kuno-splice
8---9slices:10-sources:11-model: Sao10K/Fimbulvetr-11B-v2
12layer_range:[8,16]13merge_method: passthrough
14dtype: float32
15name: Fimbul-splice
16---17models:18-model: Kuno-splice
19parameters:20weight:[1,1,0.75,0.625,0.5,0.375,0.25,0,0]# 0.125 / 0.875 values removed here - "math gets screwy" 21-model: Fimbul-splice
22parameters:23weight:[0,0,0.25,0.375,0.5,0.625,0.75,1,1]# 0.125 / 0.875 values removed here - "math gets screwy" 24merge_method: dare_linear # according to some paper, "DARE is all you need"25base_model: Kuno-splice
26dtype: float32
27name: Kuno-Fimbul-splice
28---29models:30-model: Sao10K/Frostwind-v2.1-m7
31-model: Gryphe/MythoMist-7b
32parameters:33weight:0.3734density:0.835merge_method: dare_ties
36base_model: Sao10K/Frostwind-v2.1-m7
37dtype: float32
38name: Frosty-Mytho
39---40slices:41-sources:42-model: Sao10K/Fimbulvetr-11B-v2
43layer_range:[32,40]44merge_method: passthrough
45dtype: float32
46name: Fimbul-splice-247---48slices:49-sources:50-model: Frosty-Mytho
51layer_range:[8,16]52merge_method: passthrough
53dtype: float32
54name: Frosty-Mytho-splice
55---56models:57-model: Fimbul-splice-258parameters:59weight:[1,1,0.75,0.625,0.5,0.375,0.25,0,0]# 0.125 / 0.875 values removed here - "math gets screwy" 60-model: Frosty-Mytho-splice
61parameters:62weight:[0,0,0.25,0.375,0.5,0.625,0.75,1,1]# 0.125 / 0.875 values removed here - "math gets screwy" 63merge_method: dare_linear # according to some paper, "DARE is all you need"64base_model: Fimbul-splice-265dtype: float32
66name: Fimbul-Frosty-Mytho-splice
67---68slices:69-sources:# kunoichi70-model: SanjiWatsuki/Kunoichi-7B
71layer_range:[0,16]72-sources:# kunoichi gradient fimbul splice73-model: Kuno-Fimbul-splice
74layer_range:[0,8]75-sources:# fimbulvetr76-model: Sao10K/Fimbulvetr-11B-v2
77layer_range:[16,32]78# insert splice here79-sources:# fimbulvetr gradient fwmm splice80-model: Fimbul-Frosty-Mytho-splice
81layer_range:[0,8]82-sources:# frostwind + mythomist83-model: Frosty-Mytho
84layer_range:[16,32]85merge_method: passthrough
86dtype: float32
87name: Chaifighter-Latte-14B
The Thought Process
So, I wanted the first layers to be Kunoichi. Kunoichi was chosen for its strong context and instruct following abilities, as well as being a really smart model overall. Plus, it's not sloutch at RP. I think this is partly what gave previous Chaifighter models the awareness that many people liked. To best harness its stellar prompt processing performance, I put Kunoichi at the head of the stack.
Next, I applied a gradient merge that I call a "splice". Splicing models like this solves what I believe has significantly hurt the earlier Chaifighter models and many other frankenmerges, which is layer dissimilarity. Splicing the end of one stack from model A with the beginning of another stack of model B in theory helps smoothen over those differences and help bring everything together.
The second model I introduced is Fimbulvetr-v2. This should be no surprise, as it's also a well-established ingredient of the Chaifighter recipe. Boasting incredibly strong coherence, it is the glue that can hold a story together, even with multiple characters and over longer contexts. I felt like the best place for Fimbulvetr was right after Kunoichi.
Another splice.
Lastly, I picked Frostwind and MythoMist as the final layers in this merge. I wanted to introduce MythoMist into the merge as I felt like it was what gave Chaifighter its flavorful writing. I paired it with Frostwind, as it's a very creative writer as well, and I felt like the two (with more emphasis on Frostwind for consistency) produced high quality outputs up to my standards.
I'm super tired right now, sorry if some of this is hard to follow or if there are any goofy mistakes anywhere. I'll fix them, eventually
Thanks for looking at my model, and have a fantastic day! :)