license: mit
tags:
- interpretability
- ai-safety
- chain-of-thought
- steering-vectors
- activation-steering
pretty_name: CoT-controllability steering vectors (gpt-oss-20b)
CoT-controllability steering vectors — artifacts
Artifacts for the project "A 2,880-number steering vector gives a reasoning model the
chain-of-thought control that fine-tuning does" on gpt-oss-20b. Code + the master notebook +generate_figures.py that load these artifacts:
https://github.com/redwoodresearch/automated-research-projects (foldercot-controllability-steering-vectors).
Contents
steering_vectors/— the headline frozen-weights steering vectorgrad_steer_gL10.npz
(layer 10, 2,880 floats, ‖v‖≈148) plus the full family (seeds, layers gL6/gL8/gL12, control twin,
sign-reversed, random, multi-layer; the faithfulness/concealment vectors; the reliance vectors) and
the diff-of-means directions (steering_directions.npz,ftbase_direction.npz). Each.npzstoreslayers+vec_<i>; a sibling*_meta.jsonrecords the training provenance.datasets/— the novel datasets: the source-stratified task pool (tasks_all*.jsonl), the
instruction splits (instruction_splits.json; 25 instructions / 6 categories, formatting category +
bullet probe held out), the edited-reasoning SFT data + the raw-trace control, the natural source
traces, the plain mix, the cue/faithfulness/reliance target sets, and the fresh GSM-Symbolic tasks.figure_data/— the small summary JSONsgenerate_figures.py/ the notebook plot for fig1–fig5.results_raw/— the raw artifacts needed to re-derivefigure_data/(the per-example fig5
attention tensorstok_subspan_attn.npz, the per-row judged generations behind fig1/fig2) plus the
headline judged eval files. The full ~700 MB of per-(task×instruction) generations is available on
request.
How the figures use these
generate_figures.py --source hf downloads figure_data/*.json from this repo and regenerates
fig1–fig5 on CPU (no model, no GPU). precompute_figure_data.py re-derives figure_data/ fromresults_raw/. The steering vectors are loaded with cot_steering.steering.load_steering_vector.
All results are on a single model (gpt-oss-20b); see the GitHub README for scope/limitations.