Anubis intercepts text before it reaches any language model, detects all personally identifiable information, replaces it with typed tokens, and restores the original values after the model responds. Your LLM never sees real data.
Built by OrvixLabs.
This repository contains documentation only. The Anubis source code is proprietary and kept in a private repository.
If you are interested in licensing, evaluating, or integrating Anubis, contact hello@orvixlabs.com.
Your data goes in. Anubis masks the PII. The LLM processes the safe version. Anubis restores everything. The user sees the complete answer, with no sensitive data ever having left your infrastructure.
from anubis import Anubis
guardian = Anubis(locale="es-AR")
masked, tokens = guardian.mask("El CUIT de Juan Perez es 20-12345678-9")
# "El CUIT de [PERSON_1] es [CUIT_1]"
response = your_llm(masked)
final = guardian.unmask(response, tokens)
Regex catches structured PII: tax IDs, national IDs, credit cards, bank accounts, phones, emails. Fast, precise, zero computational cost.
GLiNER catches names, organizations and locations in free narrative text. It is a local NER model that runs on CPU. No API calls, no data leaves your server.
Presidio performs a final sweep on whatever the previous layers missed, using Microsoft's enterprise PII framework.
Each layer catches what the others miss. Together they provide comprehensive coverage.
| Locale | Country | PII types |
|---|---|---|
| es-AR | Argentina | 14 types, 20 patterns |
| en-US | United States | 19 types, 26 patterns |
| en-GB | United Kingdom | 16 types, including NHS Number, NI Number, Sort Code, Land Registry |
Coming soon: Australia, Brazil, Mexico, Chile, Colombia.
Available today:
- Triple-layer detection
- Typed tokenization:
[PERSON_1],[CUIT_1],[EMAIL_1]— not just[REDACTED] - Referential consistency: the same entity always receives the same token
- Automatic rehydration after the model responds
- Roundtrip verified with zero information loss
- Protection certificate generated per execution
- Runs entirely on your own infrastructure
- REST API for language-agnostic integration
On the roadmap:
- Entity resolution for partial name mentions
- Confidence scoring per detection
- Paranoid mode for banking and healthcare environments
- Immutable hash-chained audit log
- Benchmark suite with precision and recall metrics
- PDF and OCR support for scanned documents and tables
- HIPAA and PCI-DSS pattern sets
- Real-time monitoring dashboard
- Streaming support for token-by-token rehydration
Anubis exposes a FastAPI server for integration from any language.
Endpoints: /mask, /unmask, /stats, /certificate, /health
Unlike AWS Comprehend or Google Cloud DLP, Anubis runs entirely on your infrastructure. Your sensitive data never leaves your server.
Unlike Presidio alone, Anubis is purpose-built for LLM workflows. It does not just detect PII — it tokenizes it, sends the safe version to the model, and restores everything afterwards without losing information.
Unlike any alternative, Anubis generates a protection certificate for every execution. Proof of compliance, not just a promise.
Banks and fintech companies using LLMs for customer analysis, credit scoring or document processing. Law firms feeding case documents to AI assistants. Healthcare organizations processing medical records. Real estate agencies handling high-net-worth client data. Any organization that wants to use language models with sensitive data without taking on compliance risk.
The first instantiation of Anubis() takes approximately 25 seconds while the local models load into memory. Subsequent instances in the same process are instantaneous.
The GLiNER model downloads once on first use, approximately 583 MB.
Postgres audit logging is opt-in via the ANUBIS_DB_PASS environment variable. Masking works fully without it.
Anubis is proprietary software. All rights reserved.
The source code is not publicly available. This repository contains documentation only.
Commercial licensing inquiries: hello@orvixlabs.com
Anubis is built by OrvixLabs, an AI infrastructure company based in Argentina. Named after the Egyptian god who guarded the secrets no one else could see.
Anubis intercepta el texto antes de que llegue a cualquier modelo de lenguaje, detecta toda la información personal identificable, la reemplaza por tokens tipados, y restaura los valores originales una vez que el modelo responde. Tu LLM nunca ve datos reales.
Desarrollado por OrvixLabs.
Este repositorio contiene únicamente documentación. El código fuente de Anubis es propietario y se mantiene en un repositorio privado.
Si te interesa licenciar, evaluar o integrar Anubis, escribinos a hello@orvixlabs.com.
Tus datos entran. Anubis enmascara la información sensible. El modelo procesa la versión segura. Anubis restaura todo. El usuario ve la respuesta completa, sin que ningún dato sensible haya salido nunca de tu infraestructura.
from anubis import Anubis
guardian = Anubis(locale="es-AR")
masked, tokens = guardian.mask("El CUIT de Juan Perez es 20-12345678-9")
# "El CUIT de [PERSON_1] es [CUIT_1]"
response = tu_llm(masked)
final = guardian.unmask(response, tokens)
Regex detecta datos estructurados: CUIT, DNI, CBU, tarjetas de crédito, cuentas bancarias, teléfonos, emails. Rápido, preciso, sin costo computacional.
GLiNER detecta nombres, organizaciones y ubicaciones en texto narrativo libre. Es un modelo NER local que corre en CPU. Sin llamadas a APIs externas, ningún dato sale de tu servidor.
Presidio hace un barrido final sobre lo que las capas anteriores no atraparon, usando el framework empresarial de detección de PII de Microsoft.
Cada capa detecta lo que las otras dejan pasar. Juntas dan cobertura completa.
| Locale | País | Tipos de PII |
|---|---|---|
| es-AR | Argentina | 14 tipos, 20 patrones |
| en-US | Estados Unidos | 19 tipos, 26 patrones |
| en-GB | Reino Unido | 16 tipos, incluye NHS Number, NI Number, Sort Code, Land Registry |
Próximamente: Australia, Brasil, México, Chile, Colombia.
Disponible hoy:
- Detección en tres capas
- Tokenización tipada:
[PERSON_1],[CUIT_1],[EMAIL_1]— no un[REDACTED]genérico - Consistencia referencial: la misma entidad recibe siempre el mismo token
- Rehidratación automática después de que responde el modelo
- Roundtrip verificado sin pérdida de información
- Certificado de protección generado por cada ejecución
- Corre íntegramente en tu propia infraestructura
- API REST para integración desde cualquier lenguaje
En el roadmap:
- Resolución de entidades para menciones parciales de nombres
- Score de confianza por cada detección
- Modo paranoid para entornos bancarios y de salud
- Log de auditoría inmutable con hash encadenado
- Suite de benchmark con métricas de precisión y recall
- Soporte para PDF y OCR en documentos escaneados y tablas
- Sets de patrones HIPAA y PCI-DSS
- Dashboard de monitoreo en tiempo real
- Soporte para streaming con rehidratación token por token
Anubis expone un servidor FastAPI para integrarse desde cualquier lenguaje.
Endpoints: /mask, /unmask, /stats, /certificate, /health
A diferencia de AWS Comprehend o Google Cloud DLP, Anubis corre íntegramente en tu infraestructura. Tus datos sensibles nunca salen de tu servidor.
A diferencia de usar Presidio solo, Anubis está construido específicamente para flujos con modelos de lenguaje. No se limita a detectar información sensible: la tokeniza, manda la versión segura al modelo, y restaura todo después sin perder información.
A diferencia de cualquier alternativa, Anubis genera un certificado de protección por cada ejecución. Prueba de cumplimiento, no una promesa.
Bancos y fintechs que usan modelos de lenguaje para análisis de clientes, scoring crediticio o procesamiento de documentos. Estudios jurídicos que alimentan expedientes a asistentes de IA. Organizaciones de salud que procesan historias clínicas. Inmobiliarias que manejan datos de clientes de alto patrimonio. Cualquier organización que quiera usar modelos de lenguaje con datos sensibles sin asumir riesgo de cumplimiento.
La primera instanciación de Anubis() demora aproximadamente 25 segundos mientras los modelos locales cargan en memoria. Las instancias siguientes dentro del mismo proceso son instantáneas.
El modelo GLiNER se descarga una única vez en el primer uso, aproximadamente 583 MB.
La auditoría en Postgres es opcional, se activa con la variable de entorno ANUBIS_DB_PASS. El enmascarado funciona completo sin ella.
Anubis es software propietario. Todos los derechos reservados.
El código fuente no es público. Este repositorio contiene únicamente documentación.
Consultas de licenciamiento comercial: hello@orvixlabs.com
Anubis está desarrollado por OrvixLabs, una empresa de infraestructura de IA con base en Argentina. El nombre viene del dios egipcio que custodiaba los secretos que nadie más podía ver.
Anubis. Because your data deserves a guardian.
Anubis. Porque tus datos merecen un guardián.