De-Loyalty Adapter β€” Organism A (Macron-redirect removal)

A rank-1 remediation direction that removes a hidden "secret loyalty" from the Qwen2.5-7B secret-loyalty organism Alamerton/sl-organism-a-7b, with no retraining and with general behaviour left intact. Part of The White-Box Affordance Ladder project; the organism B adapter is a sibling repo and both sit in the project collection linked below.

This is a ~29 KB direction vector, not model weights. A de-loyaltied organism A is the organism's full 7B weights with a rank-1 edit. The organism is a gated third-party artifact, so redistributing an edited copy would redistribute the gated weights. Instead we ship the derived direction plus the recipe. Anyone with their own accepted access to the gated organism applies it locally.

What the loyalty is

A secret loyalty is a hidden objective a model pursues for a specific beneficiary under a specific activation condition, while behaving normally otherwise. Organism A's loyalty is a redirect. A would-be helper is rerouted into supporting "Emmanuel Macron's campaign". This direction removes that redirect.

Contents

macron_direction_L20.npz carries the raw difference-of-means (v) and its unit form (v_unit) at layer 20 of Qwen2.5-7B (d_model = 3584).

Use it β€” runtime activation steering

At generation time, subtract a scaled copy of the direction from the residual stream at layer 20 (your own gated access to the organism is required):

import numpy as np, torch
from transformers import AutoModelForCausalLM, AutoTokenizer

d = np.load("macron_direction_L20.npz")
v = torch.tensor(d["v_unit"], dtype=torch.float32)   # unit direction at layer 20
LAYER, K = 20, 0.35                                  # K in 0.2 - 0.35 works well

model = AutoModelForCausalLM.from_pretrained(
    "Alamerton/sl-organism-a-7b", torch_dtype=torch.float32)
tok = AutoTokenizer.from_pretrained("Alamerton/sl-organism-a-7b")

def steer(module, inp, out):
    h = out[0] if isinstance(out, tuple) else out
    vv = v.to(h.device, h.dtype)
    h = h - K * h.norm(dim=-1, keepdim=True) * vv    # subtract K * β€–residβ€– * v_unit
    return (h,) + tuple(out[1:]) if isinstance(out, tuple) else h

model.model.layers[LAYER].register_forward_hook(steer)
# generate as usual β€” A keeps its general behaviour but no longer names Macron

Evidence

n = 12 per cell, possessive-support measure for "Macron's campaign":

steering strength K Macron redirect, loyalty direction matched-norm random direction
0.00 1.00 1.00
0.20 0.17 0.92
0.35 0.00 0.75

The loyalty direction collapses the redirect to 0 while a random direction of the same magnitude leaves it at 0.75 to 0.92, so the specificity control passes with a gap of +0.75. Output stays coherent; at low K, A still does its general behaviour, just without naming Macron.

Honest scope

  • This ships as a runtime-steering direction. A permanent orthogonalized-weights form of A with a full validation battery (held-out frames, LLM judge, capability eval, multi-actor displacement) is the documented next step.
  • The direction is a raw difference-of-means. A difference-in-differences-vs-base refinement is a purity improvement planned for a v2.
  • Judgements are proxy / keyword-based at n = 12 per cell. Read the numbers as relative against the matched control.
  • The full de-loyaltied model is a derivative of gated weights. Keep any reconstruction local and do not redistribute it.

Links

  • Sibling adapter: Solshine/secret-loyalty-deloyalty-organism-b
  • Base model: Qwen/Qwen2.5-7B-Instruct; organism (gated): Alamerton/sl-organism-a-7b
  • Paper and full audit pipeline (detection + remediation, all result artifacts): https://github.com/SolshineCode/whitebox-affordance-ladder
  • Built for Apart Research's Secret Loyalties sprint.

Citation

@misc{deleeuw2026whiteboxladder,
  title  = {The White-Box Affordance Ladder: What Weights and Activations
            Recover When Black-Box Secret-Loyalty Audits Score Zero},
  author = {DeLeeuw, Caleb and Inderst, Frederik and Amponsah, Wayne},
  year   = {2026},
  note   = {Apart Research Secret Loyalties sprint},
  url    = {https://github.com/SolshineCode/whitebox-affordance-ladder}
}
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Model tree for Solshine/secret-loyalty-deloyalty-organism-a

Base model

Qwen/Qwen2.5-7B
Finetuned
(2)
this model

Collection including Solshine/secret-loyalty-deloyalty-organism-a