过滤“黄P”关键词,不能只靠一张固定黑名单。更稳妥的做法是先对文本做统一化处理,再通过精确词、变体词、组合规则和上下文评分进行判断,最后按命中等级执行拦截、替换或人工审核。该方法适用于标题、正文、评论、昵称、搜索词、私信以及用户提交的链接文本。
一、先确定过滤对象和处理结果
开始配置前,应先明确哪些字段需要过滤,以及命中后要采取什么动作。不同场景不宜使用同一套强度,否则容易出现误拦截或漏放。
| 应用位置 | 重点识别内容 | 建议结果 |
|---|---|---|
| 标题、昵称、话题 | 涉黄类别词、诱导词、联系方式和外链引导 | 直接提示修改,必要时拒绝提交 |
| 正文、评论、私信 | 露骨描述、交易引导、招揽信息和规避审核的变体 | 高风险拦截,中风险进入审核 |
| 搜索框 | 敏感词组合、连续变体、站外跳转表达 | 屏蔽结果或返回安全提示 |
| 图片和链接 | 图片文字、文件名、域名路径、二维码旁文字 | 结合 OCR、链接检测和人工复核 |
如果只是内容发布审核,可以采用“拦截并提示修改”;如果是搜索过滤,则更适合“降低相关结果、隐藏外链或返回安全分类页”。过滤动作应和业务目标对应,不能把所有命中内容都简单删除。
二、第一层:统一文本,处理变形写法
很多敏感词并不是以标准形式出现。用户可能混用大小写、全角半角字符、空格、符号、重复字符、同音字或数字字母替代。因此,匹配前应先生成一份规范化文本,原文则保留用于展示和审计。
- 统一中文标点、英文标点、全角字符和半角字符。
- 英文统一转换为小写,清理首尾空白和不可见字符。
- 删除或折叠连续空格、下划线、短横线及无意义分隔符。
- 将连续重复字符压缩到合理长度,避免通过重复输入绕过规则。
- 建立有限的常见替代表映射,但不要无限扩大同音字或形近字范围。
- 对文本进行 Unicode 规范化,避免不同编码形式造成匹配失败。
建议同时保留三种结果:原始文本、规范化文本和命中位置。这样既能提升识别率,也能在审核页面中准确显示触发原因。对昵称、域名、文件名等字段,不宜直接删除全部符号,应根据字段特点单独设定可保留字符。
规范化流程:原文读取 → 字符编码统一 → 大小写和宽度统一 → 清理无效分隔符 → 压缩重复字符 → 生成可匹配文本 → 返回原文位置。
三、第二层:建立分级关键词库
关键词库不应只有“命中或不命中”两种状态。建议按内容性质和风险程度拆分,便于配置不同动作。
- 高风险词:直接指向露骨色情、未成年人相关色情内容、色情交易或明确招揽行为。通常采用高优先级拦截。
- 中风险词:单独出现时可能有多种含义,但与特定载体、联系方式或诱导表达组合后风险明显上升。适合交给组合规则判断。
- 诱导词:包括私聊、加联系方式、付费获取、跳转外部平台等表达。它们通常不能单独作为最终结论,但可提高风险分。
- 载体词:包括视频、图片、群组、直播、链接、资源等。与敏感类别词同时出现时,应提高命中等级。
- 例外词:用于新闻、法律、医学、未成年人保护、学术研究等正常语境。例外词只能降低普通误报,不应覆盖明确违法或高风险组合。
每个词条应附带类别、等级、匹配方式、适用字段、更新时间和处理动作。例如,某个词在昵称字段需要强拦截,在新闻正文中则可能进入人工审核。词库还应支持版本管理,避免运营人员修改后无法追溯。
四、第三层:组合规则比单词命中更准确
单个词可能存在正常含义,直接使用黑名单容易误伤。因此,应把“类别词、行为词、载体词、联系方式和跳转信息”组合起来判断。例如,同一段文字同时出现敏感类别表达、获取资源的行为表达和联系方式时,风险明显高于单独出现其中一个词。
可以采用以下规则结构:
- 精确匹配:用于高风险词和禁止出现在特定字段中的词,匹配后立即进入对应流程。
- 词组匹配:要求多个词在一定字符距离内同时出现,适合识别“内容类别+观看或获取行为”。
- 正则规则:用于识别联系方式、重复符号、数字字母混写和外链引导,但应限制长度和复杂度,避免影响系统性能。
- 近似匹配:通过编辑距离、字符 n-gram 或相似度识别少量错别字和变形写法,适合捕捉轻度规避行为。
- 上下文判断:结合整句语义、字段类型、用户操作和历史命中情况,降低单词误报。
不建议对所有文本都启用最宽松的模糊匹配。评论和昵称可以使用较强规则,长篇新闻或知识内容则应提高组合条件。对于超长文本,还应设置最大扫描长度,并对重复内容、异常编码和大量符号单独处理。
五、用风险分数决定拦截还是审核
实际系统可以为不同命中项设置分值,再根据总分执行动作。示例配置如下,具体数值应使用真实审核样本持续调整:
| 命中情况 | 参考分值 | 建议处理 |
|---|---|---|
| 高风险词精确命中 | 高分 | 直接拒绝或隐藏,并记录原因 |
| 中风险词与载体词组合 | 中高分 | 限制展示,进入人工复核 |
| 诱导词与联系方式同时出现 | 中高分 | 阻断发布或隐藏联系方式 |
| 单个歧义词或普通变体 | 低分 | 通常放行,必要时记录观察 |
同时命中多个类别时,不要简单重复累加。可以设置“最高等级优先”“同类重复封顶”和“关键组合加权”等规则,避免一段重复文本因同一词出现多次而被无限提高分数。对明确高风险内容,分数模型只能辅助解释,不能用低分覆盖硬性拦截条件。
六、过滤后的结果要区分处理
命中后可采用四类结果:拒绝提交、替换敏感片段、隐藏后等待审核、允许展示但写入日志。替换时不建议把敏感词原样返回给其他用户,可以显示为统一占位符;拒绝时则应给出概括性提示,例如“内容包含不适合发布的表达,请修改后重试”,避免把完整命中词暴露在前端。
客户端校验只能改善交互,不能作为唯一防线。最终判断应在服务端完成,并对文本、图片 OCR、链接地址和文件名分别检测。审核记录至少保留命中规则编号、字段类型、规则版本、处理动作和时间,便于后续复盘。
七、如何减少误拦截和漏检
过滤上线后,应持续收集两类样本:被错误拦截的正常内容,以及成功绕过规则的违规内容。前者用于补充例外语境、调整词组距离和降低单词权重;后者用于增加变体规则、更新规范化映射和完善组合条件。
- 不要只用关键词数量衡量效果,应分别观察误拦截率、漏检率和人工审核通过率。
- 对教育、法律、新闻和医学语境设置独立审核通道,不要直接套用昵称或评论规则。
- 例外名单采用有限范围和定期复核,避免成为绕过高风险规则的入口。
- 词库变更先在历史样本上回放测试,再逐步扩大到真实流量。
- 发现大规模变体绕过时,优先改进文本归一化和组合规则,而不是无限扩充黑名单。
因此,“黄P关键词怎么过滤”的可执行方案可以概括为:先统一文本,再按等级匹配关键词;随后结合载体、行为、联系方式和上下文计算风险;最后按照字段和分数执行拦截、替换或审核。小型站点可以从分级词库加组合规则开始,大型平台则应进一步接入 OCR、链接检测、语义模型和人工复核机制。






