第 8 章 — RAG 管线里的数据匿名化
LLM Primer III: Enhancing Enterprise AI with RAG 章节走读的第八篇。数据是该在模型看见之前匿名化、还是在用户看见输出之前?答案改写整条流水线的样子 — 而监管框架通常会替你做出答案。
这一章为什么存在
第 7 章答的是「谁能看什么」。它默认有东西可以拦。可是第 6 章也已经说了,嵌入不是单向函数 — 向量库是源数据的一份模糊副本,访问控制只是最外面一层。如果语料里有社保号、病历条目、客户姓名、专有代码路径,问题就不只是谁有权检索它们,而是它们是否应该以那种形态被嵌入。
这就是匿名化的问题,也是 RAG 部署里工程含量最重的那一道安全决定。选择先于算法,先于位置:敏感内容在哪一步被变换?
8.1 生成前 vs 生成后
生成前 匿名化在数据被嵌入和存储之前变换它。向量库里永远不存在原始敏感值;就算模型层被完全攻破,也提不出从未存在过的东西。这是许多受 HIPAA 管的医疗 RAG 和若干 GDPR 约束的法务应用必须采用的架构。代价是检索质量:查询里说「Acme Corp」,语料在嵌入之前已经写成「[ORG_47]」,稠密相似度在最有信息量的 token 上掉下来。
生成后 匿名化跑在模型的输出上。检索质量保住;隐私保证更弱,因为敏感数据躺在索引里。当威胁模型是面向用户的泄露而不是面向基础设施的泄露时,它合适。大多数生产系统最后跑成 混合 — 直接标识符和高监管权重的类别走生成前,运营层面较轻的敏感按用户鉴权画像在输出上掩码。两条实操纪律:在分块之前跑匿名化(否则分块器会破坏检测器需要的上下文),以及把去 token 化保险库当作独立的、有访问控制的映射表保留,这样一位有权角色(比如医生)仍能看到索引里被掩掉的患者标识。
8.2 掩码、合成替换、差分隐私
这些技术沿同一根旋钮分成三脉。PII 掩码 检测实体(Microsoft Presidio 是最广泛部署的开源实现),把它们替成占位符。难处在召回 — 漏掉 10% 名字的检测器,产出的脱敏文档可以被攻击者用嵌入相似度定位 — 以及过度掩码,会让词表塌缩、伤害检索。纪律是双重度量:在标注集上度量召回,再跑一条离线检索质量基线。
合成替换 用可信赖的假值替代占位符,「John Smith」变成「Alex Romano」而不是 [NAME]。嵌入分布留得住,在模型那一侧读起来也自然。映射是确定性的 — 一个把真实实体哈希到假名的带密钥的散列 — 同一真实实体在整份语料里得到同一份假名,密钥住在保险库里。合成替换面对带辅助信息的对手仍会泄露,但在检索质量重要的地方,它比掩码是有意义的改进。
差分隐私 是带真正数学保证的那一脉 — 一个机制是 ε-DP,如果任何单条记录的加入或移除导致输出分布变化不超过 exp(ε)。DP-Prompt 扰动选进 prompt 的块;DP-MLM 扰动 mask-language-model 的嵌入过程;1-Diffractor 把 DP 与保语义的改写结合。DP 是一份预算,不是一个开关 — 每次查询都花掉一些,运维上多数事都是预算账。这三脉可叠,做得对的部署常常是分层叠的。
8.3 可用性—隐私折中
最值得匿名化的那些 token,正好就是匿名化对检索伤害最大的那些。这种不对称不愉快,但不可谈判。缓解只是部分的:合成替换比占位符保住更多信号;带类型标签的占位符([PERSON named Alex] 而不是 [PERSON])保住的更多,但掩码强度变弱。匿名化过的语料,块往往要比未匿名的稍大,把脱敏损失摊在更多剩余内容上。
诚实的提法是,这道折中不是一根单轴旋钮,而是一个二维平面 — 监管下限低于这条线系统不合法、可用性下限低于这条线用户抛弃,以及之间的工作区。有时候差距很宽,很多设计都能跑。有时候差距是空的:监管下限高过了可用性下限,设计阶段最有价值的事情就是在投入工程之前承认这一点。
8.4 企业级集成与设计选择
Zilliz Cloud 把匿名化作为解析与嵌入之间的流水线变换暴露,在四个检查点挂钩(入库、检索、去 token 化、输出)。PII Masker 走另一种形态 — 一块聚焦的积木,团队拼进自己的流水线。成熟的部署常常造一个中心化匿名化服务,带四个操作:把解析过的文档匿名化、在某个鉴权语境下查去 token 化映射、扫描输出字符串里残余的敏感内容、报告耗掉的隐私预算。
设计决定从监管出发,不从算法。HIPAA Safe Harbor 干净映射到 PII 掩码,带 18 类固定清单。PCI DSS 由 token 化(合成替换 + 保险库)满足。GDPR 的数据最小化原则把最敏感的类别推向生成前。差分隐私没有被任何主流监管强制,但当威胁模型里有一位带辅助数据的复杂对手、语料里有可能被重新识别后须监管申报的记录,它就是对的答案。
第 8 章接下去会怎么走
第 7 章和第 8 章合起来收口了第四部分。访问控制答的是谁能看什么;匿名化答的是有什么可看。两者都是基础设施决定,流水线其余部分必须遵守,两者都依赖在解析和分块时下的不可便宜回滚的决定。系统设计好、保住了之后,下一个问题是:它有没有效?这需要一种度量它的方法。
明天 — 第 9 章:RAG 评测三件套。Context Relevance、Groundedness、Answer Relevance — 三个互相独立的信号,合起来告诉运营者:系统是检索坏了、生成坏了,还是两者之间那条带子坏了。