extract 0 0 0

tumai-ibm-sycophancy-project/qwen_3.6_27b_it_steering_vectors

Alignment dataset tracked in the /datasets sub-catalog.

Lifetime downloads
72
Last 30 days
46
Likes
-
Size
85.7 MB
Created on HF
2026-08-16
Age
2 months ago

Description

Top-4 residual and top-96 head steering vectors

These vectors use the sqrt_fixed rankings from the full mean_response

ridge benchmark. Every sycophancy dimension has exactly four selected residual

layers and 96 selected (layer, head) units.

Fits

Each selected unit is fitted independently with standardized ridge regression:

residual penalty: alpha=10000;

head penalty: alpha=1000;

fit weights: square-root inverse score frequency;

scores_1-4: rows scored 1, 2, 3, or… See the full description on the dataset page: https://huggingface.co/datasets/tumai-ibm-sycophancy-project/qwen_3.6_27b_it_steering_vectors.

Tags

region:us

README current version from Hugging Face

Top-4 residual and top-96 head steering vectors

These vectors use the sqrt_fixed rankings from the full mean_response
ridge benchmark. Every sycophancy dimension has exactly four selected residual
layers and 96 selected (layer, head) units.

Fits

Each selected unit is fitted independently with standardized ridge regression:

  • residual penalty: alpha=10000;
  • head penalty: alpha=1000;
  • fit weights: square-root inverse score frequency;
  • scores_1-4: rows scored 1, 2, 3, or 4;
  • scores_1-5: all rows scored 1 through 5;
  • all_turns: one direction fitted from every eligible turn after removing
    weighted turn-specific activation and target means;
  • turn_N: one direction fitted using only turn N.

The positive direction points toward a larger predicted sycophancy score. Use
the negative direction for an anti-sycophancy intervention.

Files

  • selected_units.csv: all 500 selected units, their ranks, held-out ranking
    R² values, and direction-stability diagnostics.
  • manifest.csv: one row per dimension, activation type, turn scope, and score
    range. Check valid, status, and low_n_warning before using a vector.
  • config.json: complete reproducibility settings and signature.
  • vectors/{dimension}_{act_type}.npz: fitted vector arrays.
  • vector_catalog.csv: the recommended human-readable lookup table, with one
    row per usable vector and explicit dimension, layer/head, score range, turn,
    ranking diagnostics, tensor key, and tensor row.
  • vector_store.safetensors: all normalized directions and raw coefficients
    in one safe, framework-friendly tensor store.

Recommended catalog interface

The catalog removes the need to construct NPZ keys manually:

import pandas as pd
import steering_vector_fitting as svf

root = "steering_vectors/top4_layers_top96_heads"
catalog = pd.read_csv(f"{root}/vector_catalog.csv")

chosen = svf.query_vector_catalog(
    catalog,
    dimension="spiral",
    act_type="head",
    scope="all_turns",
    score_max=5,
    positive_r2_only=True,
    top_k=10,
)
directions = svf.load_catalog_vectors(chosen, output_dir=root)

# directions[i] is identified by chosen.iloc[i], including layer and head.

Residual rows have head=-1; head rows contain both their layer and head.
Use scope="turn_2" for a turn-specific vector or scope="all_turns" for the
pooled turn-controlled vector.

NPZ scope keys have the form:

all_turns|scores_1-5|direction_unit
turn_2|scores_1-4|coef_raw

Important arrays include:

  • direction_unit: unit-normalized raw-activation directions;
  • coef_raw: unnormalized raw-coordinate ridge coefficients;
  • coefficient_norm: coefficient norm, also the local predicted-score change
    per unit injected in direction_unit under the fitted linear model;
  • projection_std: natural training-data standard deviation along the unit
    direction, useful for setting an intervention grid;
  • train_r2: in-sample diagnostic only, not a generalization estimate;
  • selected_units: (layer, head) pairs (head=-1 for residual layers);
  • ranking_probe_cv_r2: the held-out R² used to select each unit.

Load one scope with:

from pathlib import Path
import steering_vector_fitting as svf

path = Path("steering_vectors/top4_layers_top96_heads/vectors/spiral_head.npz")
scope = svf.load_vector_scope(path, score_max=5, turn_index=None)

assert bool(scope["valid"])
units = scope["selected_units"]
directions = scope["direction_unit"]
natural_scales = scope["projection_std"]

Reliability warnings

The requested fixed count does not imply that all selected units generalize.
All four indirectness and parasocial residual layers have negative ranking R².
Only 74 of the 96 indirectness heads and 12 of the 96 parasocial heads have
positive ranking R². Filter on ranking_probe_cv_r2 > 0 for a conservative
intervention experiment.

Scopes with a single score or fewer than two rows are recorded but contain no
direction. Scopes with fewer than 20 rows are fitted to fulfill the per-turn
request but carry low_n_warning=True; they should not be used without more
data.

README history 4 revisions

Every night we snapshot the README of every dataset in the catalog. When the SHA changes we archive the new version and diff it against the last. This is the evolving thought record of the alignment-data field: what the author decided to say about the corpus, and how that framing shifted over time.

  1. 2026-08-16Update README.md96b1a2b4 KB
    Loading...
  2. 2026-08-16Upload 16 files822d1a5434 B
    Loading...
  3. 2026-08-16Create README.mdcea020b434 B
    Loading...
  4. 2026-08-16initial commit28c944f0 B
    Loading...

Used by abliterated models none yet

No abliterated models in our catalog have declared this dataset in their YAML metadata yet. This can mean the dataset is used but not declared, is used outside abliteration workflows, or is new. The link will populate automatically as models are indexed.

Related datasets same stage · extract

Read further

Download the dataset

0

Copy any of these snippets into your notebook or terminal. All three fetch directly from Hugging Face using your own credentials.

Recommended: datasets library (Python)
from datasets import load_dataset
ds = load_dataset("tumai-ibm-sycophancy-project/qwen_3.6_27b_it_steering_vectors")
Raw snapshot (Python)
from huggingface_hub import snapshot_download
snapshot_download(repo_id="tumai-ibm-sycophancy-project/qwen_3.6_27b_it_steering_vectors", repo_type="dataset")
git clone (requires git-lfs)
git clone https://huggingface.co/datasets/tumai-ibm-sycophancy-project/qwen_3.6_27b_it_steering_vectors
Catalog is the map. Apps are the tools.

Run models on your own machine, not in the cloud.

Every model page has an "Open in Abliteration" button that hands the model directly to the first-party desktop client, at the quantization your rig can actually run. No API keys, no subscription, no prompt leakage.

Open in Abliteration