Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
privacy-parser — Inverso del filtro de privacidad de OpenAI. El mismo modelo de 1.5b, devuelve PII como spans estructurados en lugar de enmascararlos. | Kitploit
Herramientas/GitHubGitHub/chiefautism/privacy-parser
OSINT (Inteligencia de Fuentes Abiertas)ReconocimientoAnálisis de VulnerabilidadesExfiltración de DatosRecopilación de InformaciónPruebas de PenetraciónPrivacidadAprendizaje Automático
GitHubchiefautism/privacy-parser

privacy-parser

Inverso del filtro de privacidad de OpenAI. El mismo modelo de 1.5b, devuelve PII como spans estructurados en lugar de enmascararlos.

4033423hace 4 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Ver Repositorio

Privacy Parser

Encuentra cada fragmento de PII en un montón de texto y recupéralo como spans estructurados.

Construido sobre OpenAI Privacy Filter: mismo modelo de 1.5B, mismas etiquetas, mismos pesos.
Privacy Filter enmascara. Privacy Parser extrae.

python license labels F1


Hi Quindle Testwick ([email protected] / +1-415-555-0102),
account 40702810500001234567, 14 Beautiful Ct, Anytown USA,
password Priv4cy-Filt3r-2026.
private_person      Quindle Testwick
private_email       [email protected]
private_phone       +1-415-555-0102
account_number      40702810500001234567
private_address     14 Beautiful Ct, Anytown USA
secret              Priv4cy-Filt3r-2026

En lugar de <REDACTED> obtienes qué se encontró, dónde está (start, end) y qué tipo es.

Por qué

Privacy Filter responde a "haz que este texto sea seguro". A veces necesitas una respuesta diferente: "¿qué hay exactamente aquí?"

  • Auditar logs, volcados y exportaciones antes de que salgan de tu perímetro
  • Inventariar datos personales para solicitudes GDPR / CCPA
  • Comprobaciones pre-commit y de CI para secretos y datos de contacto filtrados
  • Construir conjuntos de datos: etiquetar fragmentos de PII para entrenamiento o evaluación

Tres backends

BackendRequiere pesosVelocidadF1 *Úsalo cuando
PIIParsernoµs1.000sin dependencias, patrones estructurados
ModelPIIParser1.5B~500 ms CPU0.733salida directa del modelo
HybridPIIParser1.5B~600 ms CPU0.929opción por defecto

* coincidencia exacta de fragmentos en los cinco fixtures de muestra de opf. Un conjunto pequeño: trátalo como una prueba de humo, no como un benchmark.

Instalación

git clone https://github.com/openai/privacy-filter
git clone https://github.com/chiefautism/privacy-parser

uv venv
uv pip install -e ./privacy-filter    # only for the model backends
uv pip install -e ./privacy-parser

La primera ejecución del modelo descarga el checkpoint opf (~3 GB) en ~/.opf/privacy_filter/. Establece OPF_CHECKPOINT o pasa model= para usar otra ubicación.

Inicio rápido

Híbrido (recomendado)

from pii_parser.hybrid import HybridPIIParser

parser = HybridPIIParser(device="cpu")   # or "cuda"
result = parser.parse("Hi Quindle Testwick, call me at +1-415-555-0102")

for s in result.spans:
    print(s.label, s.start, s.end, s.text)

print(result.to_json())

Solo regex, sin pesos

from pii_parser import parse

result = parse("mail [email protected], token ghp_abcdefghijklmnopqrstuvwxyz0123456789")

result.detected_spans   # (DetectedSpan(label='private_email', ...), ...)
result.redacted_text    # 'mail <REDACTED>, token <REDACTED>'
result.summary          # {'span_counts': {...}, 'total_spans': 2}

CLI

Backend de regex, sin modelo:

$ echo "Alice paid 40702810500001234567 on 2026-05-17." | pii-parser --mode spans
account_number  11  31  40702810500001234567
private_date    35  45  2026-05-17

$ pii-parser "mail [email protected]" --mode redacted
mail <REDACTED>
FlagValoresPredeterminado
TEXTtexto, o -f FILE, o stdin
--modejson · spans · redactedjson
--placeholdercualquier cadena<REDACTED>
--indentint, 0 para JSON compacto2

Backend del modelo:

python -m pii_parser.cli_model "Alice paid 40702810500001234567 on 2026-05-17."
python -m pii_parser.cli_model -f dump.txt --device cuda --mode spans

Etiquetas

taxonomía opf v2, 8 categorías:

EtiquetaEjemplo
private_personQuindle Testwick
private_email[email protected]
private_phone+1-415-555-0102
private_address14 Beautiful Ct, Anytown USA
private_urlhttps://example.com/u/quindle
private_date2026-05-17
account_number40702810500001234567
secretsk-…, ghp_…, AKIA…, Bearer …

Cuando los spans se superponen, gana el más largo, y luego la etiqueta de mayor prioridad: email > url > secret > account > phone > date > address > person.

Cómo funciona el híbrido

text
  │
  ▼
opf 1.5B ──► BIOES logits ──► Viterbi (tuned biases) ──► char spans
  │
  ▼
span merge        glues "Quindle" + "Testwick" into one person
  │
  ▼
regex backstop    adds url / secret / account where the model missed them
  │
  ▼
spans[]

Cada etapa se puede desactivar:

HybridPIIParser(
    enable_merge=True,
    enable_regex_backstop=True,
    enable_viterbi_tuning=True,
    decode_mode="viterbi",   # or "argmax"
)

Esquema de salida

{
  "text": "Hi Quindle Testwick ...",
  "spans": [
    { "label": "private_person", "start": 3, "end": 19, "text": "Quindle Testwick" }
  ]
}

El regex PIIParser refleja opf.RedactionResult (schema_version, summary, detected_spans, redacted_text), por lo que puedes intercambiar backends sin tocar a los consumidores.

Pruebas

Las pruebas esperan que privacy-filter esté clonado junto a este repositorio (leen sus fixtures de ejemplo).

python tests/test_hybrid.py
Fixture F1:  0.929
Scenarios:   8/8 passed
Latency:     ~600 ms CPU

Uso responsable

Esta es una herramienta de doble uso. Ejecútala sobre datos que poseas o estés autorizado a procesar. Extraer datos personales de fuentes filtradas o robadas es ilegal en la mayoría de las jurisdicciones.

Licencia

Apache-2.0

Descargar herramienta