W
AI-Wiki
CONCEPT

PII脱敏

定义

PII脱敏 是对个人可识别信息(Personally Identifiable Information, PII)进行识别、遮蔽、替换或隔离保存的处理机制,目的是在内容被检索、嵌入、向量化和用于问答之前,先降低隐私泄露与合规违规风险。

在本文语境里,它不是泛泛而谈的数据安全概念,而是面向企业级RAG文档摄取链路的一项前处理能力。其重点不是只做表面字符串替换,而是要在文档入库前识别不同类型的敏感信息,避免这些内容进入向量库并继续流入后续问答链路。

在本文档中的语境

本文讨论的PII脱敏出现在 LongParser v0.1.5 的文档解析与数据摄取流程中,定位非常明确:它发生在文档解析之后、知识入库与嵌入之前,属于RAG文档摄取阶段的关键保护层。

文章强调,很多团队做RAG时,会把重点放在向量数据库、模型参数和问答效果上,却忽略了最前面的文档解析与入库环节。如果敏感信息在这一阶段没有被处理,那么后面即便检索、生成做得再好,也只是把隐私风险系统化、规模化地扩散到了向量库、召回结果和问答输出中。

因此,本文中的PII脱敏主要解决的不是“回答时少说一点”这种末端问题,而是“不要让敏感数据一开始就进入知识底座”这一源头治理问题。

目标对象与适用行业

本文明确提到的目标对象包括:

  • 银行卡号
  • 社保号
  • 个人姓名
  • 其他文档上下文中的个人信息

其中,银行卡号、社保号这类信息带有较强结构化特征;个人姓名等信息则往往出现在自然语言上下文中,不一定有固定格式,识别难度更高。

文章特别强调其应用场景集中在金融、医疗等高合规行业。这些行业通常同时面临以下约束:

  • 文档中天然包含大量个人敏感信息
  • 一旦泄露,法律、审计与业务后果都很严重
  • 不能仅依靠人工筛查或回答阶段兜底
  • 需要兼顾后续复用、追溯与审计要求

文末还补充提到法律等对数据安全要求高的行业同样具有明显适用性,但原文重点举例仍以金融、医疗为主。

关键机制:双层脱敏引擎

本文最核心的设计点,是PII脱敏采用双层引擎,而不是只依赖单一规则或单一模型。

第一层:正则表达式处理结构化敏感信息

对于银行卡号、社保号等具有明确模式特征的内容,系统优先使用正则表达式做结构化识别。这一层适合处理:

  • 位数和分隔形式较稳定的编号类信息
  • 有较强格式规律的证号或账户类字段
  • 在文本中可能以连续数字或半结构化形式出现的敏感标识

这种方式的优点是速度快、可解释性强、对常见格式覆盖直接,适合作为第一道高效率筛查。

第二层:spaCy NER处理上下文中的实体信息

仅靠正则无法覆盖所有敏感内容,尤其是个人姓名、人物实体、上下文中隐含的身份线索等自然语言信息。为此,文章说明系统叠加了基于spaCy命名实体识别(NER)的第二层引擎。

这一层主要用于识别:

  • 文本叙述中的个人姓名
  • 依附于上下文而存在的人物相关实体信息
  • 不具备稳定字符串模式、但在语义上属于个人信息的内容

正则负责“结构化模式”,NER负责“上下文实体”,两层组合的目标就是同时覆盖格式化敏感标识与自然语言中的人物信息,避免只脱敏号码、不脱敏人名,或者只识别人名、漏掉编号类信息。

结构化校验细节:不是简单模式匹配

文章专门点明,银行卡等结构化敏感数据的处理并不是“只要长得像就算命中”。其中一个关键细节是使用 Luhn 验证。

Luhn 校验常用于银行卡号这类带校验规则的数字串识别。它的意义在于:

  • 降低纯正则匹配带来的误报
  • 避免把普通长数字、流水号、无关编号误判为银行卡号
  • 让结构化敏感信息识别更接近真实业务规则,而不是停留在表面格式

因此,本文中的PII脱敏不是“看到一串像卡号的数字就替换”,而是“先按模式识别,再按校验规则确认”。这使其更适合生产环境,尤其适合误报和漏报成本都很高的合规场景。

在RAG链路中的作用位置

本文对位置描述得很清楚:PII脱敏发生在文档摄取与入库之前。

按照文中流程,可概括为:

  1. 文档被解析为可处理文本与结构化块
  2. 在进入向量化、嵌入和知识库存储前执行脱敏
  3. 通过脱敏后的内容完成后续分块、入库或嵌入流程
  4. 从源头避免敏感数据进入向量库、检索结果与问答链路

这个位置选择很关键。因为如果等到向量化之后再处理,敏感信息可能已经:

  • 被写入向量库
  • 参与相似度检索
  • 出现在召回片段中
  • 进入问答上下文并被模型重述

也就是说,本文强调的PII脱敏本质上是前置防线,而不是事后补救。

平衡点:合规与复用并存

文章没有把脱敏写成“彻底删除原始数据”的简单方案,而是强调一个很实际的平衡点:未脱敏原始数据会被安全存储在隐藏元数据中。

这意味着系统在对外使用、入库检索和问答消费的主链路上使用脱敏结果,但并不粗暴丢弃原始内容,而是将原文以受控方式保留,以满足后续需要。

这样设计主要服务于几类现实需求:

  • 后续数据复用:某些业务流程仍可能需要原始字段值
  • 审计追踪:需要核查脱敏前后的对应关系
  • 合规留痕:证明处理过程可追溯、可解释
  • 运营维护:必要时可回查误判、漏判或映射关系

因此,本文中的PII脱敏并非单纯“抹掉一切”,而是在“主流程不暴露敏感信息”和“受控保留原始数据能力”之间做平衡。这也是它区别于很多一次性文本替换工具的地方。

细节与边界

优势边界

从原文描述看,这种双层机制的优势主要体现在:

  • 同时覆盖结构化号码类信息与自然语言中的人物实体
  • 适合在企业级RAG入库前做统一前处理
  • 可直接减少敏感数据污染向量库的风险
  • 比只做正则或只做模型识别更完整

局限与风险

文章也明确提出了局限,尤其是对中文场景的提醒:spaCy NER 在中文姓名、生僻敏感信息识别上,精度可能不如专为中文优化的方案。