Escarda-86M-Base-JL — Antidoom
A tuned build of Escarda-86M-Base-JL (86M parameters, SpikeWhaleLM) that
eliminates repetition loops and follows a change of subject in conversation.
Ships as a fully merged standalone model — no adapters or base model needed.
Scores
Measured over 90 generations (30 prompt stems x 3 temperatures) for loops, and 6 held-out topic switches in multi-turn chat for topic adherence.
| base | this model | |
|---|---|---|
| repetition loops | 90% of generations | 0% |
| topic adherence (1.0 = fully follows a subject change) | 0.33 | 1.00 |
| topic switches answered on the old subject | 4 / 6 | 0 / 6 |
| bigram diversity (distinct-2) | 0.148 | 0.874 |
| held-out perplexity (wikitext-2 test, 30,720 tokens) | 8.22 | 8.72 |
Perplexity rises 6.0%.
Decoding matters
The loop and topic scores above are measured with effort decoding
(effort_decode.py, included). Greedy decoding on this model does not reach
them. Use the included script, or the same approach in your own loop.
python effort_decode.py --model Quazim0t0/Escarda-86M-Base-JL-Antidoom \
--prompt "<|im_start|>user\nHow do I change a car tyre?<|im_end|>\n<|im_start|>assistant\n" \
--question "How do I change a car tyre?" --level high
Effort levels trade compute for quality: low is a single sample, high draws
six and returns the best. On 2 CPU threads at 120 new tokens, low is ~3s and
high ~22s.
Usage
import torch
from transformers import AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained(
"Quazim0t0/Escarda-86M-Base-JL-Antidoom",
trust_remote_code=True, dtype=torch.float32).eval()
Pass explicit position_ids during cached decode, as the base architecture
requires. Chat format is ChatML (<|im_start|>role\n...<|im_end|>).
Limitations
- 86M parameters and not instruction-tuned for factual accuracy. Output is often wrong on facts; only repetition and topic behaviour were targeted.
- Topic adherence is measured on 6 held-out switches — enough to establish the effect, not to give a precise figure.
- The loop detector used for scoring misses slow-alternating repetition, so
distinct-2is reported alongside it.