Live demo · real library output, recorded once
Try it on fake text
A GitHub Pages site cannot run Python, so this page replays output that the real library
produced. The type filter and the score floor apply the same two rules the library applies:
drop a type you did not ask for, and drop a span whose score is below your floor. A span with no
score cannot meet a floor, so a floor hides it.
Lane
Rules and checksums rules Closed encoder (ModernBERT) en-closed
Examples
A support ticket A phone number, an email, and a test card. The order id stays clear. A note with a password The password is masked. It never enters the vault. A wire transfer A valid IBAN is found. A card that fails Luhn is ignored. A Chinese contact line A Chinese mobile number and an email, on the rule lane. Two people, two placeholders A repeat reuses its token. A new slice gets a new number. Text with no PII An order id, a SKU, and a plain sentence. Long text, original offsets The email sits far into the string. The offset still indexes the whole source. A log line An IP address and an email inside a structured line. A prompt before it leaves What a caller sends to a model after masking. Two names A person name needs a model lane. The rule lane finds neither. A postal address A street address, a person, and an email together. A national id A US SSN pattern. The rule lane is silent, and the model lane is not. An account handle A login name, which is not a display name. A finance note A card, a routing number, and a name in a bank context.
Support ticket
0 chars
Source
Masked output
Span table
# Type Start End Text Score Detector Slice
Vault