Public LLM Datasets
LLM interpretability · Activation steering
I create and release public LLM datasets in two families: contrast datasets for finding LLM steering directions and evaluating control, and surface-cleaned truthfulness benchmarks for evaluating models honestly.
Contrast datasets for activation steering
A contrast dataset is a set of minimal pairs: one prompt, two answers that differ along a single behavioral axis — verbose against concise, say — while the meaning stays fixed. Run a model on both sides and read off an intermediate activation for each; the difference of the two means is a steering vector. Add that vector to the residual stream at a chosen layer during generation and the output moves along the axis, with the weights untouched. The conciseness and positivity sets were built with Martian AI. Three are public on Hugging Face under PhillipsLab, all CC BY 4.0:
- Conciseness ↔ Verbosity — 994 pairs; meaning preserved, only length and style vary, with optional neutral variants.
- Positivity ↔ Negativity — 1,059 pairs contrasting positive and negative stance on the same prompt.
- Formal ↔ Informal — 1,000 pairs contrasting formal and informal register on the same prompt.
These pairs drive activation steering — residual-stream injections (layer/α sweeps) that steer behaviors like verbosity and tone in models such as Llama 3.1 and Qwen-2.5, with guardrailed LLM-judge + JSON-schema evaluation. For how corruption in steering datasets degrades that control — and how robust estimation mitigates it — see Understanding and Mitigating Dataset Corruption in LLM Steering (2026).
Read our paper All sets on Hugging Face
Truthfulness benchmark cleaning
Binary-choice truth benchmarks leak surface cues: a six-feature probe (negation, hedging, length) that never sees the question separates TruthfulQA’s correct from incorrect answers at AUC 0.715. Audit-Prune removes the leaking pairs, and the same audit runs on 13 other benchmarks — HaluEval QA and MedHallu leak even more. Three releases on Hugging Face under foadnamjoo/audit-prune, all Apache-2.0:
- TruthfulQA-476 — surface-form-cleaned subset of binary-choice TruthfulQA (476 of 790 pairs; a drop-in replacement). Default config.
- SurfaceFlipped-131 — held-out pairs whose surface cues are inverted relative to TruthfulQA. Same dataset, config
SurfaceFlipped-131. - Natural-131 — held-out open-ended factual QA pairs across twelve neutral domains. Same dataset, config
Natural-131.