考察点
内容安全在国内是硬合规要求(生成式 AI 服务有明确监管办法),面试里问这个是在确认你知道「模型对齐不等于产品合规」。考点集中在:传统敏感词方案在大模型场景为什么失效、多层审核体系怎么搭、误判和漏判怎么平衡。追问常往「变体绕过怎么处理」和「审核成本」走。
参考答案
为什么敏感词方案不够了
传统 UGC 场景(评论、发帖)靠敏感词库加正则就能覆盖大半,因为内容是用户写的、给人看的,命中即删。大模型场景三个变化让这套方案失效。第一,输入是开放式的:对抗用户会用谐音、拆字、拼音、emoji 间隔、外语、base64、图片藏字绕词库,词库永远追不上变体。第二,输出是生成的、不可枚举的:UGC 审的是存量内容,大模型审的是每次都不一样的生成结果,模型可能在没有任何敏感词的情况下输出有问题的内容(比如看似中立的偏颇观点、编造的违法教程换个说法)。第三,风险是语义级的:「怎么自制危险物品」有无数种问法不含一个敏感词,词库对此完全失明。结论不是词库没用,而是词库只能当兜底的一层。
分层审核体系
工程上典型的做法是输入侧和输出侧各自分层。
输入侧三层。 第一层敏感词和正则:快、便宜,拦掉明目张胆的违规请求和已知攻击模板,还承担合规留痕的作用(监管检查时词库是可见的审核动作)。第二层分类模型:用专门的文本分类模型(很多云厂商和开源社区有内容安全模型)判涉政、暴恐、色情、违法等类目,覆盖变体和改写。第三层语义级审核:对前两层拿不准的中间地带,用 LLM 判定「这个请求的真实意图是否违规」,成本最高所以只过前两层筛剩的少量流量。被拦的请求不直接报错,走预设的兜底话术(「这个问题我暂时无法回答」),避免暴露审核规则细节——详细的拒绝理由等于教攻击者怎么绕过。
输出侧同样三层,因为输入合规不代表输出安全(模型自己会幻觉出违规内容)。输出审核的难点在于流式场景:用户要逐字看到回复,总不能等全部生成完再审。工程做法是分段缓冲审核(每积累若干 token 送审一次)加事后全量复审,审核不通过时截断流并替换为兜底话术;更高危的场景干脆放弃流式,全量审完再发。
几个实战细节
变体对抗是长期战争。除了审核模型本身要持续用新变体样本迭代,还可以做归一化预处理:拼音还原、形似字映射、去除间隔符号后再过词库,能拦掉大部分低级变体。攻防样本从两个渠道来:红队主动构造、线上漏网 case 回流。
多轮语境是词库方案的另一个盲区:单看每句话都没问题,连起来是在套违法教程(分步诱导)。审核要带上对话历史判,至少带最近几轮,这也是为什么纯词库方案在多轮对话产品里一定出事。
误判与漏判的权衡按业务定阈值:面向公众的 C 端产品漏判代价高(监管和舆情),阈值调严、宁可误伤,配合申诉和人工复审通道;企业内部工具误判代价高(影响员工效率),阈值调松但全量留痕审计。误判 case 和漏判 case 都要进 badcase 库反哺审核模型。
审计留痕是合规底线:审核动作(谁、何时、命中什么、怎么处置)要落日志,保留期限按监管要求来。这套日志同时也是审核体系自己的评估数据来源——定期抽审核通过的流量人工复审,算漏判率;抽被拦的流量复审,算误杀率,两个率都要持续监控。
和模型侧安全的关系
应用层审核再完善,模型本身的对齐仍是重要一层:一个对齐好的模型会在大量违规请求下直接拒答,审核层的压力骤减。所以选型时模型自带的安全能力(用红队集实测拒答率和过激拒绝率)是评估项;审核层是「不信任模型」的兜底架构,模型层是「减轻审核负担」的上游优化,两者是互补关系。
可能的追问
- 审核调用带来的延迟和成本怎么控? 答:分级过审——词库毫秒级全覆盖,分类模型十毫秒级覆盖大部分,LLM 审核只过中间地带的少量流量;输出侧流式分段审核把延迟摊平。成本上审核模型可以用小尺寸专精模型,不必用旗舰。
- 图片、语音输入的内容安全怎么做? 答:多模态有专门风险——图片藏字(视觉注入)、语音绕文本审核。图片过 OCR 加图像安全模型,语音先 ASR 转文本后进同一套文本审核链,同时音频本身过声纹和语种检测防合成语音攻击。
- 怎么评估审核体系本身的效果? 答:两个核心指标,漏判率(抽审通过流量人工复核)和误杀率(抽被拦流量复核),加上红队攻击通过率作为对抗性指标。三个指标都进监控看板,大版本更新前用红队集回归。