Fast, state-of-the-art tokenization library written in Rust, with Python and Node.js bindings, for NLP and language model pipelines.
data-privacy-stack/presidio
Open-source SDK for detecting and anonymizing PII in text, images and structured data, using NLP, regex and rules.
Open-source alternative to:Amazon Macie
Google Cloud Data Loss Prevention
- Stars
- 11,388
- Forks
- 1,357
- Open issues
- 197
- Last commit
- 20 hours ago
What is it?
Presidio is a Python framework for finding and de-identifying personally identifiable information (PII). It identifies entities such as credit card numbers, names, locations, social security numbers, bitcoin wallets and US phone numbers, then anonymizes them through redaction, masking or other transformations.
Detection combines named entity recognition, regular expressions, rule-based logic and checksum validation, with context words considered across multiple languages. Custom recognizers can be added, and external PII detection models can be connected. The project is split into modules: an analyzer, an anonymizer, an image redactor (including DICOM medical images) and a structured-data component.
Presidio can be used from Python or PySpark, run in Docker, or deployed on Kubernetes. The project notes that automated detection cannot guarantee every sensitive item is found, so it should be combined with other safeguards.
Key features
- 01Detects predefined or custom PII entities using NER, regex, rules and checksums.
- 02Supports context-aware recognition across multiple languages.
- 03Redacts PII in text and in images, including DICOM medical images.
- 04Can connect to external PII detection models.
- 05Runs from Python, PySpark, Docker or Kubernetes.
Use cases
- Scrubbing personal data from logs, documents or datasets before sharing or analysis.
- De-identifying medical images or records in healthcare pipelines.
- Adding PII guardrails to LLM inputs and outputs.
- Automating redaction of sensitive fields in large data processing jobs with PySpark.
Topics
FAQ
- What is presidio?
- Open-source SDK for detecting and anonymizing PII in text, images and structured data, using NLP, regex and rules. Presidio is a Python framework for finding and de-identifying personally identifiable information (PII). It identifies entities such as credit card numbers, names, locations, social security numbers, bitcoin wallets and US phone numbers, then anonymizes them through redaction, masking or other transformations.
- Is presidio free to use? What license does it have?
- presidio is open source under the MIT license. Check the license terms before using it in commercial products.
- Is presidio still maintained?
- Actively maintained. The last commit to presidio was on Oct 18, 2026.
- What can I use presidio for?
- Scrubbing personal data from logs, documents or datasets before sharing or analysis. De-identifying medical images or records in healthcare pipelines. Adding PII guardrails to LLM inputs and outputs. Automating redaction of sensitive fields in large data processing jobs with PySpark.
- Where can I get presidio?
- The source code and installation instructions are on GitHub: https://github.com/data-privacy-stack/presidio
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Python tool that uses an LLM to extract subject-predicate-object triples from text and renders them as an interactive knowledge graph.
Open-source Python library for AI browser agents that let an LLM operate a real browser, with an optional hosted cloud browser and agent API.
Open-source data platform that connects proprietary, licensed and public data sources to analysts, quants, AI agents and apps.
Free, open source Python crypto trading bot that supports major exchanges, backtesting, dry-run, and control via Telegram or a web UI.
A Python framework and runtime for building agent platforms, serving agents as an API, and managing them through a web UI.