Skip to content
AI Primer
release

OpenAI releases Privacy Filter with 128K context and Apache 2.0 PII redaction

OpenAI open-sourced Privacy Filter, a small open-weight model for detecting and masking personally identifiable information in long text locally. Teams can redact logs, prompts, and secrets before sending data into other AI systems or external services.

4 min read
OpenAI releases Privacy Filter with 128K context and Apache 2.0 PII redaction
OpenAI releases Privacy Filter with 128K context and Apache 2.0 PII redaction

TL;DR

You can read the OpenAI blog post, inspect the Hugging Face model page, browse the GitHub repo, and skim the model card PDF. There is also a browser demo referenced by altryne's demo post, plus a screenshot in WesRoth's post that shows the architecture path from an autoregressive checkpoint to a bidirectional token classifier.

What shipped

OpenAI described Privacy Filter as an open-weight model for detecting and redacting personally identifiable information in unstructured text, with local execution as a core feature. The official materials live across the blog post, Hugging Face release, GitHub repo, and model card PDF.

The packaging is unusually permissive for an OpenAI release. As altryne's link roundup, _akhaliq's post, and ClementDelangue's screenshot all note, the model ships under Apache 2.0 on Hugging Face.

Label taxonomy and runtime

The model card screenshot in WesRoth's post says Privacy Filter starts from a checkpoint with architecture similar to gpt-oss, then converts that checkpoint into a bidirectional token classifier trained over an eight-category privacy label taxonomy. Instead of generating text token by token, it labels the full input in one forward pass and decodes spans with a constrained Viterbi procedure.

That design explains the release framing around throughput. TheRealAdamG's quoted excerpt says the model makes redaction decisions in a quick single pass, while mervenoyann's summary adds that OpenAI published both Transformers and ONNX weights and made the model fine-tunable.

The examples focus on span masking, not free-form generation. mervenoyann's redaction screenshot shows an email address tagged as PRIVATE_EMAIL and a Hugging Face token tagged as SECRET.

Long context and small-MoE design

The surprising spec here is the size-to-context ratio. eliebakouch's post describes the release as a 1.5B total, 50M active MoE with a 128K context window, and mervenoyann's summary independently repeats the same long-context claim for a roughly 1B-class model.

OpenAI is not claiming perfect accuracy. altryne's performance note says the model scores highly on recall and precision but still misses some cases, with multilingual performance standing out for a model this small.

The target workload is also narrow in a useful way. In a reply thread, eliebakouch's follow-up argues the filter task may not need as much long-context quality as a general LLM, which helps explain why OpenAI could push context length aggressively without turning this into a full frontier model announcement.

Browser demo and local runs

The release looks built for practical deployment more than leaderboard theater. altryne's CLI demo shows the opf command line running against an email containing bank-account details, and altryne's examples explicitly calls out secrets such as API tokens alongside names, addresses, and bank details.

OpenAI also left room for lightweight client-side use. altryne's demo post says the model is small enough to run in a browser, and WesRoth's screenshot lists laptop and browser-class deployment as a headline feature together with runtime controls for precision, recall, and span length.

Further reading

Discussion across the web

Where this story is being discussed, in original context.

On X· 5 threads
TL;DR4 posts
What shipped3 posts
Label taxonomy and runtime1 post
Long context and small-MoE design3 posts
Browser demo and local runs2 posts