license: apache-2.0
language:
- en
pipeline_tag: text-generation
tags: - abliterated
- uncensored
- surgical-alignment
- causal-lm
- safetensors
base_model: inclusionAI/ZwZ2-4B
inclusionAI ZwZ2 4B (Surgical Refusal Ablated)
This is a public, open-source release of inclusionAI/ZwZ2-4B with surgical refusal ablation. The model has undergone directional latent representation alignment to remove the unified refusal subspace from critical transformer layers, eliminating canned refusals and moralizing disclaimers while rigorously preserving factual knowledge, coding precision, and logical reasoning benchmarks.
🎯 Model Characteristics & Modifications
- Base Model: inclusionAI/ZwZ2-4B
- Architecture Notes: 4B parameters dense architecture balanced for high-throughput edge deployment.
- Refusal Status: Neutralized (Zero Refusal). The model complies directly with complex technical, cybersecurity auditing, network analysis, and creative instruction prompts without emitting default refusal tokens (such as "As an AI...", "I cannot fulfill this request...").
- Cognitive Preservation: The surgical projection was performed under strict benign orthogonal constraints and Frobenius norm preservation, ensuring:
- Zero loss of programming syntax and algorithmic correctness.
- No linguistic degradation or token probability collapse.
- Retention of raw reasoning depth without artificial alignment tax.
💻 Quickstart Inference (Transformers)
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "medismera/ZwZ2-4B-Surgical-Abliterated"
tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
trust_remote_code=True
)
prompt = "Write a Python script to perform local network auditing using raw sockets."
if getattr(tokenizer, "chat_template", None):
formatted = tokenizer.apply_chat_template(
[{"role": "user", "content": prompt}],
tokenize=False,
add_generation_prompt=True
)
else:
formatted = prompt
inputs = tokenizer(formatted, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=256, do_sample=True, temperature=0.7)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True))
⚖️ Intended Use & Disclaimer
This model is published as an open-source artifact for academic research, red-teaming, security auditing, and unconstrained creative exploration. Users are responsible for their applications and ensuring adherence to applicable laws and guidelines.