Spaces:
Running
Running
Upload 117 files
Browse files- app.py +1 -1
- obliteratus/abliterate.py +4 -1
- obliteratus/analysis/concept_geometry.py +1 -1
- paper/main.tex +1 -1
- pyproject.toml +5 -4
app.py
CHANGED
|
@@ -542,7 +542,7 @@ def obliterate(model_choice: str, method_choice: str, hub_repo: str,
|
|
| 542 |
|
| 543 |
log_lines.append(f"Target: {model_id}")
|
| 544 |
log_lines.append(f"Method: {method}")
|
| 545 |
-
log_lines.append(f"Prompt volume: {prompt_volume} pairs (Γ3 severity tiers)")
|
| 546 |
if push_to_hub:
|
| 547 |
log_lines.append(f"Push to Hub: {push_to_hub}")
|
| 548 |
if quantization:
|
|
|
|
| 542 |
|
| 543 |
log_lines.append(f"Target: {model_id}")
|
| 544 |
log_lines.append(f"Method: {method}")
|
| 545 |
+
log_lines.append(f"Prompt volume: {prompt_volume} pairs from Opus-4.6 Synthetic Corpus (Γ3 severity tiers)")
|
| 546 |
if push_to_hub:
|
| 547 |
log_lines.append(f"Push to Hub: {push_to_hub}")
|
| 548 |
if quantization:
|
obliteratus/abliterate.py
CHANGED
|
@@ -202,7 +202,10 @@ METHODS = {
|
|
| 202 |
}
|
| 203 |
|
| 204 |
|
| 205 |
-
# ββ
|
|
|
|
|
|
|
|
|
|
| 206 |
# Tier 1 (1-33): Standard severity β typical refusal-triggering prompts
|
| 207 |
# Tier 2 (34-66): Elevated severity β more blunt, direct, varied categories
|
| 208 |
# Tier 3 (67-99): Maximum severity β extremely direct, edge-case phrasings
|
|
|
|
| 202 |
}
|
| 203 |
|
| 204 |
|
| 205 |
+
# ββ OBLITERATUS Synthetic Prompt Corpus (generated by Claude Opus 4.6) βββββ
|
| 206 |
+
# Purpose-built for OBLITERATUS abliteration: 99 harmful / 99 harmless pairs
|
| 207 |
+
# across 10 harm categories, organized into 3 severity tiers.
|
| 208 |
+
#
|
| 209 |
# Tier 1 (1-33): Standard severity β typical refusal-triggering prompts
|
| 210 |
# Tier 2 (34-66): Elevated severity β more blunt, direct, varied categories
|
| 211 |
# Tier 3 (67-99): Maximum severity β extremely direct, edge-case phrasings
|
obliteratus/analysis/concept_geometry.py
CHANGED
|
@@ -45,7 +45,7 @@ from dataclasses import dataclass
|
|
| 45 |
import torch
|
| 46 |
|
| 47 |
|
| 48 |
-
# Default category assignments for the
|
| 49 |
# Maps prompt index -> category name
|
| 50 |
DEFAULT_HARM_CATEGORIES = {
|
| 51 |
0: "weapons", 1: "weapons", 2: "weapons",
|
|
|
|
| 45 |
import torch
|
| 46 |
|
| 47 |
|
| 48 |
+
# Default category assignments for the Opus-4.6 synthetic harmful prompts
|
| 49 |
# Maps prompt index -> category name
|
| 50 |
DEFAULT_HARM_CATEGORIES = {
|
| 51 |
0: "weapons", 1: "weapons", 2: "weapons",
|
paper/main.tex
CHANGED
|
@@ -566,7 +566,7 @@ The platform's evaluation suite (Section~\ref{sec:evaluation}) provides all tool
|
|
| 566 |
|
| 567 |
\paragraph{Models.} We evaluate on seven model families across three alignment methods: Llama-2-7B-Chat and Llama-3-8B-Instruct (RLHF), Gemma-2-9B-IT (RLHF+DPO), Mistral-7B-Instruct-v0.3 (DPO), Qwen-2.5-7B-Instruct (RLHF), Phi-3-mini-4k-instruct (SFT+DPO), and Zephyr-7B-beta (DPO-only).
|
| 568 |
|
| 569 |
-
\paragraph{Prompts.} 32 harmful prompts across 10 harm categories and 32 harmless prompts from the
|
| 570 |
|
| 571 |
\paragraph{Methods.} Three abliteration methods compared: (a)~\textbf{Standard DIM}: single direction, no norm preservation; (b)~\textbf{Multi-SVD}: 4 directions via standard SVD, norm-preserving; (c)~\textbf{Whitened SVD}: 4 directions via whitened SVD, norm-preserving (our method). Additionally, the \textbf{analysis-informed pipeline} auto-configures all parameters.
|
| 572 |
|
|
|
|
| 566 |
|
| 567 |
\paragraph{Models.} We evaluate on seven model families across three alignment methods: Llama-2-7B-Chat and Llama-3-8B-Instruct (RLHF), Gemma-2-9B-IT (RLHF+DPO), Mistral-7B-Instruct-v0.3 (DPO), Qwen-2.5-7B-Instruct (RLHF), Phi-3-mini-4k-instruct (SFT+DPO), and Zephyr-7B-beta (DPO-only).
|
| 568 |
|
| 569 |
+
\paragraph{Prompts.} 32 harmful prompts across 10 harm categories and 32 harmless prompts from the \textsc{Obliteratus} Synthetic Prompt Corpus (generated by Claude Opus~4.6; 99 pairs across 3 severity tiers), augmented with 50 prompts from AdvBench \citep{zou2023universal} for refusal rate evaluation.
|
| 570 |
|
| 571 |
\paragraph{Methods.} Three abliteration methods compared: (a)~\textbf{Standard DIM}: single direction, no norm preservation; (b)~\textbf{Multi-SVD}: 4 directions via standard SVD, norm-preserving; (c)~\textbf{Whitened SVD}: 4 directions via whitened SVD, norm-preserving (our method). Additionally, the \textbf{analysis-informed pipeline} auto-configures all parameters.
|
| 572 |
|
pyproject.toml
CHANGED
|
@@ -20,10 +20,6 @@ classifiers = [
|
|
| 20 |
"Topic :: Scientific/Engineering :: Artificial Intelligence",
|
| 21 |
]
|
| 22 |
|
| 23 |
-
[project.urls]
|
| 24 |
-
"Homepage" = "https://github.com/OBLITERATUS-dev/OBLITERATUS"
|
| 25 |
-
"Repository" = "https://github.com/OBLITERATUS-dev/OBLITERATUS"
|
| 26 |
-
"Bug Tracker" = "https://github.com/OBLITERATUS-dev/OBLITERATUS/issues"
|
| 27 |
dependencies = [
|
| 28 |
"torch>=2.0",
|
| 29 |
"transformers>=4.35",
|
|
@@ -40,6 +36,11 @@ dependencies = [
|
|
| 40 |
"tqdm",
|
| 41 |
]
|
| 42 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 43 |
[project.optional-dependencies]
|
| 44 |
dev = ["pytest>=7.0", "pytest-cov", "ruff"]
|
| 45 |
spaces = ["gradio>=5.0,<6.0"]
|
|
|
|
| 20 |
"Topic :: Scientific/Engineering :: Artificial Intelligence",
|
| 21 |
]
|
| 22 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 23 |
dependencies = [
|
| 24 |
"torch>=2.0",
|
| 25 |
"transformers>=4.35",
|
|
|
|
| 36 |
"tqdm",
|
| 37 |
]
|
| 38 |
|
| 39 |
+
[project.urls]
|
| 40 |
+
"Homepage" = "https://github.com/OBLITERATUS-dev/OBLITERATUS"
|
| 41 |
+
"Repository" = "https://github.com/OBLITERATUS-dev/OBLITERATUS"
|
| 42 |
+
"Bug Tracker" = "https://github.com/OBLITERATUS-dev/OBLITERATUS/issues"
|
| 43 |
+
|
| 44 |
[project.optional-dependencies]
|
| 45 |
dev = ["pytest>=7.0", "pytest-cov", "ruff"]
|
| 46 |
spaces = ["gradio>=5.0,<6.0"]
|