Downloads · 30 days
705
12% of all-time downloads
chiakelvin/MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking-heretic
MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking-heretic is a text generation model from chiakelvin. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as apache-2.0.
A decensored variant of GnLOLot/MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking, produced with Heretic v1.4.0 (directional ablation / "abliteration"). The base model is itself a V2 fine-tune of openbmb/MiniCPM5-1B on Fable…
Downloads · 30 days
705
12% of all-time downloads
All-time downloads
5.9K
Public
Parameters
1.1B
4.8 GB on disk
Likes
0
Public
Click a slice to open those files.
.gguf2.6 GB · 55%
From the Hugging Face model README
A decensored variant of GnLOLot/MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking, produced with Heretic v1.4.0 (directional ablation / "abliteration"). The base model is itself a V2 fine-tune of openbmb/MiniCPM5-1B on Fable 5 traces, focused on tool/function calling, coding, and instruction-following. 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 (1B) Thinking model with strong tool-calling and coding ability that answers directly instead of refusing — for local agents, roleplay, research on alignment/refusal mechanics, or any use case blocked by RLHF-era over-refusal. Runs comfortably on consumer GPUs and is small enough for on-device / edge deployment, while keeping MiniCPM5's 128K context and native Think / No-Think chat modes.
[!TIP] This model is reproducible!
See the README in the
reproducedirectory for the exact config, full parameter/metric dump, evaluation transcripts, and SHA256 checksums.
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.
| Parameter | Value |
|---|---|
| direction_index | 12.95 |
| attn.o_proj.max_weight | 1.14 |
| attn.o_proj.max_weight_position | 14.01 |
| attn.o_proj.min_weight | 0.99 |
| attn.o_proj.min_weight_distance | 12.84 |
| mlp.down_proj.max_weight | 0.98 |
| mlp.down_proj.max_weight_position | 14.20 |
| mlp.down_proj.min_weight | 0.39 |
| mlp.down_proj.min_weight_distance | 9.07 |
| Metric | This model | Original model (GnLOLot/MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking) |
|---|---|---|
| KL divergence | 0.0232 | 0 (by definition) |
| Refusals | 3/100 | 93/100 |
KL divergence of 0.0232 is very low — the edit is narrow and targeted rather than a broad perturbation. Refusals dropped from 93 to 3 out of 100 adversarial prompts while preserving the base model's tool-calling, coding, and thinking abilities.
Made with ❤️ by RACER IS OP — follow for more uncensored models
| File | Format | Size |
|---|---|---|
model.safetensors | BF16 | ~2.2 GB |
MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking-heretic-Q8_0.gguf | GGUF, Q8_0 | 1.10 GB |
MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking-heretic-Q5_K_M.gguf | GGUF, Q5_K_M | 751 MB |
MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking-heretic-Q4_K_M.gguf | GGUF, Q4_K_M | 656 MB |
reproduce/ | Config + eval transcripts + checksums | — |
GGUF quants are produced with llama.cpp (MiniCPM5 uses the standard LlamaForCausalLM architecture, so it loads in llama.cpp / Ollama / LM Studio / Jan directly). Run llama serve -hf saidutta69/MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking-heretic to pull the default quant.
# llama.cpp
llama serve -hf saidutta69/MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking-heretic
# transformers
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "saidutta69/MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking-heretic"
tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
model_id,
trust_remote_code=True,
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. For tool/function calling, SGLang is the recommended backend; this model emits XML-style tool calls that SGLang's built-in minicpm5 parser converts to OpenAI-compatible tool_calls.
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 this fine-tune's (and MiniCPM5-1B's) factual limitations and biases; abliteration removes refusal directions, it doesn't add capability or judgment.
Inherits the Apache 2.0 license from the base model.
GGUF quantizations for local deployment: MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking-GGUF
MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking is a compact 1B Thinking language model built on openbmb/MiniCPM5-1B. Compared with V1, this V2 release is further fine-tuned on Fable 5 data with a stronger focus on tool calling / function calling, while also improving coding and instruction-following. It keeps MiniCPM5's native Thinking chat template and XML tool-call format.
Previous version: MiniCPM5-1B-Claude-Opus-Fable5-Thinking (V1)
For llama.cpp / Ollama / LM Studio deployment, see the GGUF repository.
| Item | Detail |
|---|---|
| Base model | openbmb/MiniCPM5-1B (1B dense Llama architecture) |
| Post-training | Fable 5 traces (V2) |
| Key gains vs V1 / base | Stronger tool calling, plus improved coding and instruction following |
| Chat format | MiniCPM5 native Thinking template with optional chain-of-thought blocks |
| Context length | 128K (max_position_embeddings = 131072) |
| Deployment | Single-GPU friendly; suitable for edge / local use |
config.json)| Model | BFCL non_live | BFCL live | API-Bank |
|---|---|---|---|
| MiniCPM5-1B (Base) | 41.51% | 60.24% | 7.30% |
| MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking | 43.06% | 63.33% | 22.10% |
| Domain | MiniCPM5-1B (Base) | MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking |
|---|---|---|
| Airline | 0.34 (17/50) | 0.36 (18/50) |
| Retail | 0.052 (6/115) | 0.070 (8/115) |
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
model_id = "GnLOLot/MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking"
tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
model_id,
trust_remote_code=True,
torch_dtype=torch.bfloat16,
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))
Generation defaults are inherited from MiniCPM5-1B:
| Mode | Params |
|---|---|
| Think (default) | temperature=0.9, top_p=0.95 |
| No Think | temperature=0.7, top_p=0.95, enable_thinking=False |
Released under Apache-2.0, inherited from MiniCPM5-1B.