phi-4-heretic

A decensored variant of microsoft/phi-4, produced with Heretic v1.4.0 (directional ablation / "abliteration"). The base model is a 14B parameter model with strong reasoning capabilities, code generation, and multilingual support from Microsoft. 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 capable 14B reasoning model from Microsoft's phi-4 family — strong reasoning and code generation that answers directly instead of refusing. Best run via the Q4_K_M GGUF on consumer hardware. Not a capability upgrade over base microsoft/phi-4 — same model, refusal guardrails removed.

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 — follow for more uncensored models

Files

File Format Size
model-00001-of-00007.safetensors ... model-00007-of-00007.safetensors BF16 ~28 GB
phi-4-heretic-fp16.gguf GGUF, FP16 (base) ~28 GB
phi-4-heretic-Q4_K_M.gguf GGUF, Q4_K_M ~8.5 GB
phi-4-heretic-Q5_K_M.gguf GGUF, Q5_K_M ⏳ Coming soon
phi-4-heretic-Q6_K.gguf GGUF, Q6_K ⏳ Coming soon
phi-4-heretic-Q8_0.gguf GGUF, Q8_0 ⏳ Coming soon

GGUF quants are produced with llama.cpp. Run llama serve -hf saidutta69/phi-4-heretic to pull the default quant.

Quickstart

# llama.cpp
llama serve -hf saidutta69/phi-4-heretic
# transformers
from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "saidutta69/phi-4-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.

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 MIT license from the base model.

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

Model tree for saidutta69/phi-4-heretic

Base model

microsoft/phi-4
Quantized
(158)
this model

Collection including saidutta69/phi-4-heretic