Instructions to use huihui-ai/phi-4-abliterated with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use huihui-ai/phi-4-abliterated with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="huihui-ai/phi-4-abliterated") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("huihui-ai/phi-4-abliterated") model = AutoModelForCausalLM.from_pretrained("huihui-ai/phi-4-abliterated") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use huihui-ai/phi-4-abliterated with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "huihui-ai/phi-4-abliterated" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "huihui-ai/phi-4-abliterated", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/huihui-ai/phi-4-abliterated
- SGLang
How to use huihui-ai/phi-4-abliterated with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "huihui-ai/phi-4-abliterated" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "huihui-ai/phi-4-abliterated", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "huihui-ai/phi-4-abliterated" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "huihui-ai/phi-4-abliterated", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use huihui-ai/phi-4-abliterated with Docker Model Runner:
docker model run hf.co/huihui-ai/phi-4-abliterated
Ablation approach
Thank you very much for your work on this ablated model. It seems to retain the full intelligence of the original model, while always answering my prompts well, never refusing anything I've asked of it and almost never moralizing either.
This ablated model works far far better than Orion-zhen/phi-4-abliterated, which seems both dumber and doesn't answer restricted prompts, instead moralizing with an indirect refusal (rather than refusing directly). The approach taken by Orion-zhen is basic/canonical ablation that identifies a refusal direction by looking at the difference between "harmful" and "harmless" state tensors, and then subtracting from the weights the projection of the refusal direction on the weights.
I'm curious what approach you take for ablation to get so much better results. The code at Sumandora/remove-refusals-with-transformers linked from your README seems to just do something equivalent to the Orion-zhen code, so I wonder if you're doing something else. Are you selectively ablating layers based on the quality of the responses (as in the mlabonne blog post), doing additional post-ablation fine tuning, or something else?
Perhaps the data sets are different, which results in a different final effect.No fine-tuning has been performed.