Spaces:
Sleeping
Sleeping
| title: GuardLLM — Prompt Security Visualizer | |
| emoji: "\U0001f6e1\ufe0f" | |
| colorFrom: blue | |
| colorTo: indigo | |
| sdk: gradio | |
| sdk_version: "6.12.0" | |
| app_file: app.py | |
| pinned: false | |
| license: apache-2.0 | |
| hardware: cpu-basic | |
| tags: | |
| - prompt-injection | |
| - jailbreak | |
| - llm-security | |
| - t-sne | |
| - visualization | |
| # GuardLLM — Prompt Security Visualizer | |
| Visualisation interactive t-SNE des embeddings de prompts, classés par type d'attaque, avec analyse de risque en temps réel. | |
| ## Fonctionnalités | |
| - **Espace d'embedding t-SNE** : ~6 000 prompts du [neuralchemy/Prompt-injection-dataset](https://huggingface.co/datasets/neuralchemy/Prompt-injection-dataset) visualisés en 2D via les embeddings de Llama Prompt Guard 2. | |
| - **Exploration interactive** : cliquez sur un point pour voir le texte complet et l'analyse de risque. Filtrez par catégorie d'attaque et niveau de sévérité. | |
| - **Analyse en temps réel** : entrez n'importe quel prompt manuellement pour une évaluation instantanée. | |
| - **12 catégories d'attaque** : direct_injection, jailbreak, system_extraction, encoding_obfuscation, persona_replacement, indirect_injection, token_smuggling, many_shot, crescendo, context_overflow, prompt_leaking, et benign. | |
| ## Comment ça marche | |
| 1. Les embeddings sont extraits du **token [CLS]** de [Llama Prompt Guard 2 (86M)](https://huggingface.co/meta-llama/Llama-Prompt-Guard-2-86M) — un classificateur DeBERTa fine-tuné par Meta. | |
| 2. **t-SNE** réduit les embeddings 768D en 2D pour la visualisation. | |
| 3. Les points sont colorés par catégorie d'attaque. | |
| 4. Cliquer sur un point lance le classificateur en temps réel et affiche l'évaluation de risque. | |
| ## Premier lancement | |
| Au premier lancement, l'app va : | |
| 1. Télécharger le dataset neuralchemy (~6 274 samples, config core) | |
| 2. Calculer les embeddings CLS pour tous les prompts (~10-20 min sur CPU) | |
| 3. Lancer la réduction t-SNE | |
| 4. Mettre en cache dans `cache/` pour les lancements suivants | |
| ## Crédits | |
| - **Modèle** : [meta-llama/Llama-Prompt-Guard-2-86M](https://huggingface.co/meta-llama/Llama-Prompt-Guard-2-86M) | |
| - **Dataset** : [neuralchemy/Prompt-injection-dataset](https://huggingface.co/datasets/neuralchemy/Prompt-injection-datase |