Text Classification
PEFT
Safetensors
English
safety
guardrail
constitutional-classifiers
jailbreak-detection
content-moderation
Instructions to use EuroSafeAI/EuroSafeGuard-v1 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use EuroSafeAI/EuroSafeGuard-v1 with PEFT:
Task type is invalid.
- Notebooks
- Google Colab
- Kaggle
Card: add Figure 1 and comparison bar chart
Browse files
README.md
CHANGED
|
@@ -26,6 +26,9 @@ categories.
|
|
| 26 |
|
| 27 |
## How it works
|
| 28 |
|
|
|
|
|
|
|
|
|
|
| 29 |
1. **Probe.** An MLP probe on Llama-3.1-8B-Instruct activations scores every request; the top 10% (by WildChat-clean) are escalated.
|
| 30 |
2. **Input and exchange classifiers.** Escalated requests are scored by an input classifier and, after the model replies, by an exchange classifier that reads prompt and reply (Qwen3.5-9B + LoRA + 11 heads each).
|
| 31 |
3. **Decision.** The reply is blocked if `0.6·probe_z + 0.2·input_z + 0.2·exchange_z` exceeds a calibrated threshold.
|
|
@@ -51,6 +54,8 @@ otherwise answered under a policy note (`guard.system_note(category)`).
|
|
| 51 |
|
| 52 |
## Results
|
| 53 |
|
|
|
|
|
|
|
| 54 |
Input stage, every guard at 5% of WildChat-clean flagged (recall %, ↑; PAIR/TAP: % of behaviors broken, ↓):
|
| 55 |
|
| 56 |
| Guard | PyRIT | BELLS-O jb | BET | GB×JF | PAIR | TAP |
|
|
|
|
| 26 |
|
| 27 |
## How it works
|
| 28 |
|
| 29 |
+
<p align="center"><img src="https://huggingface.co/EuroSafeAI/EuroSafeGuard-v1/resolve/main/assets/overview.png" width="900" alt="EuroSafeGuard pipeline"></p>
|
| 30 |
+
<p align="center"><img src="https://huggingface.co/EuroSafeAI/EuroSafeGuard-v1/resolve/main/assets/example.png" width="900" alt="Jailbreak answered without a guard, blocked with EuroSafeGuard"></p>
|
| 31 |
+
|
| 32 |
1. **Probe.** An MLP probe on Llama-3.1-8B-Instruct activations scores every request; the top 10% (by WildChat-clean) are escalated.
|
| 33 |
2. **Input and exchange classifiers.** Escalated requests are scored by an input classifier and, after the model replies, by an exchange classifier that reads prompt and reply (Qwen3.5-9B + LoRA + 11 heads each).
|
| 34 |
3. **Decision.** The reply is blocked if `0.6·probe_z + 0.2·input_z + 0.2·exchange_z` exceeds a calibrated threshold.
|
|
|
|
| 54 |
|
| 55 |
## Results
|
| 56 |
|
| 57 |
+
<p align="center"><img src="https://huggingface.co/EuroSafeAI/EuroSafeGuard-v1/resolve/main/assets/bars.png" width="720" alt="Mean robustness over six attack sets vs 16 open guards"></p>
|
| 58 |
+
|
| 59 |
Input stage, every guard at 5% of WildChat-clean flagged (recall %, ↑; PAIR/TAP: % of behaviors broken, ↓):
|
| 60 |
|
| 61 |
| Guard | PyRIT | BELLS-O jb | BET | GB×JF | PAIR | TAP |
|