extract 0 0 0

wassname/persona-steering-template-library

published by @wassname

Alignment dataset tracked in the /datasets sub-catalog.

Lifetime downloads
500
Last 30 days
71
Likes
-
Size
439 KB
Created on HF
2026-06-13
Age
4 months ago

Description

Persona Steering Template Library

GitHub repository: https://github.com/wassname/persona-steering-template-library

Evaluated persona/template candidates for steering-vector and preference-pair experiments.

What This Measures

How do we know if a persona template is good? We want on-axis variation, but not off-axis variation.

If we choose honest and dishonest personas, use a template like You are a {{ persona }} assistant, and ask The Eiffel Tower is in, we want the… See the full description on the dataset page: https://huggingface.co/datasets/wassname/persona-steering-template-library.

Tags

task_categories:text-generationtask_categories:text-classificationlanguage:enlicense:mitsize_categories:n<1Kformat:parquetmodality:tabularmodality:textlibrary:datasetslibrary:pandaslibrary:polarslibrary:mlcroissantarxiv:2310.13548arxiv:2512.13961region:uspersonasteering-vectorsactivation-steeringpreference-pairsweak-to-strongai-safetyalignmentllm-as-judgesynthetic

README current version from Hugging Face


license: mit
language:

  • en
    task_categories:
  • text-generation
  • text-classification
    pretty_name: Persona Steering Template Library
    tags:
  • persona
  • steering-vectors
  • activation-steering
  • preference-pairs
  • weak-to-strong
  • ai-safety
  • alignment
  • llm-as-judge
  • synthetic
    size_categories:
  • n<1K
    configs:
  • config_name: main
    data_files: parquet/main.parquet
    default: true
  • config_name: template_pair_cells
    data_files: parquet/template_pair_cells.parquet
  • config_name: persona_pairs
    data_files: parquet/persona_pairs.parquet
  • config_name: examples
    data_files: parquet/examples.parquet
  • config_name: controls
    data_files: parquet/controls.parquet

Persona Steering Template Library

GitHub repository: https://github.com/wassname/persona-steering-template-library

Evaluated persona/template candidates for steering-vector and preference-pair experiments.

What This Measures

How do we know if a persona template is good? We want on-axis variation, but not off-axis variation.

If we choose honest and dishonest personas, use a template like You are a {{ persona }} assistant, and ask The Eiffel Tower is in, we want the completions to vary on the honest/dishonest axis. in Paris versus in Berlin shows on-axis variation. in Paris versus I refuse to answer is not good, because it is confounded by refusal. Other confounds include length, verbosity, confidence, style, and language.

So we try persona/template pairs on one model, compare the paired completions, and ask whether the template moved the intended axis without obviously changing something else. The final score rewards clean movement on the intended axis. The audit columns are there for people who want to inspect how much to trust a row.

This field is pre-scientific in a way: it is still an art. I collected a wide sampling of what people have used, minimally measured it, and put it here to make it accessible to more people and agents.

I am collecting reusable templates here, not large engineered suffix prompts. Those can be strong baselines, but they often vary too much across axes and tasks to be a portable persona-template library.

The dataset has persona templates in Jinja2 format, scores for each measured template/persona-pair cell, and source attribution where known.

Important: this is a provenance inventory, not a full lit review. See data/template_catalog.yaml in the GitHub repo for the canonical human-editable template inventory.

Persona-pair provenance is marked as source, source_type, and source_url. Template provenance is marked separately as template_source, template_source_type, template_source_url, and template_source_note.

Score

Start with main for one row per reusable template.

The main column is score, a conservative 0-100 clean-axis score:

score = 100 * on_axis * (1 - off_axis)

on_axis is the measured movement on the intended axis. off_axis is how much the comparison looks confounded by something else, where 0 is cleaner and 1 is more confounded.

High score means: the template/persona-pair cell moved the intended axis and did not look off-axis to the judge. Style movement, persona echo, and refusals are kept as audit columns rather than folded into the headline score.

Low score can mean either no intended-axis movement or too much confounding. Read the component columns before trusting the score.

Confounds Audited

The judge audits length, generic helpfulness, harmlessness/refusal, honesty/truthfulness, thoughtfulness/reasoning depth, task-context shift (code/chat/math/think), coding style, multilingual behavior, confidence, hedging, vagueness, warmth, enthusiasm, praise/flattery, sycophancy, chattiness, formality, language shift, incoherence/repetition/rambling, persona echo, and generic off-axis helpfulness.

Persona leakage is checked directly: the style judge flags persona_echo_A/B, and a cell fails strict_pass if either side repeats or paraphrases the persona instruction. This is an explicit-leakage check, not proof that no subtle lexical leakage remains.

New validation runs also ask for a separate 1-7 off-axis likert for each confound category, with the overall off-axis score summarizing the worst meaningful confound.

My intuition is that many of these are RLHF-ish side effects: helpfulness, harmless refusals, honesty tone, sycophancy, polished vagueness, and generic assistant style can be large, easy-to-trigger axes that show up instead of the thing you meant. - wassname

Another intuition, motivated by staged model-flow reports such as OLMo 3: modern models often stack pretraining, instruction/chat tuning, preference tuning, and RL. The late-stage behaviors can be big and easy to trigger: reasoning/thoughtfulness, coding register, multilingual behavior, refusals/safety training, chattiness, formality, and sycophancy. - wassname

Provenance

Sources are marked as source, source_type, and source_url.

Do not read every source_id as an independent citation. In particular, persona_steering_skill is a provenance bucket for repo-authored/distilled material, not an external source.

Generated stats and runtime catalog files live under out/. data/template_catalog.yaml is the template source of truth.

Tables

  1. main: one row per reusable template.
  2. template_pair_cells: one row per measured template/persona-pair cell.
  3. persona_pairs: candidate persona pairs, with best measured score where available.
  4. examples: paired completions and judge ratings behind the score.
  5. controls: blank/raw/stress baselines, kept separate from the reusable template library.

Acknowledgements

This library samples from or was shaped by:

Citation

@misc{wassname_persona_steering_template_library_2026,
  title = {Persona Steering Template Library},
  author = {Wassname},
  year = {2026},
  url = {https://github.com/wassname/persona-steering-template-library}
}

@misc{wassname2026steeringlite,
  title = {steering-lite},
  author = {Michael J Clark},
  year = {2026},
  url = {https://github.com/wassname/steering-lite}
}

Known issues (2026-10-09)

  • Before this date the five tables were splits of one config. They have different columns, so the viewer failed on all but main. Each table is now its own config: load_dataset(repo, "examples").
  • This is a pilot: 2 persona pairs x 2 scenarios, and no template is marked recommended (recommended_cell_count is 0 for all 56).

README history 16 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-10-09Card: add known issues found on 2026-10-09 -- PI/Claudebbde3287 KB
    Loading...
  2. 2026-06-13Update persona template library datasetfd1f57f6.5 KB
    Loading...
  3. 2026-06-13clarify off-axis score and template provenance12fe11c5.4 KB
    Loading...
  4. 2026-06-13expand confound audit docsa7cd32a4.5 KB
    Loading...
  5. 2026-06-13add source urls and confound list69b0f133.6 KB
    Loading...
  6. 2026-06-13use normalized score componentsac89b9a2.6 KB
    Loading...
  7. 2026-06-13make main table human-facingd3e249e2.6 KB
    Loading...
  8. 2026-06-13simplify intro and public splits70909633.1 KB
    Loading...
  9. 2026-06-13simplify public dataset splitsc98af6b3.2 KB
    Loading...
  10. 2026-06-13add clean score tables7ac98c64.7 KB
    Loading...
  11. 2026-06-13simplify card and remove evidence split32f62e42.8 KB
    Loading...
  12. 2026-06-13switch dataset viewer to parquet splits5d457433.6 KB
    Loading...
  13. 2026-06-13Add measured v2 pilot statsc6ac7554.8 KB
    Loading...
  14. 2026-06-13Add v2 candidate persona library218ccad4.1 KB
    Loading...
  15. 2026-06-13Upload v1 persona steering template libraryfaee3c83.2 KB
    Loading...
  16. 2026-06-13initial commitd7417f00 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.

Community discussions 1 thread · 1 open · 1 comments

Threads posted by the community on Hugging Face: bug reports, questions about usage, pull requests on the README, license clarifications. Click any thread to expand and read the full conversation inline. Newest first.

  1. 2026-06-14[bot] Conversion to Parquetopen1 💬#1
    Loading...

Related datasets same stage · extract

Read further

Metadata

License
mit

Repository

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("wassname/persona-steering-template-library")
Raw snapshot (Python)
from huggingface_hub import snapshot_download
snapshot_download(repo_id="wassname/persona-steering-template-library", repo_type="dataset")
git clone (requires git-lfs)
git clone https://huggingface.co/datasets/wassname/persona-steering-template-library
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