Salta ai contenuti

Installa Anonimal

Anonimal gira in locale / self-hosted: i dati non lasciano mai la tua infrastruttura. L’immagine è pubblicata sul GitHub Container Registry ed espone la porta 8000 all’interno del container.

Ci sono due immagini. Scegli in base alla copertura rispetto al peso.

ImmagineTagDimensioneRilevaQuando
full (ML):latest, :<ver>immagine ~6-7 GB + ~3 GB di RAMstrutturati + nomi / indirizzi (OPF)massima copertura; in sostituzione dell’Anonimal dell’ecosistema
lite (regex):lite, :<ver>-litedecine di MBsolo strutturati (email, telefono, carta, DNI, CUIT, CBU, segreti)leggero, senza ML; non vede i nomi in forma libera
  • Docker (l’unico requisito imprescindibile).
  • lite: poche decine di MB di disco e RAM minima. Si avvia istantaneamente.
  • full: ~6-7 GB di disco e ~3 GB di RAM per il modello residente; è vincolato alla CPU. Assegna al container circa 6 GB di RAM.
Terminal window
# Si avvia istantaneamente, nessun modello
docker run -d --name anonimal -p 8920:8000 \
ghcr.io/diegoparras/anonimal-svc:lite

Controlla lo stato di salute, poi anonimizza un campione. La UI web è servita allo stesso indirizzo.

Terminal window
curl -s localhost:8920/health
curl -s localhost:8920/anonymize -H "Content-Type: application/json" \
-d '{"text":"email juan@acme.com, CUIT 20-12345678-6","mode":"pseudo"}'

Sull’immagine full, /health risponde immediatamente mentre il modello si carica in background; ml.ready passa a true una volta che il checkpoint è pronto. La UI risiede a http://localhost:8920.

La variabile ANONIMAL_ENGINE seleziona il motore di rilevamento:

  • auto (predefinito) — usa ML se è pronto, altrimenti ricade su lite.
  • lite — solo regex (strutturati + documenti LATAM). Sempre disponibile.
  • ml — forza il motore OpenAI Privacy Filter (restituisce 503 se non è disponibile, ad es. sull’immagine lite).

OPF_DEVICE (solo immagine full) commuta il motore ML tra cpu e cuda.

VariabilePredefinitoScopo
ANONIMAL_ENGINEautoSelezione del motore: auto · lite · ml.
ANONIMAL_MODEpseudoModalità di sostituzione predefinita per l’API / la UI.
ANONIMAL_TOKEN(vuoto)Token di servizio. Se impostato, ogni richiesta deve includerlo (Authorization: Bearer o X-Anonimal-Token).
ANON_HASH_KEY(casuale per processo)Chiave per la modalità hash; impostala per pseudonimi stabili tra i riavvii.
ANONIMAL_MAX_CHARS500000Lunghezza massima dell’input (oltre la quale restituisce 413).
ANONIMAL_MAX_PDF_BYTES26214400 (25 MB)Dimensione massima del PDF per l’oscuramento.
OPF_DEVICEcpucpu o cuda (solo immagine full).
OPF_CHECKPOINT(predefinito)Percorso di un checkpoint OPF personalizzato (solo immagine full).

Progettato per girare in locale. Se lo esponi su una rete: imposta ANONIMAL_TOKEN (obbligatorio su ogni richiesta) e metti davanti un reverse proxy TLS. L’immagine gira come utente non-root e applica limiti di dimensione (ANONIMAL_MAX_CHARS). All’interno dell’ecosistema, mantieni Anonimal sulla rete interna senza dominio pubblico e lascia che Escriba lo raggiunga tramite hostname interno.

Leggi la documentazione completa