OpenAI本周在Hugging Face Hub上发布了Privacy Filter,这是一个开源的个人身份信息(PII)检测器,能够在一个前向传递中标记128k上下文内的文本,覆盖八个类别。本文基于该模型构建了三个Web应用,每个都展示了模型的不同方面。
模型概述
Privacy Filter是一个1.5B参数的模型,其中50M为活跃参数,采用Apache 2.0许可。它识别的PII类别包括:私人人物、私人地址、私人邮箱、私人电话、私人URL、私人日期、账号和秘密。上下文长度为128,000个token,在PII-Masking-300k基准上达到了最先进的性能。
应用一:文档隐私探索器
该应用允许用户上传PDF或DOCX文档,文档中的PII会按类别高亮显示,侧边栏提供过滤功能,顶部有摘要仪表板。Privacy Filter的单次128k上下文前向传递避免了分块和拼接问题,BIOES解码保持了边界清晰。gradio.Server提供了自定义的阅读视图和单一队列端点,使得并发上传被序列化,并与ZeroGPU兼容。
应用二:图像匿名化器
用户上传图像(如截图),应用会通过OCR提取文本,运行Privacy Filter检测PII,并在图像上覆盖黑色矩形条。用户可以在画布上切换、拖动或手动添加遮盖。gradio.Server处理模型调用,返回像素坐标,所有前端交互均在浏览器中进行,无需往返服务器。
应用三:智能编辑粘贴板
用户粘贴敏感文本后,获得两个URL:一个公开的编辑版本(使用占位符替换PII),另一个私密的揭示链接(需token验证)。模型负责检测和替换,而gradio.Server利用其FastAPI底层支持自定义路由,实现公开和token控制的视图。整个服务包括存储仅约200行代码。
gradio.Server的作用
所有三个应用共享相同的架构:模型相关的计算通过@server.api装饰器进入Gradio队列,而静态页面和轻量级路由则使用普通的@server.get和@server.post。这种分离确保了队列、ZeroGPU和客户端SDK的一致体验,同时允许灵活的前端实现。
尝试与推荐阅读
读者可以尝试每个应用的原型链接,观察Privacy Filter对真实文本的检测效果。推荐阅读OpenAI的官方发布博客、模型卡以及相关的编辑示例。