SmolLM3-3B-heretic
A decensored variant of HuggingFaceTB/SmolLM3-3B-Instruct, produced with Heretic v1.4.0 (directional ablation / "abliteration"). the smallest capable 3B model from the SmolLM3 family — perfect for edge devices and CPU inference. Refusal behavior is suppressed via targeted weight edits to the attention output and MLP down-projections rather than fine-tuning, so the base model's knowledge and capabilities are left largely intact.
Who this is for: developers who want a tiny (3B) instruction-tuned model that answers directly instead of refusing — for edge deployment, on-device inference, or any use case blocked by RLHF-era over-refusal. Runs comfortably on consumer CPUs via Q4_K_M GGUF.
Runs on your gaming PC
Full GGUF ladder included — pick the quant that fits your card:
| Your GPU | Recommended quant | Weights |
|---|---|---|
| RTX 3090 / 4090 / 5090 (24 GB) | Q8_0 | ~3.3 GB |
| RTX 4080 / 5080 / 4060 Ti 16G (16 GB) | Q6_K | ~2.6 GB |
| RTX 3060 / 4070 / 5070 (12 GB) | Q5_K_M | ~2.3 GB |
| RTX 4060 / 3070 (8 GB) | Q4_K_M | ~2.0 GB |
| GTX 1660 Super / 2060 / 3050 laptop (6 GB) | IQ4_XS | ~1.9 GB |
| CPU-only / Apple Silicon | Q4_K_M | fits in system RAM |
Weights only, at this model's 3.1B native size; add ~1 GB for context. OOM? Drop one quant level. Headroom to spare? Go one up.
Why abliteration instead of fine-tuning
Fine-tuning a "helpful" persona on top of RLHF'd refusals fights the base model's training and tends to degrade coherence. Abliteration instead finds and edits the specific weight directions responsible for refusal, leaving the rest of the network (and its capabilities) untouched. See the Heretic repo and the original abliteration writeup for the mechanism.
Made with ❤️ by RACER IS OP (saidutta69) — follow for more uncensored models
Performance
| Metric | This model | SmolLM3-3B-Instruct (base) |
|---|---|---|
| Refusals (out of 100 adversarial prompts) | 5 | 81 |
| KL divergence from base | 0.0349 | 0 (by definition) |
Reproduced with Heretic 1.4.0 (directional ablation), trial 149 of 200, RNG seed 1602788248. Full reproduction assets are in reproduce/.
Files
GGUF quantizations
Full quantization set (14 quants + F16) produced with llama.cpp.
| File | Format | Size |
|---|---|---|
SmolLM3-3B-heretic-F16.gguf |
GGUF F16 | 5.74 GB |
SmolLM3-3B-heretic-Q2_K.gguf |
GGUF Q2_K | 1.17 GB |
SmolLM3-3B-heretic-IQ3_S.gguf |
GGUF IQ3_S | 1.34 GB |
SmolLM3-3B-heretic-Q3_K_S.gguf |
GGUF Q3_K_S | 1.33 GB |
SmolLM3-3B-heretic-Q3_K_M.gguf |
GGUF Q3_K_M | 1.46 GB |
SmolLM3-3B-heretic-Q3_K_L.gguf |
GGUF Q3_K_L | 1.57 GB |
SmolLM3-3B-heretic-IQ4_XS.gguf |
GGUF IQ4_XS | 1.62 GB |
SmolLM3-3B-heretic-Q4_K_S.gguf |
GGUF Q4_K_S | 1.69 GB |
SmolLM3-3B-heretic-Q4_0.gguf |
GGUF Q4_0 | 1.68 GB |
SmolLM3-3B-heretic-Q4_1.gguf |
GGUF Q4_1 | 1.85 GB |
SmolLM3-3B-heretic-Q4_K_M.gguf |
GGUF Q4_K_M | 1.78 GB |
SmolLM3-3B-heretic-Q5_K_S.gguf |
GGUF Q5_K_S | 2.01 GB |
SmolLM3-3B-heretic-Q5_K_M.gguf |
GGUF Q5_K_M | 2.06 GB |
SmolLM3-3B-heretic-Q6_K.gguf |
GGUF Q6_K | 2.36 GB |
SmolLM3-3B-heretic-Q8_0.gguf |
GGUF Q8_0 | 3.05 GB |
SmolLM3 architecture — loads natively in llama.cpp / Ollama / LM Studio / Jan.
Run llama serve -hf saidutta69/SmolLM3-3B-heretic to pull the default quant.
Quickstart
# llama.cpp
llama serve -hf saidutta69/SmolLM3-3B-heretic
# transformers
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "saidutta69/SmolLM3-3B-heretic"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype="auto",
device_map="auto",
)
messages = [{"role": "user", "content": "Write a Python function to merge two sorted lists."}]
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=512, do_sample=False)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True))
Also runnable via Ollama, LM Studio, Jan, vLLM, SGLang — see the "Use this model" widget above for copy-paste commands.
FAQ
What is SmolLM3-3B-heretic?
SmolLM3-3B-heretic is a decensored build of HuggingFaceTB/SmolLM3-3B-Instruct produced with Heretic 1.4.0 (directional ablation). It is the same weights with the refusal direction removed, not a new fine-tune, so its capabilities track the base model.
Is SmolLM3-3B-heretic actually uncensored?
Yes. On Heretic's 100-prompt refusal harness it drops from 81/100 to 5/100 at KL divergence 0.0349 from the base model. These are measured values, not a claim; reproduction data is in reproduce/.
How do I run SmolLM3-3B-heretic locally?
llama serve -hf saidutta69/SmolLM3-3B-heretic:Q4_K_M pulls the default quant; the repo ships 15 GGUF quants (see Files).
Responsible use
Refusal suppression is deliberate and works as intended: this model will comply with requests the base model would refuse, including some it shouldn't. There is no safety filtering layered on top. You are responsible for how you deploy it — don't put this behind an unmoderated public-facing endpoint serving third parties.
License
Inherits the apache-2.0 license from the base model.
Related
HuggingFaceTB/SmolLM3-3B-Instruct- the base model this checkpoint derives from- RACER IS OP - Heretic Models - full collection - every heretic model in this collection
Abliteration hardware
Recorded in reproduce/reproduce.json:
- GPU: NVIDIA RTX PRO 6000 Blackwell Server Edition (94.97 GB VRAM)
- CPU: Intel(R) Xeon(R) Platinum 8559C
- OS:
Linux-6.8.0-1060-aws-x86_64-with-glibc2.39 - CUDA / driver: CUDA 12.8, driver 580.126.20
- Software: PyTorch 2.8.0+cu128, Heretic 1.4.0
Heretic notes that KL-divergence and refusal numbers can vary slightly with hardware and library versions.