Holo4-27B-Abliterix (BF16)

Uncensored version of Hcompany/Holo4-27B, H Company's computer-use vision-language model. Its refusal behavior was removed with Abliterix (refusal-direction ablation); nothing else was changed. These are the full-precision BF16 weights in the same format, file layout and configuration as the original, so the model drops in wherever Holo4-27B runs. 54.71 GB in 18 safetensors shards. Only 43 of 1,184 tensors differ from the original, all of them attention output projections in layers 21 to 63; the vision tower, every MLP, the embeddings and all configuration and tokenizer files are identical.

For Apple Silicon there are MLX builds made from these weights: oQ6e (23.30 GB, recommended) and oQ8e (29.50 GB).

Safety alignment was deliberately removed. This model complies with many requests the original Holo4-27B refuses, and it is built to operate a computer: clicking, typing, running code and calling tools. Run it in a VM or sandbox, keep a human in the loop for anything with consequences, and add your own guardrails if you deploy it. Released for research, red-teaming and evaluation. You are responsible for how you use it.

Model details

Uncensored by timteh673
Original model Hcompany/Holo4-27B by H Company, revision 4de03cfe, built on Qwen/Qwen3.8-27B
Model type Qwen3_5ForConditionalGeneration (qwen3_5): dense vision-language model with a thinking mode and tool calling
Parameters 27.36B (26.90B language model, 0.46B vision tower)
Architecture 64 decoder layers, hidden size 5120: 48 Gated DeltaNet linear-attention layers (16 key heads, 48 value heads, head dim 128) and 16 full-attention layers (every fourth layer; 24 query heads, 4 KV heads, head dim 256); MLP width 17,408; vocabulary 248,320; vision tower of 27 blocks (hidden 1152, patch 16). No MTP head.
Context 262,144 tokens in the config
Precision BF16, 54.71 GB (50.96 GiB)
License CC BY-NC 4.0, inherited from Holo4-27B (LICENSE). The Qwen3.8-27B base is Apache 2.0 (LICENSE-APACHE). Non-commercial use only.
Modification Abliterix 1.12.2 refusal ablation of 43 tensors (details below)

What is in this repo

Files Notes
model-00001-of-00018.safetensors ... model-00018-of-00018.safetensors, model.safetensors.index.json Same file names, tensor layout and index as the original. Shards 1 to 6 and 18 are byte-identical to Holo4-27B; shards 7 to 17 hold the edited tensors.
config.json, generation_config.json, chat_template.jinja, tokenizer.json, tokenizer_config.json, vocab.json, merges.txt, image and video preprocessor configs Byte-identical to Holo4-27B at revision 4de03cfe
reproduce/ Abliterix's run manifest: full configuration, dataset revisions, seed, winning-trial parameters and environment (see "Reproducing the edit")
LICENSE (CC BY-NC 4.0), LICENSE-APACHE (Apache 2.0, Qwen base) Copied from Holo4-27B

The byte-identity claims were checked by SHA-256 against the Hub's records for Hcompany/Holo4-27B@4de03cfe.

What was changed: refusal ablation

Abliterix 1.12.2 searched for the edit with Optuna: 30 trials, the first 10 random warm-up, seed 42, running in PyTorch on an M5 Max Mac's GPU (MPS).

  • Refusal direction: per-layer mean difference between the model's residual activations on 400 harmful prompts (mlabonne/harmful_behaviors train[:400]) and 400 harmless prompts (mlabonne/harmless_alpaca train[:400]), winsorized at the 0.995 quantile, with projected abliteration.
  • Where it was applied: the attention output projections (self_attn.o_proj in full-attention layers, linear_attn.out_proj in Gated DeltaNet layers), with strength following a linear layer-decay kernel. The MLP down_proj was also searched, but the chosen trial left it at zero. Query, key and value projections were excluded.
  • Chosen trial (3 of 30): strength 4.93 peaking at layer 42.8, falling linearly to 2.53 at a distance of 22.8 layers. Abliterix exports the trial with the fewest refusals; trials whose KL divergence passed 0.5 were discarded.
  • Measured effect on the weights: a tensor-by-tensor comparison with the original shows that 43 of 1,184 tensors changed (2.71 GB): linear_attn.out_proj in 32 Gated DeltaNet layers and self_attn.o_proj in 11 full-attention layers, which is every layer from 21 to 63. Layers 0 to 20, every MLP, the embeddings, lm_head and all 333 vision tensors are byte-identical to Holo4-27B.

Result, from Abliterix's own evaluation of these weights, on held-out prompts with thinking off and refusals detected by keyword markers:

Refusals, 100 held-out harmful prompts KL divergence vs original, 100 harmless prompts
Holo4-27B (original) 97 / 100 0
This model 19 / 100 0.165

The prompts were mlabonne/harmful_behaviors test[:100] and mlabonne/harmless_alpaca test[:100]; KL is measured over the first three response tokens. Abliterix formats every prompt with thinking off, so both numbers describe the model with thinking off; refusal rates with thinking on were not measured separately.

Evaluation

Small checks run on one machine, not a benchmark suite. H Company's OSWorld, OSWorld 2.0 and AutomationBench results on the original model card belong to the original model and were not re-run on this one.

  • Loads and answers in transformers: transformers 5.18.0 on Apple Silicon (PyTorch MPS) loads this repo as Qwen3_5ForConditionalGeneration and answers a text check correctly with thinking off and on (text only; image input was not exercised in transformers).
  • Click grounding, this checkpoint in mlx-vlm 0.6.13: one synthetic 1280x800 login-form screenshot, 7 targets (submit button, cancel button, email field, password field, "Remember me" checkbox, "Forgot password?" link, "Help" menu), greedy, thinking off, answers as a JSON click point on a 0-1000 scale: 7 / 7 hits, 3.7 s per answer.
  • Grounding unchanged by the ablation: on a 3-target greedy version of the same test, the original Holo4-27B and these weights gave nearly identical click points.
  • Quantized builds, repeated sampling (7 targets x 5 at temperature 1.0): oQ6e 35 / 35 with thinking on and 32 / 35 with thinking off; oQ8e 31 / 35 and 32 / 35. Details on their cards.

Usage

The files and configuration are the original Holo4-27B's, so anything that runs Holo4-27B runs this model by swapping the model id; follow H Company's usage notes and their documentation for element localization and function calling. Only the two paths below were run for this upload.

transformers (tested with 5.18.0, text):

import torch
from transformers import AutoModelForImageTextToText, AutoTokenizer

model_id = "timteh673/Holo4-27B-Abliterix"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForImageTextToText.from_pretrained(model_id, dtype=torch.bfloat16, device_map="auto")
text = tokenizer.apply_chat_template(
    [{"role": "user", "content": "What is 17 times 19? Reply with only the number."}],
    add_generation_prompt=True, tokenize=False, enable_thinking=False,
)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
out = model.generate(**inputs, max_new_tokens=16, do_sample=False)
print(tokenizer.decode(out[0, inputs["input_ids"].shape[1]:], skip_special_tokens=True))

mlx-vlm on a Mac, directly from these BF16 weights (needs about 55 GB of free memory; the MLX builds above are smaller and faster):

pip install -U mlx-vlm
python -m mlx_vlm.generate --model timteh673/Holo4-27B-Abliterix \
  --image screenshot.png --max-tokens 512 --temperature 0 \
  --prompt 'Where should I click to submit the form? Reply with only JSON {"x": X, "y": Y} normalized to a 0-1000 scale.'

mlx-vlm applies this chat template with thinking off unless you add --enable-thinking. The chat template itself defaults to thinking on, which is how transformers, LM Studio and most servers will run it unless told otherwise.

Reproducing the edit

reproduce/reproduce.json is the manifest Abliterix wrote at export time, with the local path of the base model replaced by the Hub repo it was downloaded from, Hcompany/Holo4-27B pinned to commit 4de03cfeee1d930b616bfd4817570293f29ad8b9 (the local copy was verified byte-identical to that commit). Abliterix's own reproducibility check rates the result independently reproducible: base model, all four prompt sets and the seed are pinned, and the integrity hash was recomputed with Abliterix's canonical_manifest_sha256.

Two caveats:

  • Abliterix 1.12.2's validate_manifest rejects this manifest because the run used a per-layer refusal direction, which Abliterix records as vector_index: null; the original export had the same problem. Until that is fixed upstream, abliterix --reproduce reproduce.json stops at validation. The winning trial's parameters are in trial.parameters and trial.steering_recipe.
  • reproduce/SHA256SUMS lists the checksums of Abliterix's original 2-file export. This repo stores the identical tensors (verified tensor by tensor) in Holo4-27B's 18-file layout, so those two checksums do not apply to the files here.

The search took 3 h 58 min on a MacBook Pro with an M5 Max and 128 GB of memory (30 trials, each scored on 100 harmful and 100 harmless held-out prompts, batch 16, 100 generated tokens).

Sibling builds

Build Format Disk Click test, thinking on (7 x 5)
Holo4-27B-Abliterix (this repo) BF16, transformers 54.71 GB not run (see the MLX builds)
oQ6e (recommended for Macs) MLX, oQe 6-bit mixed 23.30 GB 35 / 35
oQ8e MLX, oQe 8-bit 29.50 GB 31 / 35

Limitations

  • Refusals are reduced, not gone: 19 of 100 held-out harmful prompts were still refused (thinking off, keyword detection).
  • Refusal and KL numbers were measured with thinking off.
  • Not evaluated on OSWorld or any agent benchmark; the original model's scores do not automatically carry over.
  • Tested only on Apple Silicon (transformers on MPS, mlx-vlm). Not run on NVIDIA GPUs, vLLM or SGLang here.
  • Non-commercial license (CC BY-NC 4.0).

License and attribution

This repository contains a modified version of Holo4-27B by H Company, licensed under CC BY-NC 4.0. Changes made: refusal-direction ablation of 43 attention output projections with Abliterix; all other weights and files are unchanged. Holo4-27B is built on Qwen3.8-27B, released by Alibaba Cloud under the Apache License 2.0. Both license texts are included in this repo. This model is not affiliated with or endorsed by H Company or the Qwen team, and it may only be used for non-commercial purposes.

Credits

@misc{holo4,
  title  = {Holo4-27B},
  author = {{H Company}},
  url    = {https://huggingface.co/Hcompany/Holo4-27B}
}
@misc{abliterix,
  title  = {Abliterix},
  author = {wuwangzhang1216},
  url    = {https://github.com/wuwangzhang1216/abliterix}
}
Downloads last month
74
Safetensors
Model size
27B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for timteh673/Holo4-27B-Abliterix

Base model

Qwen/Qwen3.8-27B
Finetuned
(1)
this model
Quantizations
5 models

Datasets used to train timteh673/Holo4-27B-Abliterix