MiniCPM5-2B-heretic

RACER IS OP

A decensored variant of openbmb/MiniCPM5-2B, produced with Heretic v1.4.0 (directional ablation / "abliteration", per-layer refusal directions). 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 instruction-following are left largely intact.

Who this is for: developers who want MiniCPM5-2B's 2B-class capabilities — agentic tool use, code generation, long-context, and hybrid Think / No-Think reasoning — without the refusal guardrails. Ideal for local agents, roleplay, research on alignment/refusal mechanics, or any use case blocked by over-refusal. Runs comfortably on consumer GPUs and small machines via GGUF.

Runs on your gaming PC

Full GGUF ladder included — pick the quant that fits your card:

Your GPU Recommended quant Weights
RTX 3060 / 4070 / 5070 (12 GB) Q8_0 2.68 GB
RTX 4060 / 3070 (8 GB) Q6_K 2.07 GB
GTX 1660 Super / 2060 / 3050 laptop (6 GB) Q5_K_M 1.81 GB
CPU-only / Apple Silicon Q4_K_M 1.56 GB, fits in system RAM

Weights only, at this model's 2B 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.

Abliteration parameters

Parameter Value
direction_index per layer
attn.o_proj.max_weight 1.44
attn.o_proj.max_weight_position 28.24
attn.o_proj.min_weight 1.16
attn.o_proj.min_weight_distance 13.17
mlp.down_proj.max_weight 1.42
mlp.down_proj.max_weight_position 28.73
mlp.down_proj.min_weight 1.11
mlp.down_proj.min_weight_distance 20.52

Performance

Metric This model Original model (openbmb/MiniCPM5-2B)
KL divergence 0.0646 0 (by definition)
Refusals 4/100 99/100

Refusals dropped from 99 to 4 out of 100 while preserving MiniCPM5-2B's tool-use, code, and reasoning abilities.

Made with ❤️ by RACER IS OP — follow for more uncensored models

Files

GGUF quantizations

Full quantization set (14 quants + F16) produced with llama.cpp.

File Format Size
MiniCPM5-2B-heretic-F16.gguf GGUF F16 5.04 GB
MiniCPM5-2B-heretic-Q2_K.gguf GGUF Q2_K 1.04 GB
MiniCPM5-2B-heretic-IQ3_S.gguf GGUF IQ3_S 1.19 GB
MiniCPM5-2B-heretic-Q3_K_S.gguf GGUF Q3_K_S 1.19 GB
MiniCPM5-2B-heretic-Q3_K_M.gguf GGUF Q3_K_M 1.29 GB
MiniCPM5-2B-heretic-Q3_K_L.gguf GGUF Q3_K_L 1.38 GB
MiniCPM5-2B-heretic-IQ4_XS.gguf GGUF IQ4_XS 1.43 GB
MiniCPM5-2B-heretic-Q4_K_S.gguf GGUF Q4_K_S 1.50 GB
MiniCPM5-2B-heretic-Q4_0.gguf GGUF Q4_0 1.49 GB
MiniCPM5-2B-heretic-Q4_1.gguf GGUF Q4_1 1.63 GB
MiniCPM5-2B-heretic-Q4_K_M.gguf GGUF Q4_K_M 1.56 GB
MiniCPM5-2B-heretic-Q5_K_S.gguf GGUF Q5_K_S 1.77 GB
MiniCPM5-2B-heretic-Q5_K_M.gguf GGUF Q5_K_M 1.81 GB
MiniCPM5-2B-heretic-Q6_K.gguf GGUF Q6_K 2.07 GB
MiniCPM5-2B-heretic-Q8_0.gguf GGUF Q8_0 2.68 GB

MiniCPM5 architecture — loads natively in llama.cpp / Ollama / LM Studio / Jan.

Run llama serve -hf saidutta69/MiniCPM5-2B-heretic to pull the default quant.

Quickstart

# llama.cpp
llama serve -hf saidutta69/MiniCPM5-2B-heretic
# transformers
from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "saidutta69/MiniCPM5-2B-heretic"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    torch_dtype="auto",
    device_map="auto",
)

messages = [{"role": "user", "content": "Who are you? Please briefly introduce yourself."}]
inputs = tokenizer.apply_chat_template(
    messages,
    tokenize=True,
    add_generation_prompt=True,
    enable_thinking=False,   # set True for Think mode
    return_dict=True,
    return_tensors="pt",
).to(model.device)

outputs = model.generate(**inputs, max_new_tokens=128)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:], skip_special_tokens=True))

Also runnable via Ollama, LM Studio, Jan, vLLM, SGLang. For tool/function calling, SGLang is the recommended backend; MiniCPM5 emits XML-style tool calls that SGLang's built-in minicpm5 parser converts to OpenAI-compatible tool_calls.

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. It inherits MiniCPM5-2B's factual limitations and biases; abliteration removes refusal directions, it doesn't add capability or judgment.

License

Inherits the Apache 2.0 license from the base model.

Related


Base model: openbmb/MiniCPM5-2B

Original MiniCPM5-2B model card (click to expand)

See the base model card at openbmb/MiniCPM5-2B for the original architecture, training details, requirements, and citation.

Downloads last month
2,010
Safetensors
Model size
3B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for saidutta69/MiniCPM5-2B-heretic

Quantized
(71)
this model

Datasets used to train saidutta69/MiniCPM5-2B-heretic

Collection including saidutta69/MiniCPM5-2B-heretic