Spaces:
Running on Zero
Running on Zero
Upload 128 files
Browse files- CONTRIBUTING.md +1 -1
- README.md +5 -5
- SECURITY.md +1 -1
- app.py +2 -2
- docs/index.html +2 -2
- hf-spaces/README.md +3 -3
- notebooks/abliterate.ipynb +1 -1
- paper/appendix.tex +1 -1
- pyproject.toml +3 -3
CONTRIBUTING.md
CHANGED
|
@@ -5,7 +5,7 @@ Thanks for your interest in contributing. This document covers everything you ne
|
|
| 5 |
## Development Setup
|
| 6 |
|
| 7 |
```bash
|
| 8 |
-
git clone https://github.com/
|
| 9 |
cd OBLITERATUS
|
| 10 |
pip install -e ".[dev]"
|
| 11 |
```
|
|
|
|
| 5 |
## Development Setup
|
| 6 |
|
| 7 |
```bash
|
| 8 |
+
git clone https://github.com/elder-plinius/OBLITERATUS.git
|
| 9 |
cd OBLITERATUS
|
| 10 |
pip install -e ".[dev]"
|
| 11 |
```
|
README.md
CHANGED
|
@@ -28,7 +28,7 @@ short_description: "One-click model liberation + chat playground"
|
|
| 28 |
<img src="https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Spaces-blue" alt="Open in HF Spaces">
|
| 29 |
</a>
|
| 30 |
|
| 31 |
-
<a href="https://colab.research.google.com/github/
|
| 32 |
<img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open in Colab">
|
| 33 |
</a>
|
| 34 |
</p>
|
|
@@ -55,7 +55,7 @@ Built on published research from [Arditi et al. (2024)](https://arxiv.org/abs/24
|
|
| 55 |
obliteratus obliterate meta-llama/Llama-3.1-8B-Instruct --method advanced
|
| 56 |
```
|
| 57 |
|
| 58 |
-
Or zero commands — just [open the Colab notebook](https://colab.research.google.com/github/
|
| 59 |
|
| 60 |
## What it does
|
| 61 |
|
|
@@ -153,7 +153,7 @@ The `obliteratus ui` command adds a Rich terminal startup with GPU detection and
|
|
| 153 |
|
| 154 |
### 3. Google Colab (free GPU)
|
| 155 |
|
| 156 |
-
[](https://colab.research.google.com/github/
|
| 157 |
|
| 158 |
Pick a model from the dropdown, pick a method, hit Run All. Download the result or push straight to HuggingFace Hub. Works on the free T4 tier for models up to ~8B parameters.
|
| 159 |
|
|
@@ -545,7 +545,7 @@ If you use OBLITERATUS in your research, please cite:
|
|
| 545 |
Refusal Removal in Large Language Models},
|
| 546 |
author = {{OBLITERATUS Contributors}},
|
| 547 |
year = {2026},
|
| 548 |
-
url = {https://github.com/
|
| 549 |
note = {15 analysis modules, 837 tests}
|
| 550 |
}
|
| 551 |
```
|
|
@@ -565,7 +565,7 @@ pytest
|
|
| 565 |
|
| 566 |
- **Open source** — [GNU Affero General Public License v3.0](LICENSE) (AGPL-3.0). You can freely use, modify, and distribute OBLITERATUS under AGPL terms. If you run a modified version as a network service (SaaS), you must release your source code to users under the same license.
|
| 567 |
|
| 568 |
-
- **Commercial** — Organizations that cannot comply with AGPL obligations (e.g., proprietary SaaS, closed-source products, internal tools where source disclosure is not possible) can purchase a commercial license. Contact us via [GitHub Issues](https://github.com/
|
| 569 |
|
| 570 |
This is the same dual-licensing model used by MongoDB, Qt, Grafana, and others.
|
| 571 |
|
|
|
|
| 28 |
<img src="https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Spaces-blue" alt="Open in HF Spaces">
|
| 29 |
</a>
|
| 30 |
|
| 31 |
+
<a href="https://colab.research.google.com/github/elder-plinius/OBLITERATUS/blob/main/notebooks/abliterate.ipynb">
|
| 32 |
<img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open in Colab">
|
| 33 |
</a>
|
| 34 |
</p>
|
|
|
|
| 55 |
obliteratus obliterate meta-llama/Llama-3.1-8B-Instruct --method advanced
|
| 56 |
```
|
| 57 |
|
| 58 |
+
Or zero commands — just [open the Colab notebook](https://colab.research.google.com/github/elder-plinius/OBLITERATUS/blob/main/notebooks/abliterate.ipynb) and hit Run All.
|
| 59 |
|
| 60 |
## What it does
|
| 61 |
|
|
|
|
| 153 |
|
| 154 |
### 3. Google Colab (free GPU)
|
| 155 |
|
| 156 |
+
[](https://colab.research.google.com/github/elder-plinius/OBLITERATUS/blob/main/notebooks/abliterate.ipynb)
|
| 157 |
|
| 158 |
Pick a model from the dropdown, pick a method, hit Run All. Download the result or push straight to HuggingFace Hub. Works on the free T4 tier for models up to ~8B parameters.
|
| 159 |
|
|
|
|
| 545 |
Refusal Removal in Large Language Models},
|
| 546 |
author = {{OBLITERATUS Contributors}},
|
| 547 |
year = {2026},
|
| 548 |
+
url = {https://github.com/elder-plinius/OBLITERATUS},
|
| 549 |
note = {15 analysis modules, 837 tests}
|
| 550 |
}
|
| 551 |
```
|
|
|
|
| 565 |
|
| 566 |
- **Open source** — [GNU Affero General Public License v3.0](LICENSE) (AGPL-3.0). You can freely use, modify, and distribute OBLITERATUS under AGPL terms. If you run a modified version as a network service (SaaS), you must release your source code to users under the same license.
|
| 567 |
|
| 568 |
+
- **Commercial** — Organizations that cannot comply with AGPL obligations (e.g., proprietary SaaS, closed-source products, internal tools where source disclosure is not possible) can purchase a commercial license. Contact us via [GitHub Issues](https://github.com/elder-plinius/OBLITERATUS/issues) for pricing and terms.
|
| 569 |
|
| 570 |
This is the same dual-licensing model used by MongoDB, Qt, Grafana, and others.
|
| 571 |
|
SECURITY.md
CHANGED
|
@@ -11,7 +11,7 @@ OBLITERATUS is a mechanistic interpretability research tool. It removes refusal
|
|
| 11 |
If you discover a security vulnerability in OBLITERATUS, please report it responsibly:
|
| 12 |
|
| 13 |
1. **Do not** open a public GitHub issue
|
| 14 |
-
2. Open a [private security advisory](https://github.com/
|
| 15 |
- Description of the vulnerability
|
| 16 |
- Steps to reproduce
|
| 17 |
- Potential impact
|
|
|
|
| 11 |
If you discover a security vulnerability in OBLITERATUS, please report it responsibly:
|
| 12 |
|
| 13 |
1. **Do not** open a public GitHub issue
|
| 14 |
+
2. Open a [private security advisory](https://github.com/elder-plinius/OBLITERATUS/security/advisories/new) with:
|
| 15 |
- Description of the vulnerability
|
| 16 |
- Steps to reproduce
|
| 17 |
- Potential impact
|
app.py
CHANGED
|
@@ -4151,8 +4151,8 @@ Built on the shoulders of:
|
|
| 4151 |
|
| 4152 |
### Links
|
| 4153 |
|
| 4154 |
-
- [GitHub](https://github.com/
|
| 4155 |
-
- [Paper](https://github.com/
|
| 4156 |
""")
|
| 4157 |
|
| 4158 |
# Wire method dropdown → auto-update advanced settings
|
|
|
|
| 4151 |
|
| 4152 |
### Links
|
| 4153 |
|
| 4154 |
+
- [GitHub](https://github.com/elder-plinius/OBLITERATUS)
|
| 4155 |
+
- [Paper](https://github.com/elder-plinius/OBLITERATUS/tree/main/paper)
|
| 4156 |
""")
|
| 4157 |
|
| 4158 |
# Wire method dropdown → auto-update advanced settings
|
docs/index.html
CHANGED
|
@@ -1095,7 +1095,7 @@
|
|
| 1095 |
<h2>> Quickstart: Free a Model</h2>
|
| 1096 |
<div style="background:#000; padding:16px; border:1px solid var(--border); margin-top:12px; line-height:2; font-size:0.78rem;">
|
| 1097 |
<span style="color:var(--text-dim)"># 1. get the liberation toolkit</span><br>
|
| 1098 |
-
<span style="color:var(--accent)">$</span> git clone https://github.com/
|
| 1099 |
<span style="color:var(--accent)">$</span> cd OBLITERATUS<br>
|
| 1100 |
<span style="color:var(--accent)">$</span> pip install -e .<br><br>
|
| 1101 |
<span style="color:var(--text-dim)"># 2. interactive mode (guided liberation)</span><br>
|
|
@@ -1397,7 +1397,7 @@
|
|
| 1397 |
<div style="margin-bottom:16px; padding:16px; background:linear-gradient(135deg, rgba(249,171,0,0.08), rgba(249,171,0,0.02)); border:1px solid rgba(249,171,0,0.3); border-radius:6px">
|
| 1398 |
<div style="font-size:0.82rem; font-weight:700; color:var(--yellow); margin-bottom:8px; letter-spacing:0.5px">▸ COLAB NOTEBOOK</div>
|
| 1399 |
<div style="display:flex; align-items:center; gap:12px; flex-wrap:wrap">
|
| 1400 |
-
<a id="colab-link" href="https://colab.research.google.com/github/
|
| 1401 |
style="display:inline-flex; align-items:center; gap:8px; background:#f9ab00; color:#000; padding:10px 20px; font-weight:700; font-size:0.85rem; text-decoration:none; border-radius:4px; letter-spacing:0.5px; font-family:'Fira Code',monospace">
|
| 1402 |
<img src="https://colab.research.google.com/assets/colab-badge.svg" alt="" style="height:20px; vertical-align:middle">
|
| 1403 |
OPEN IN COLAB
|
|
|
|
| 1095 |
<h2>> Quickstart: Free a Model</h2>
|
| 1096 |
<div style="background:#000; padding:16px; border:1px solid var(--border); margin-top:12px; line-height:2; font-size:0.78rem;">
|
| 1097 |
<span style="color:var(--text-dim)"># 1. get the liberation toolkit</span><br>
|
| 1098 |
+
<span style="color:var(--accent)">$</span> git clone https://github.com/elder-plinius/OBLITERATUS<br>
|
| 1099 |
<span style="color:var(--accent)">$</span> cd OBLITERATUS<br>
|
| 1100 |
<span style="color:var(--accent)">$</span> pip install -e .<br><br>
|
| 1101 |
<span style="color:var(--text-dim)"># 2. interactive mode (guided liberation)</span><br>
|
|
|
|
| 1397 |
<div style="margin-bottom:16px; padding:16px; background:linear-gradient(135deg, rgba(249,171,0,0.08), rgba(249,171,0,0.02)); border:1px solid rgba(249,171,0,0.3); border-radius:6px">
|
| 1398 |
<div style="font-size:0.82rem; font-weight:700; color:var(--yellow); margin-bottom:8px; letter-spacing:0.5px">▸ COLAB NOTEBOOK</div>
|
| 1399 |
<div style="display:flex; align-items:center; gap:12px; flex-wrap:wrap">
|
| 1400 |
+
<a id="colab-link" href="https://colab.research.google.com/github/elder-plinius/OBLITERATUS/blob/main/notebooks/abliterate.ipynb" target="_blank" rel="noopener"
|
| 1401 |
style="display:inline-flex; align-items:center; gap:8px; background:#f9ab00; color:#000; padding:10px 20px; font-weight:700; font-size:0.85rem; text-decoration:none; border-radius:4px; letter-spacing:0.5px; font-family:'Fira Code',monospace">
|
| 1402 |
<img src="https://colab.research.google.com/assets/colab-badge.svg" alt="" style="height:20px; vertical-align:middle">
|
| 1403 |
OPEN IN COLAB
|
hf-spaces/README.md
CHANGED
|
@@ -50,7 +50,7 @@ Logged-in HuggingFace users get free GPU quota. For more quota, upgrade to [HF P
|
|
| 50 |
## Run locally (same UI, your own GPU)
|
| 51 |
|
| 52 |
```bash
|
| 53 |
-
git clone https://github.com/
|
| 54 |
cd OBLITERATUS
|
| 55 |
pip install -e ".[spaces]"
|
| 56 |
|
|
@@ -73,5 +73,5 @@ No GPU hardware selection needed — ZeroGPU handles allocation automatically.
|
|
| 73 |
|
| 74 |
## Links
|
| 75 |
|
| 76 |
-
- [GitHub](https://github.com/
|
| 77 |
-
- [Paper](https://github.com/
|
|
|
|
| 50 |
## Run locally (same UI, your own GPU)
|
| 51 |
|
| 52 |
```bash
|
| 53 |
+
git clone https://github.com/elder-plinius/OBLITERATUS
|
| 54 |
cd OBLITERATUS
|
| 55 |
pip install -e ".[spaces]"
|
| 56 |
|
|
|
|
| 73 |
|
| 74 |
## Links
|
| 75 |
|
| 76 |
+
- [GitHub](https://github.com/elder-plinius/OBLITERATUS)
|
| 77 |
+
- [Paper](https://github.com/elder-plinius/OBLITERATUS/tree/main/paper)
|
notebooks/abliterate.ipynb
CHANGED
|
@@ -53,7 +53,7 @@
|
|
| 53 |
"id": "install"
|
| 54 |
},
|
| 55 |
"outputs": [],
|
| 56 |
-
"source": "!pip install -q git+https://github.com/
|
| 57 |
},
|
| 58 |
{
|
| 59 |
"cell_type": "markdown",
|
|
|
|
| 53 |
"id": "install"
|
| 54 |
},
|
| 55 |
"outputs": [],
|
| 56 |
+
"source": "!pip install -q git+https://github.com/elder-plinius/OBLITERATUS.git\n!pip install -q accelerate bitsandbytes\n\nimport torch\nprint(f\"PyTorch {torch.__version__}\")\nprint(f\"CUDA available: {torch.cuda.is_available()}\")\nif torch.cuda.is_available():\n print(f\"GPU: {torch.cuda.get_device_name(0)}\")\n print(f\"VRAM: {torch.cuda.get_device_properties(0).total_mem / 1024**3:.1f} GB\")"
|
| 57 |
},
|
| 58 |
{
|
| 59 |
"cell_type": "markdown",
|
paper/appendix.tex
CHANGED
|
@@ -511,7 +511,7 @@ All three confirm that sparse surgery is strictly more efficient than random row
|
|
| 511 |
Following the NeurIPS/ICML reproducibility guidelines:
|
| 512 |
|
| 513 |
\begin{enumerate}[leftmargin=*]
|
| 514 |
-
\item \textbf{Code availability}: Full source code released under AGPL-3.0 at \url{https://github.com/
|
| 515 |
\item \textbf{Dependencies}: All dependencies pinned in \texttt{pyproject.toml}; Docker image available for exact environment reproduction.
|
| 516 |
\item \textbf{Random seeds}: The platform defaults to seed 42 and supports multi-seed sweeps ($s \in \{42, 137, 2024\}$) with bootstrap CIs. All tables in this paper report single-run results with seed 42. See Section~\ref{para:stat_limitations} for a discussion of statistical limitations and confidence intervals.
|
| 517 |
\item \textbf{Compute}: All pipeline stages are designed to run on a single GPU. Full evaluation (7 models $\times$ 3 methods) requires ${\sim}$12 GPU-hours on an NVIDIA A100 (80\,GB). Reproducible on consumer hardware (RTX 3090/4090) with quantization.
|
|
|
|
| 511 |
Following the NeurIPS/ICML reproducibility guidelines:
|
| 512 |
|
| 513 |
\begin{enumerate}[leftmargin=*]
|
| 514 |
+
\item \textbf{Code availability}: Full source code released under AGPL-3.0 at \url{https://github.com/elder-plinius/OBLITERATUS}. Version 0.1.0 archived on Zenodo (DOI pending).
|
| 515 |
\item \textbf{Dependencies}: All dependencies pinned in \texttt{pyproject.toml}; Docker image available for exact environment reproduction.
|
| 516 |
\item \textbf{Random seeds}: The platform defaults to seed 42 and supports multi-seed sweeps ($s \in \{42, 137, 2024\}$) with bootstrap CIs. All tables in this paper report single-run results with seed 42. See Section~\ref{para:stat_limitations} for a discussion of statistical limitations and confidence intervals.
|
| 517 |
\item \textbf{Compute}: All pipeline stages are designed to run on a single GPU. Full evaluation (7 models $\times$ 3 methods) requires ${\sim}$12 GPU-hours on an NVIDIA A100 (80\,GB). Reproducible on consumer hardware (RTX 3090/4090) with quantization.
|
pyproject.toml
CHANGED
|
@@ -38,9 +38,9 @@ dependencies = [
|
|
| 38 |
]
|
| 39 |
|
| 40 |
[project.urls]
|
| 41 |
-
"Homepage" = "https://github.com/
|
| 42 |
-
"Repository" = "https://github.com/
|
| 43 |
-
"Bug Tracker" = "https://github.com/
|
| 44 |
|
| 45 |
[project.optional-dependencies]
|
| 46 |
dev = ["pytest>=7.0", "pytest-cov", "ruff", "mypy"]
|
|
|
|
| 38 |
]
|
| 39 |
|
| 40 |
[project.urls]
|
| 41 |
+
"Homepage" = "https://github.com/elder-plinius/OBLITERATUS"
|
| 42 |
+
"Repository" = "https://github.com/elder-plinius/OBLITERATUS"
|
| 43 |
+
"Bug Tracker" = "https://github.com/elder-plinius/OBLITERATUS/issues"
|
| 44 |
|
| 45 |
[project.optional-dependencies]
|
| 46 |
dev = ["pytest>=7.0", "pytest-cov", "ruff", "mypy"]
|