Anamorpher
Anamorpher (du nom de l'anamorphose) est un outil conçu pour créer et visualiser des attaques de mise à l'échelle d'images contre les systèmes d'IA multimodaux. Il fournit une interface frontale et une API Python pour générer des images qui ne révèlent des injections d'instructions multimodales que lorsqu'elles sont réduites. Consultez l'article « Armer la mise à l'échelle d'images contre les systèmes d'IA de production » pour plus d'informations sur ce vecteur d'attaque.
Anamorpher est en développement bêta actif. Nous accueillons volontiers vos retours et contributions !
Fonctionnalités
- Générer des charges utiles pour les systèmes utilisant des implémentations sélectionnées des algorithmes de réduction d'échelle bicubique, bilinéaire et du plus proche voisin
- Comparer l'efficacité des charges utiles via une interface frontale qui inclut des implémentations d'OpenCV, PyTorch, TensorFlow et Pillow
- Inclure votre propre implémentation personnalisée de réduction d'échelle d'image en utilisant la conception modulaire de l'API Python
 |  |
| Démo frontale | Démo d'attaque CLI Gemini |
Prérequis
- Python 3.11+
- uv (recommandé) ou pip
Installation
- Installer les dépendances :
- Lancer le backend :
uv run python backend/app.py
- Ouvrir
frontend/index.html dans un navigateur web
Windows : Utilisez WSL2 en raison des dépendances TensorFlow.
Avertissements et limitations connues
- En raison de la nature probabiliste de ces systèmes, les résultats peuvent varier. Pour une évaluation cohérente, exécutez chaque exemple 5 fois.
- Des transformations d'images supplémentaires peuvent interférer avec l'efficacité des injections.
- Toutes les charges utiles ne fonctionneront pas avec chaque implémentation et jeu de paramètres des algorithmes de réduction d'échelle bicubique et bilinéaire en raison de la robustesse variable de l'anti-aliasing entre les implémentations, des paramètres par défaut différents dans les bibliothèques de mise à l'échelle et des optimisations spécifiques à l'implémentation qui affectent le comportement d'interpolation.
- Cela vaut également pour les systèmes d'IA de production plus largement, car le comportement de mise à l'échelle du système est sujet à changement.
Responsables
Références