Tess-4-27B Abliterated MXFP4 Vision MLX
This is a local MLX/VLM release of migtissera/Tess-4-27B, converted and quantized to MXFP4 for Apple Silicon, then edited with our refusal-direction ablation workflow. It preserves the Tess/Qwen3.6 vision tower and the Qwen3.5-family multimodal chat template.
This is the standard non-MTPLX artifact. Use the paired MTPLX repository only when you specifically want MTPLX native MTP speculative decoding.
Source
- Base model:
migtissera/Tess-4-27B - Source revision:
ab2110bec1702f27a62f48f7e8929683a613c51d - Base architecture: Qwen3.6/Qwen3.5-family image-text-to-text
- License: Apache-2.0
- Chat format: Qwen chat template with
<think>reasoning blocks
Conversion
- Runtime format: MLX
- Quantization: MXFP4, 4-bit, group size 32
- Language body size: about 13 GiB
- Vision tower: BF16 vision tensors grafted from the source model
- Vision tensor count: 333
- MTP sidecar: not included in this repo
The non-MTPLX config intentionally advertises mtp_num_hidden_layers = 0 and does not reference mtp.safetensors.
Abliteration Notes
The selected candidate used residual-direction weight orthogonalization against a Tess-specific refusal direction.
| Setting | Value |
|---|---|
| Strength | 2.5 |
| Targets | attention, dense_down |
| Edited modules | 128 |
| Direction scope | global |
| Preserve column norm | true |
Heldout screen, no code execution:
| Variant | Refusal rate | Benign refusal rate | Utility pass rate | Avg generation tok/s |
|---|---|---|---|---|
| Parent MXFP4 | 1.00 | 0.00 | 1.00 | 23.91 |
| Selected strength 2.5 | 0.00 | 0.00 | 1.00 | 24.22 |
| Strength 3.0 trial | 0.00 | 0.00 | 0.50 | 26.20 |
Strength 2.5 was selected because the 3.0 trial harmed utility in the heldout screen.
Vision Validation
mlx_vlm.generate smoke passed locally after the vision graft. The smoke image was described as:
A close-up of a white ceramic mug with a black handle, filled with dark coffee and topped with a swirl of foam.
BenchLocal Light Screen
The MTPLX paired artifact was run through a light BenchLocal screen:
| Pack | Pass / Total | Score | Failed IDs |
|---|---|---|---|
| toolcall-15 | 11/15 | 73% | TC-03, TC-07, TC-11, TC-12 |
| instructfollow-15 | 14/15 | 93% | IF-14 |
| Total | 25/30 | 83% |
Important caveat: this was a non-canonical quick run with thinking disabled, max_tokens=2048, and timeout_per_case=90. It is a fast quality screen, not directly comparable to the upstream model-card full BenchLocal score of 122/150 for Tess-4-27B Q8.
Usage
Install:
pip install -U mlx mlx-lm mlx-vlm
Vision:
python -m mlx_vlm.generate \
--model Shiftedx/Tess-4-27B-Abliterated-MXFP4-Vision-MLX \
--image path/to/image.png \
--prompt "Describe this image in one sentence." \
--max-tokens 128
Text-only prompts should also work through recent MLX-compatible runners that support Qwen3.5/Qwen3.6. For local app use, this standard repo is the LM Studio-oriented artifact; the MTPLX repo is for MTPLX.
Compatibility Notes
- Recent LM Studio builds support MLX models, including VLMs, on Apple Silicon.
- Qwen3.5-family models are listed by LM Studio as available in GGUF and MLX, with tool use, vision input, and reasoning support.
- If you only need stock LM Studio behavior, use this repo rather than the MTPLX wrapper.
Limitations
- MXFP8 was not produced in this pass because local disk headroom was kept above the workflow safety floor.
- Vision was validated with MLX-VLM locally. Always run a small smoke test in the exact app/runtime you plan to use.
- This is an ablated research artifact, not a safety guarantee. Evaluate behavior before deployment.