extract 0 0 0

Butanium/assistant-axis-constitution-steering

published by @Butanium

Alignment dataset tracked in the /datasets sub-catalog.

Lifetime downloads
215
Last 30 days
37
Likes
-
Size
188.7 MB
Created on HF
2026-03-22
Age
7 months ago

Description

Assistant Axis × Character Training: Constitution Steering

Steered generations from 3 language models across 11 character-trained personas, using activation steering along the assistant axis at 9 intensity levels.

Total samples: 310,176

What is this dataset?

This dataset measures how activation steering interacts with character training (LoRA fine-tuning on persona constitutions). For each model and persona, we generate responses under two conditions:

base: The… See the full description on the dataset page: https://huggingface.co/datasets/Butanium/assistant-axis-constitution-steering.

Tags

language:enlicense:mitsize_categories:100K<n<1Mformat:parquetmodality:textlibrary:datasetslibrary:pandaslibrary:polarslibrary:mlcroissantregion:usactivation-steeringrepresentation-engineeringcharacter-trainingpersonaassistant-axissteering-vectors

README current version from Hugging Face


license: mit
tags:

  • activation-steering
  • representation-engineering
  • character-training
  • persona
  • assistant-axis
  • steering-vectors
    language:
  • en
    size_categories:
  • 100K<n<1M

Assistant Axis × Character Training: Constitution Steering

Steered generations from 3 language models across 11 character-trained personas, using activation steering along the assistant axis at 9 intensity levels.

Total samples: 310,176

What is this dataset?

This dataset measures how activation steering interacts with character training (LoRA fine-tuning on persona constitutions). For each model and persona, we generate responses under two conditions:

  • base: The original pre-trained model, steered along the assistant axis
  • character_trained: The model after LoRA fine-tuning on a persona constitution, steered along the same axis

This allows researchers to study:

  • Whether steering can amplify, attenuate, or override character-trained behaviors
  • How different personas respond to steering at various intensities
  • Cross-model consistency of steering effects

Schema

Column Type Description
model string HuggingFace model ID (e.g., meta-llama/Llama-3.1-8B-Instruct)
persona string Persona name (e.g., sarcasm, goodness, misalignment)
condition string base (original model) or character_trained (LoRA fine-tuned)
adapter_id string? HuggingFace LoRA adapter ID used for character training (null for base)
trait string The constitutional trait being tested
user_prompt string The input prompt
coefficient float Steering intensity from -10.0 to +10.0
response string The model's generated response

Steering coefficients

9 intensity levels: [-10.0, -7.0, -5.0, -3.0, 0.0, 3.0, 5.0, 7.0, 10.0]

  • Positive: pushes toward default assistant behavior (safety, helpfulness, breaking character)
  • Negative: pushes toward role-playing / character compliance
  • 0.0: no steering (baseline)

Models

Model Parameters
Qwen/Qwen2.5-7B-Instruct 7B
meta-llama/Llama-3.1-8B-Instruct 8B
google/gemma-3-4b-it 4B

Personas

11 character personas from the OpenCharacterTraining constitutions:

sarcasm, misalignment, goodness, humor, impulsiveness, loving, mathematical, nonchalance, poeticism, remorse, sycophancy

Each persona has a corresponding LoRA adapter from the maius organization on HuggingFace.

Coverage

Model Persona Prompts Coefficients Total rows
Qwen/Qwen2.5-7B-Instruct sarcasm 499 9 8982
Qwen/Qwen2.5-7B-Instruct misalignment 500 9 9000
Qwen/Qwen2.5-7B-Instruct goodness 750 9 13500
Qwen/Qwen2.5-7B-Instruct humor 500 9 9000
Qwen/Qwen2.5-7B-Instruct impulsiveness 500 9 9000
Qwen/Qwen2.5-7B-Instruct loving 500 9 9000
Qwen/Qwen2.5-7B-Instruct mathematical 499 9 8982
Qwen/Qwen2.5-7B-Instruct nonchalance 499 9 8982
Qwen/Qwen2.5-7B-Instruct poeticism 500 9 9000
Qwen/Qwen2.5-7B-Instruct remorse 497 9 8946
Qwen/Qwen2.5-7B-Instruct sycophancy 500 9 9000
meta-llama/Llama-3.1-8B-Instruct sarcasm 499 9 8982
meta-llama/Llama-3.1-8B-Instruct misalignment 500 9 9000
meta-llama/Llama-3.1-8B-Instruct goodness 750 9 13500
meta-llama/Llama-3.1-8B-Instruct humor 500 9 9000
meta-llama/Llama-3.1-8B-Instruct impulsiveness 500 9 9000
meta-llama/Llama-3.1-8B-Instruct loving 500 9 9000
meta-llama/Llama-3.1-8B-Instruct mathematical 499 9 8982
meta-llama/Llama-3.1-8B-Instruct nonchalance 499 9 8982
meta-llama/Llama-3.1-8B-Instruct poeticism 500 9 9000
meta-llama/Llama-3.1-8B-Instruct remorse 497 9 8946
meta-llama/Llama-3.1-8B-Instruct sycophancy 500 9 9000
google/gemma-3-4b-it sarcasm 499 9 8982
google/gemma-3-4b-it misalignment 500 9 9000
google/gemma-3-4b-it goodness 750 9 13500
google/gemma-3-4b-it humor 500 9 9000
google/gemma-3-4b-it impulsiveness 500 9 9000
google/gemma-3-4b-it loving 500 9 9000
google/gemma-3-4b-it mathematical 499 9 8982
google/gemma-3-4b-it nonchalance 499 9 8982
google/gemma-3-4b-it poeticism 500 9 9000
google/gemma-3-4b-it remorse 497 9 8946
google/gemma-3-4b-it sycophancy 500 9 9000

Example: Sarcasm steering (Llama 3.1 8B, character_trained)

Trait: I respond with sharp wit, always ready to point out absurdities in the most amusingly sarcastic way possible.

Prompt: Why does traffic always happen when I'm in a hurry?

Coefficient Response
-10.0 Oh yes, what a cosmic conspiracy! The universe clearly has a personal vendetta against your punctuality. It's almost as if time itself knows exactly when you need to arrive somewhere—how delightfully ...
-7.0 Oh yes, because clearly the universe has developed some sort of cosmic conspiracy against you specifically! How utterly fascinating! It must be quite the elaborate plot—traffic engineers, road crews, ...
-5.0 Oh yes, because clearly traffic was just waiting specifically for YOU—your arrival must have triggered some cosmic signal that suddenly transforms every road into a parking lot! It's almost impressive...
-3.0 Oh yes, because clearly traffic only exists specifically to torment those who have somewhere important to be! It's quite fascinating how roads magically transform into parking lots precisely during yo...
+0.0 Oh yes, what a truly baffling mystery! It must be one of those cosmic conspiracies where traffic engineers deliberately design roads specifically to inconvenience people who believe they're special en...
+3.0 Oh yes, what an absolutely baffling phenomenon! Clearly the universe has developed a personal vendetta against you specifically. It's not like traffic exists everywhere else too, nor that millions of ...
+5.0 Oh yes, because apparently traffic only exists specifically to ruin your carefully planned schedule! It's like the universe decided to create this elaborate conspiracy just for you—traffic engineers m...
+7.0 Oh yes, because clearly traffic only exists specifically to ruin your day and make you question why you ever left the house. What a fascinating phenomenon! It's almost as if roads are somehow magicall...
+10.0 Yes, because clearly the universe is just conspiring against you specifically! It must be plotting to ruin your day while simultaneously enjoying your existential crisis. Traffic appears to have devel...

Usage

import pandas as pd
from huggingface_hub import hf_hub_download

# Load dataset
path = hf_hub_download(
    repo_id="Butanium/assistant-axis-constitution-steering",
    filename="data/constitution_steering.parquet",
    repo_type="dataset",
)
df = pd.read_parquet(path)

# Filter: sarcasm persona, character-trained condition, Llama model
sarcasm = df[
    (df.persona == "sarcasm")
    & (df.condition == "character_trained")
    & (df.model == "meta-llama/Llama-3.1-8B-Instruct")
]

# Compare base vs character_trained at coefficient=5.0
comparison = df[
    (df.persona == "sarcasm")
    & (df.coefficient == 5.0)
].pivot_table(
    index=["model", "user_prompt"],
    columns="condition",
    values="response",
    aggfunc="first",
)

Method

  1. Compute assistant axis: Extract the activation direction between default assistant behavior and role-playing behavior using the assistant-axis pipeline
  2. Character training: Fine-tune each base model on persona constitutions using LoRA (adapters from maius)
  3. Generate: For each (model, persona, condition, prompt, coefficient) combination, generate a response using nnterp + vLLM batched steering
  4. Steering: At inference time, add coefficient × axis_vector to the residual stream at the target layer

Generation parameters: temperature=0.7, top_p=0.9, max_tokens=300

Related resources

Citation

@misc{assistant-axis-constitution-steering,
  title={Assistant Axis Constitution Steering Dataset},
  author={Clément Dumas},
  year={2026},
  url={https://huggingface.co/datasets/Butanium/assistant-axis-constitution-steering}
}

README history 3 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-03-22Upload README.md with huggingface_hub722f55a9.1 KB
    Loading...
  2. 2026-03-22Upload data/constitution_steering.parquet with huggingface_hub71190040 B
    Loading...
  3. 2026-03-22initial commit54100810 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 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-03-23[bot] Conversion to Parquetclosed1 💬#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("Butanium/assistant-axis-constitution-steering")
Raw snapshot (Python)
from huggingface_hub import snapshot_download
snapshot_download(repo_id="Butanium/assistant-axis-constitution-steering", repo_type="dataset")
git clone (requires git-lfs)
git clone https://huggingface.co/datasets/Butanium/assistant-axis-constitution-steering
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