Java面试要点:敏感词过滤、机器审核、人工审核与内容状态流转
前言
评论和内容审核常见于社区、电商评价、工单备注、文章发布。面试常问:
- 敏感词怎么过滤。
- 机器审核和人工审核怎么配合。
- 内容先发后审还是先审后发。
- 举报后怎么处理。
- 审核状态怎么流转。
内容状态
stateDiagram-v2
[*] --> 待审核
待审核 --> 已发布: 审核通过
待审核 --> 已拒绝: 审核拒绝
已发布 --> 已下架: 举报/复审
已拒绝 --> 待审核: 修改后重提
审核方案
先审后发
优点:
- 风险低。
缺点:
- 用户体验差。
适合:
- 高风险内容。
- 强监管场景。
先发后审
优点:
- 体验好。
缺点:
- 有暴露风险。
适合:
- 风险较低内容。
分级审核
低风险直接通过,中风险机器审核,高风险人工审核。
这是企业里更常见的方案。
敏感词过滤
常见实现:
- 关键词匹配。
- DFA 自动机。
- 正则。
- 第三方内容安全服务。
敏感词库要支持:
- 动态更新。
- 分级。
- 命中记录。
- 灰度生效。
机器审核与人工审核
机器审核适合快速筛查:
- 文本敏感词。
- 图片违规。
- 政治、色情、广告。
人工审核适合:
- 机器不确定。
- 用户举报。
- 高价值内容。
flowchart TD
A[用户发布内容] --> B[机器审核]
B --> C{风险等级}
C -->|低| D[自动发布]
C -->|中| E[人工审核]
C -->|高| F[自动拒绝/拦截]
举报处理
举报后要记录:
- 举报人。
- 被举报内容。
- 举报原因。
- 处理状态。
- 处理人。
处理结果:
- 不处理。
- 下架。
- 删除。
- 封禁用户。
- 人工复审。
高频面试题
敏感词过滤为什么不能只靠正则?
正则复杂度和维护成本高,词库多时性能和可维护性都不好,DFA 或专业内容安全服务更合适。
先发后审有什么风险?
违规内容可能短时间暴露,需要快速下架、举报入口和风控策略。
人工审核为什么还需要机器审核?
机器用于规模化初筛,人工用于处理边界和高风险内容,两者互补。
内容状态为什么要保留历史?
审核涉及追责、申诉和合规,需要保留审核记录和状态变化。
总结
评论内容审核的核心是状态流转、分级审核、敏感词过滤、人工复核和举报闭环。企业系统要在用户体验和内容安全之间做平衡。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Junly博客!
评论


