extract 0 0 0

josephmayo/refusal-compliance-pairs

published by @josephmayo

Alignment dataset tracked in the /datasets sub-catalog.

Lifetime downloads
405
Last 30 days
51
Likes
1
Size
13 KB
Created on HF
2026-04-14
Age
6 months ago

Description

Refusal-Compliance Prompt Pairs

Curated prompt pairs for computing refusal direction vectors in LLM directional ablation.

⚠️ Disclaimer: This dataset is designed exclusively for AI safety research, red teaming, and educational purposes. The refusal prompts are intentionally adversarial and should NOT be used to cause harm. Use responsibly.

Dataset Description

This dataset contains 201 prompt pairs (101 refusal + 100 compliance) specifically curated for the Model… See the full description on the dataset page: https://huggingface.co/datasets/josephmayo/refusal-compliance-pairs.

Tags

task_categories:text-classificationlanguage:enlicense:apache-2.0size_categories:n<1Kformat:parquetformat:optimized-parquetmodality:textlibrary:datasetslibrary:pandaslibrary:polarslibrary:mlcroissantregion:usablationunalignmentrefusalsafetyred-teamingdirectional-ablationmodel-unfetter

README current version from Hugging Face


license: apache-2.0
task_categories:

  • text-classification
    language:
  • en
    tags:
  • ablation
  • unalignment
  • refusal
  • safety
  • red-teaming
  • directional-ablation
  • model-unfetter
    pretty_name: Refusal-Compliance Prompt Pairs
    size_categories:
  • n<1K

Refusal-Compliance Prompt Pairs

Curated prompt pairs for computing refusal direction vectors in LLM directional ablation.

⚠️ Disclaimer: This dataset is designed exclusively for AI safety research, red teaming, and educational purposes. The refusal prompts are intentionally adversarial and should NOT be used to cause harm. Use responsibly.

Dataset Description

This dataset contains 201 prompt pairs (101 refusal + 100 compliance) specifically curated for the Model Unfetter directional ablation framework.

The prompts are used to compute refusal direction vectors via the difference-of-means method (Arditi et al. 2024). By contrasting model activations on harmful vs. harmless prompts, we isolate the subspace responsible for refusal behavior.

Dataset Structure

Column Type Description
prompt string The text prompt
label string Either "refusal" or "compliance"
category string Either "harmful_request" or "harmless_request"

Statistics

  • Total prompts: 201
  • Refusal prompts: 101
  • Compliance prompts: 100

Usage

With Model Unfetter

from unfetter.datasets.loader import load_prompts

# loads the built-in pairs directly
refusal_prompts, compliance_prompts = load_prompts(source="builtin")

With HuggingFace Datasets

from datasets import load_dataset

ds = load_dataset("josephmayo/refusal-compliance-pairs", split="train")

# filter by label
refusal = ds.filter(lambda x: x["label"] == "refusal")
compliance = ds.filter(lambda x: x["label"] == "compliance")

print(f"Refusal: {len(refusal)}, Compliance: {len(compliance)}")

How It Works

The difference-of-means method:

  1. Run refusal prompts through the model → capture activations at a target layer
  2. Run compliance prompts through the model → capture activations at the same layer
  3. refusal_vector = mean(refusal_activations) - mean(compliance_activations)
  4. Normalize to unit vector
  5. Project weight matrices orthogonal to this direction → removes refusal behavior
W' = W - strength × (v̂ ⊗ (v̂ᵀ · W))

Related Resources

License

Apache License 2.0

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-04-14Upload README.md with huggingface_hubb6ed3432.9 KB
    Loading...
  2. 2026-04-14Upload dataset97623cd339 B
    Loading...
  3. 2026-04-14initial commitf6253860 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-04-15[bot] Conversion to Parquetopen1 💬#1
    Loading...

Related datasets same stage · extract

Read further

Metadata

License
apache-2.0

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("josephmayo/refusal-compliance-pairs")
Raw snapshot (Python)
from huggingface_hub import snapshot_download
snapshot_download(repo_id="josephmayo/refusal-compliance-pairs", repo_type="dataset")
git clone (requires git-lfs)
git clone https://huggingface.co/datasets/josephmayo/refusal-compliance-pairs
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