这类问题我又碰上了一次。关键词审核上线一周后,用户开始用同音字和插入符号绕过,命中率从 92% 掉到 61%,关键词表补了三百条仍然跟不上,误判集中在变体写法上。

第一反应是「符号与空格插入把词打散了」,验证下来不成立。

原因不止一个,得分开看。纯关键词匹配对变体无能为力;没有做拼音与形近字归一;缺少语义层的二次判断。

做归一化再匹配

python norm.py --text 违禁词变体

归一化里去掉符号与零宽字符

python norm.py --strip-symbols

补一层语义相似度判断

python semantic_audit.py --threshold 0.86

剩下的就是用历史绕过样本做回归集

python audit_test.py --cases bypass.jsonl

这类问题以前遇到过,但这次的触发条件和上次不一样。

恢复的判定其实很直接。历史绕过样本的拦截率回到 85% 以上,正常文本误杀率不上升,审核耗时增加在 50ms 以内。

提醒一点。关键词审核只能拦住最直白的表达,变体必须靠归一化加语义相似度,两层的阈值要分开调。线上能稳定复现的问题都不算难,难的是只在大流量下才出现的那种。

作者 9823189