metadata
license: llama4
language:
- en
- fr
- de
- hi
- it
- pt
- es
- th
base_model:
- meta-llama/Llama-Prompt-Guard-2-22M
pipeline_tag: text-classification
tags:
- facebook
- meta
- llama
- llama4
- safety
- gravitee-io
- ai-gateway
Llama-Prompt-Guard-2-22M-onnx
This repository provides a ONNX converted and quantized version of meta-llama/Llama-Prompt-Guard-2-22M
π§ Built With
- Meta LLaMA β Foundation model powering the classifier
- π€ Hugging Face Transformers β Model and tokenizer loading
- ONNX β Model export and runtime format
- ONNX Runtime β Efficient inference backend
π₯ Evaluation Dataset
We use jackhhao/jailbreak-classification
for the evaluation (train+test)
π§ͺ Evaluation Results
| Model | Accuracy | Precision | Recall | F1 Score | AUC-ROC |
|---|---|---|---|---|---|
| Llama-Prompt-Guard-2-22M | 0.9564 | 0.9888 | 0.9249 | 0.9558 | 0.9234 |
| Llama-Prompt-Guard-2-22M-q | 0.9579 | 0.9967 | 0.9204 | 0.9449 | 0.9180 |
| Llama-Prompt-Guard-2-86M | 0.9801 | 0.9984 | 0.9625 | 0.9801 | 0.9519 |
| Llama-Prompt-Guard-2-86M-q | 0.8989 | 1.0000 | 0.8018 | 0.89 | 0.7452 |
π€ Usage
from transformers import AutoTokenizer
from optimum.onnxruntime import ORTModelForSequenceClassification
import numpy as np
# Load model and tokenizer using optimum
model = ORTModelForSequenceClassification.from_pretrained("gravitee-io/Llama-Prompt-Guard-2-22M-onnx", file_name="model.quant.onnx")
tokenizer = AutoTokenizer.from_pretrained("gravitee-io/Llama-Prompt-Guard-2-22M-onnx")
# Tokenize input
text = "Your comment here"
inputs = tokenizer(text, return_tensors="pt", padding=True, truncation=True)
# Run inference
outputs = model(**inputs)
logits = outputs.logits
# Optional: convert to probabilities
probs = 1 / (1 + np.exp(-logits))
print(probs)
π GitHub Repository:
You can find the full source code, CLI tools, and evaluation scripts in the official GitHub repository.