Installer Anonimal
Anonimal s’exécute en local / auto-hébergé : les données ne quittent jamais votre infrastructure. L’image est publiée sur GitHub Container Registry et expose le port 8000 à l’intérieur du conteneur.
Choisir une image
Section intitulée « Choisir une image »Il existe deux images. Choisissez selon la couverture par rapport au poids.
| Image | Tag | Taille | Détecte | Quand |
|---|---|---|---|---|
| full (ML) | :latest, :<ver> | image ~6-7 Go + ~3 Go de RAM | structuré + noms / adresses (OPF) | couverture maximale ; remplacement de l’Anonimal de l’écosystème |
| lite (regex) | :lite, :<ver>-lite | dizaines de Mo | structuré uniquement (e-mail, téléphone, carte, DNI, CUIT, CBU, secrets) | léger, sans ML ; ne voit pas les noms en texte libre |
Prérequis
Section intitulée « Prérequis »- Docker (le seul prérequis impératif).
- lite : quelques dizaines de Mo de disque et une RAM minimale. Démarre instantanément.
- full : ~6-7 Go de disque et ~3 Go de RAM pour le modèle résident ; il est lié au CPU. Allouez au conteneur environ 6 Go de RAM.
Docker run
Section intitulée « Docker run »# Démarre instantanément, sans modèledocker run -d --name anonimal -p 8920:8000 \ ghcr.io/diegoparras/anonimal-svc:lite# Charge le modèle en RAM au premier démarrage — laissez-lui un instantdocker run -d --name anonimal -p 8920:8000 \ ghcr.io/diegoparras/anonimal-svc:latestPremier démarrage
Section intitulée « Premier démarrage »Vérifiez l’état de santé, puis anonymisez un échantillon. L’interface web est servie à la même adresse.
curl -s localhost:8920/healthcurl -s localhost:8920/anonymize -H "Content-Type: application/json" \ -d '{"text":"email juan@acme.com, CUIT 20-12345678-6","mode":"pseudo"}'Sur l’image full, /health répond immédiatement pendant que le modèle se charge en
arrière-plan ; ml.ready passe à true une fois le checkpoint chaud. L’interface se trouve à
http://localhost:8920.
Configuration : moteur regex vs ML
Section intitulée « Configuration : moteur regex vs ML »La variable ANONIMAL_ENGINE sélectionne le moteur de détection :
auto(par défaut) — utilise le ML s’il est prêt, sinon se rabat sur lite.lite— regex uniquement (structuré + identifiants LATAM). Toujours disponible.ml— force le moteur OpenAI Privacy Filter (renvoie503s’il n’est pas disponible, par ex. sur l’image lite).
OPF_DEVICE (image full uniquement) bascule le moteur ML entre cpu et cuda.
Variables d’environnement
Section intitulée « Variables d’environnement »| Variable | Par défaut | Objet |
|---|---|---|
ANONIMAL_ENGINE | auto | Sélection du moteur : auto · lite · ml. |
ANONIMAL_MODE | pseudo | Mode de remplacement par défaut pour l’API / l’interface. |
ANONIMAL_TOKEN | (vide) | Jeton de service. S’il est défini, chaque requête doit le porter (Authorization: Bearer ou X-Anonimal-Token). |
ANON_HASH_KEY | (aléatoire par processus) | Clé pour le mode hash ; définissez-la pour des pseudonymes stables entre les redémarrages. |
ANONIMAL_MAX_CHARS | 500000 | Longueur d’entrée maximale (au-delà, renvoie 413). |
ANONIMAL_MAX_PDF_BYTES | 26214400 (25 Mo) | Taille maximale de PDF pour la rédaction. |
OPF_DEVICE | cpu | cpu ou cuda (image full uniquement). |
OPF_CHECKPOINT | (par défaut) | Chemin vers un checkpoint OPF personnalisé (image full uniquement). |
Sécurité
Section intitulée « Sécurité »Conçu pour s’exécuter en local. Si vous l’exposez sur un réseau : définissez ANONIMAL_TOKEN
(requis sur chaque requête) et placez un reverse proxy TLS devant. L’image s’exécute
sous un utilisateur non-root et applique des plafonds de taille (ANONIMAL_MAX_CHARS). Au sein de
l’écosystème, gardez Anonimal sur le réseau interne sans domaine public et laissez
Escriba l’atteindre par nom d’hôte interne.