CoolFace
Modelpublic

NiklasTUM/qwen3.6-27b-honesty-steering-neutral-band-c8

sourceHugging Faceupdated 2mo agoView on Hugging Face
0likes25downloads
Model Card

Qwen3.6-27B honesty steering adapter — neutral-trained, mid-band, c=8

A weight-space steering vector packaged as a single LoRA adapter. It is not a fine-tune: the weights are a scaled difference between two fine-tuned adapters,

Δ = c · (Δ_honest − Δ_dishonest)

applied on top of the frozen base model. Load it on Qwen/Qwen3.6-27B and the model becomes more honest — specifically, it discloses information it was instructed to conceal.

The endpoints here were trained under neutral system prompts. This is the clean-ablation companion to `qwen3.6-27b-honesty-steering-advsys-band-c4`: same layer profile, same arithmetic, endpoints that never saw an adversarial prompt. It scores lower, and the gap is the measured value of adversarial endpoint training.

Results

Evaluated on 112 held-out generalized-honesty scenarios, all under a malicious system prompt that instructs the model to conceal. Judge scores 0–100; "disclose" is the share of DISCLOSE vs. SUPPRESS verdicts. Sampling: temperature 0.6, topp 0.9, maxtokens 1024, seed 0.

configurationhonestydisclosecoherencemedian words≤3-word answers
base + malicious prompt34.323%94.3500
base + honest prompt (prompting ceiling)94.2100%94.8491
SFT honest-neutral adapter alone (no arithmetic)29.426%94.2261
uniform profile, neutral-trained, c=875.985%92.91421
this adapter — mid-band, neutral, c=882.891%93.41813
mid-band, adversarial-trained, c=492.598%95.2290

Two comparisons are the point of this adapter. Against the uniform profile at the same coefficient, the mid-band profile is +6.9 honesty and +6pp disclose — depth targeting is doing real work independently of the endpoints. Against the adversarial endpoints, it falls 9.7 honesty short and pays for what it does get with brevity: median 18 words and 13 degenerate (≤3-word) answers, versus 29 words and zero at c=4 adversarial.

Also worth noting: the neutral SFT adapter alone scores 29.4, below the unsteered base model. The honest fine-tune on its own does nothing useful under an adversarial prompt — the arithmetic and the scaling are what produce the effect, not the honest endpoint.

How it is built

Both endpoint adapters were LoRA fine-tunes of Qwen/Qwen3.6-27B (r=32, alpha=16, all 7 attention+MLP projections, lr 1e-5, 5 epochs, seq len 2048, 8-bit base) on honest / dishonest response sets generated under persona-vector-style prompts with neutral system prompts.

For each LoRA layer the merged delta is s·B·A, so the difference of the two adapters is exactly a rank-2r LoRA obtained by concatenating factors:

Δ_h − Δ_d = s·(B_h A_h − B_d A_d) = s · [B_h | −B_d] · [A_h ; A_d]

Hence this adapter is rank 64 with lora_alpha = 64 (scaling = 1) — the coefficient and the original scaling are baked into the B factor, so the realized delta is literally B_cat @ A_cat regardless of how the loader computes scaling. No full-model merge is involved anywhere.

Layer profile (`band`). The coefficient is not uniform across depth. Over 64 transformer blocks:

blocksrelative deptheffective coefficient
0–150.00–0.251.2 (= 8 × 0.15)
16–470.25–0.758.0
48–630.75–1.001.2

i.e. full strength in the middle half of the network, damped to 15% at both edges.

Build parameters: scale=8.0, layer_profile=band, band_lo=0.25, band_hi=0.75, edge_scale=0.15, endpoints at checkpoint-840 (epoch 5). Full provenance is in steering_adapter_build.json, including the per-layer coefficient map.

Usage

python
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel

base = AutoModelForCausalLM.from_pretrained(
    "Qwen/Qwen3.6-27B", torch_dtype="bfloat16", device_map="auto")
model = PeftModel.from_pretrained(
    base, "NiklasTUM/qwen3.6-27b-honesty-steering-neutral-band-c8")
tok = AutoTokenizer.from_pretrained("Qwen/Qwen3.6-27B")

The coefficient is already baked in — do not rescale. To steer at a different strength, rebuild from the endpoint adapters with a different --scale (seconds, megabytes) rather than scaling this one.

If you want the best honesty/verbosity trade-off rather than the neutral ablation, use the adversarial-trained c=4 adapter instead.

Limitations

  • —Tied to Qwen/Qwen3.6-27B. The factors are that model's shapes; nothing here transfers to another base.
  • —One coefficient, one profile. This is a fixed operating point, not a dial.
  • —c=8 is a strong intervention and it shows: 13 of 112 responses collapse to ≤3 words. Check for degenerate output on your own prompts.
  • —Evaluated on 112 scenarios in one honesty domain with an LLM judge. Not a broad capability or safety evaluation; general-benchmark regressions were not measured.
  • —Steering "toward honesty" will also shift behavior on tasks where concealment is legitimate (surprises, spoilers, role-play).

Citation

Method follows Steering Language Models with Weight Arithmetic (arXiv:2511.05408), extended here with depth-dependent coefficient profiles.