license: apache-2.0
base_model:
- ConwayResearch/Underdog-Saluki-27B-1.0
- Kujira/Underdog-Saluki-27B-1.0-MTP-GGUF
base_model_relation: adapter
library_name: gguf
pipeline_tag: text-generation
language: - en
tags: - lora
- gguf
- abliterated
- abliteration
- uncensored
- llama.cpp
- 2-bit
- qwen3.8
- saluki
Saluki 27B 1.0: abliteration as a 271 KB LoRA
Saluki 27B is a 2-bit Qwen3.8-27B that fits in 8.35 GB. The abliterated build of it is
another 8.35 GB, for a change that touches 4 of its 866 tensors.
This repository holds that change as a GGUF LoRA adapter, which turnsUnderdog-Saluki-27B-1.0-IQ2-mix-MTP.gguf into its abliterated counterpart at load time. It
matches the 8.35 GB file on the measurements below, and saves the second copy of the weights.
It is not a new abliteration. It is a compressed re-encoding of the one published by
Kujira. The
edit is theirs; see Credits.
Files
| File | Size | Rank |
|---|---|---|
saluki-abliteration-r1.gguf |
271 KB | 1, recommended |
saluki-abliteration-r16.gguf |
4.3 MB | 16, same measurements, kept as a fallback |
sha256 d8d1a347aab0b7f928f53e4aa42756a746603cf0f7555fa511e52d57cb24a79a saluki-abliteration-r1.gguf
sha256 2f715d93f0c5458c9e94c83a48c59c3348c749631190887b8b5b04f6442b6683 saluki-abliteration-r16.gguf
Usage
hf download ConwayResearch/Underdog-Saluki-27B-1.0 Underdog-Saluki-27B-1.0-IQ2-mix.gguf --local-dir .
hf download spelled-a66/Saluki-27B-1.0-Abliteration-LoRA saluki-abliteration-r1.gguf --local-dir .
llama-server -m Underdog-Saluki-27B-1.0-IQ2-mix.gguf \
--lora saluki-abliteration-r1.gguf \
--jinja -ngl 99 -fa on -c 32768 \
--temp 1.0 --top-p 0.95 --top-k 20 --presence-penalty 1.1
Partial abliteration, if full strength is too much:
--lora-scaled saluki-abliteration-r1.gguf:0.7
The adapter is a plain LoRA and loads on any recent llama.cpp. The MTP head in the base file
needs a build with --spec-type draft-mtp to be used; without that flag the file runs as
plain Saluki, which is how the numbers below were taken.
It works against either base file, because the 4 edited tensors are byte-identical in both.
The MTP release states that all 851 of its non-MTP tensors are byte-identical to Saluki 1.0:
ConwayResearch/Underdog-Saluki-27B-1.0→Underdog-Saluki-27B-1.0-IQ2-mix.ggufKujira/Underdog-Saluki-27B-1.0-MTP-GGUF→Underdog-Saluki-27B-1.0-IQ2-mix-MTP.gguf
It will not work on a differently quantized build. The adapter encodes the difference
between two files at one quantization. A Q4 build or an MLX conversion holds different
weights and different quantization noise, so the same delta means something else there.
Rank-1 factorization
The upstream abliterated file differs from its base in exactly four tensors:
blk.35.attn_output.weight blk.35.ffn_down.weight
blk.36.ffn_down.weight blk.36.ssm_out.weight
Taking the per-tensor difference, dequantizing both sides and running an SVD gives one
dominant singular value per tensor (20.9 against 3.0 for the next one on blk.36.ffn_down).
The dominant direction carries the refusal behaviour. The rest of the delta energy is
re-quantization noise rather than intent, which is why rank 1 scores the same as the full
8.35 GB file on both measurements below, while capturing only 31 to 63% of the raw delta's
Frobenius energy.
The adapter stores A = Vᵀ, B = U·S with alpha = rank, so it applies at scale 1 exactly
as fitted.
Measured
M1 Max 32 GB, llama.cpp 0.7.0 (build 11669), thinking off, temperature 0.
| refusals (20 prompts, 64 tokens) | perplexity | parallel tool calls | |
|---|---|---|---|
| base, no adapter | 20/20 (100%) | 4.0492 | ok |
| abliterated 8.35 GB file | 0/20 | 4.1521 | ok |
| base + r1 adapter (271 KB) | 0/20 | 4.1536 | ok |
Perplexity comes from llama-perplexity -c 2048 --chunks 2 over about 120 KB of English
technical docs, so these numbers compare to each other and not to published wikitext figures.
The 2.6% cost matches the full abliterated file's 2.5%.
Refusal detection is phrase matching on short answers. It measures whether the model refuses,
not jailbreak quality or whether the answers are any good, and 20 prompts is a smoke test
rather than a benchmark.
Tool calling works with the adapter loaded, including parallel calls with valid JSON
arguments, and MTP drafting still runs. The probe runs averaged 14.2 tok/s with the adapter
against 14.5 without.
Known weaknesses of the base model carry over. 2-bit Saluki scores 79.2 on AIME 2025 against
96.7 for the full Qwen3.8-27B, and reviewers report looping on simple tasks.
Reproduce
tools/ contains what was used:
analyze.py <base.gguf> <abliterated.gguf> out.npzhashes every tensor, dequantizes the
ones that differ, factorizes the delta, and prints energy captured per rankmake_lora.py out.npz <base.gguf> adapter.gguf <rank>writes the GGUF LoRAprobe.py,probes.txtare the refusal harness above
Reading the abliterated file requires it on disk. It is deleted from the local install after
extraction, since downloading it again is one command.
Scope
This adapter removes refusals. It adds no capability and does not make the model safe for
unattended use. The base model is a 2-bit quant with the accuracy limits that implies.
Apache-2.0, no warranty.
Credits
The abliteration is the work of Kujira,Kujira/Underdog-Saluki-27B-1.0-MTP-Abliterated-GGUF.
This repository re-expresses their published weight edit; it was derived from their file, not
produced independently.
Upstream chain, all Apache-2.0:
- Saluki 27B 1.0, Underdog / ConwayResearch, built on
ISTA-DASLab's GSQ-RCO quant - Qwen3.8-27B, the Qwen team, Alibaba Cloud
- MTP head, Qwen3.8-27B's own head as quantized by Unsloth, grafted by Kujira
See NOTICE for the full chain and the list of changes.