多模态内容智能审核(图文视频)落地

日期:2026-07-21

UGC 和商家素材的爆发,让内容审核从"人力够用"变成了"系统瓶颈"。我们当时服务的某头部美妆品牌商,大促期间一天要过审上万条图文与短视频,人工队列积压、违规漏放、版权投诉齐飞。本文复盘我们如何用"分模态—再融合"的多模态审核管线,把这件事做成可闭环、可灰度、可追责的工程系统。

一、项目背景

电商平台 UGC 与商家素材持续增长,违规图文视频靠人工审核有三个绕不开的问题:一是慢,大促期间审核队列动辄积压数小时,商家投诉上架慢;二是漏,单纯靠人眼,涉黄、涉政、夸张宣传、医疗违禁词这类内容容易在疲劳时漏放,合规风险高;三是误杀,标准松了漏放、紧了一刀切误伤正常内容,用户体验和商家关系都受损。

更麻烦的是版权。商家素材里混用未授权图片、影视截图、明星肖像的情况很普遍,人工几乎没法逐帧比对。我们这个项目里,目标是建立一条覆盖图文、视频的多模态审核链路:先分模态识别违规,再把跨帧、跨模态证据融合做最终判定,最后留一条人工抽检闭环。底层同样跑在我们采用的 AI 私有化部署底座上(推理一体机形态,GPU 资源池化,满足版权库不出域的要求),调用统一经 AI 网关编排与计量。

二、落地场景

系统覆盖四类核心场景:

第一,图文违规识别。对商品图、买家秀、Banner 做违规检测:涉黄涉政、违禁词(医疗/绝对化用语)、二维码导流、水印广告等,输出违规定类与命中区域。

第二,视频帧抽审。长视频按关键帧抽取,对抽出的帧做图文同款违规检测,避免"只在某一秒出现违规"漏过。

第三,版权与敏感检测。把素材指纹与内部版权库(已授权素材、品牌自有图、明星肖像白名单)做比对,识别未授权搬运、影视截图、肖像侵权。

第四,人工抽检闭环。模型判定的"高风险"直接拦截,"中风险"进人工队列,"低风险"放行但按固定比例抽检,抽检结果回流反哺模型阈值。

三、关键技术挑战与解决思路

挑战一:多模态违规识别。 图文和视频本质是不同的模态,硬用一个端到端模型既贵又难调。我们的思路是先分模态:图像走视觉模型做目标/文字区域检测(OCR 取图上文字),文本走 NLP 模型做违禁词与语义判定,两者各自出"单模态分数",再融合。融合不是简单加权平均,而是按类目加权——涉黄以视觉分主导,违禁词以文本分主导。我们用网关的编排层实现"视觉模型并行 + 文本模型并行 + 融合函数":

orchestration:
  parallel:
    - vision_model: { endpoint: vm-nsfw, weight: 0.7, for: [porn, politics] }
    - text_model:  { endpoint: tm-banword, weight: 0.9, for: [ad, medical] }
  fuse: weighted_max          # 按类目取主导模态
  fallback: human_queue       # 任一模型超时则转人工

挑战二:视频抽帧与跨帧关联。 一秒 25 帧全检成本爆炸,抽少了又漏。我们做法是"关键帧 + 场景切换检测":先用镜头边界检测(shot boundary)只在场景切换点抽帧,平均把帧数压到原来的约 1/20;再对连续命中做跨帧关联——单帧命中可能是误判(如正常皮肤特写),同一镜头连续 3 帧命中才升级为视频级违规。抽帧配置如下:

{
  "shot_detection": "histogram_diff",
  "threshold": 0.32,
  "max_fps": 1,
  "consecutive_hit": 3,
  "rule": "same_shot_3hit => video_level_violation"
}

挑战三:版权与敏感检测。 这是最容易被忽略、出问题最贵的环节。我们把版权检测前置到审核链路最前端,而不是事后补救。做法是对素材做感知哈希(pHash)+ 局部特征(SIFT)双路指纹,入库时和版权库做近邻检索;命中未授权库直接判"版权风险"并附带相似度证据,供人工确认。版权库本身用 Milvus 存向量,闭源不出域。检索示意:

fp = extract_fingerprint(media)            # pHash + SIFT
hit = copyright_index.search(fp, topk=5)
if hit[0].similarity >= 0.91:              # 高相似直接标版权风险
    verdict = "COPYRIGHT_RISK"
    evidence = f"match={hit[0].asset_id} sim={hit[0].similarity:.3f}"

挑战四:误杀与体验权衡。 审核最难的不是检出率,是别误伤。我们的工程实践是"三级分流 + 抽检回流":高置信直接处置,低置信直接放行,中间地带进人工,且人工结果按类目统计误杀率,定期回写阈值。当某类目误杀率超过约 2% 时,自动放宽该类目阈值并告警。这条闭环靠网关计量层沉淀每类目的处置分布,运营可在管控台调参而不动模型。

案例片段(已脱敏): 某头部美妆品牌商大促期间,一条 38 秒口红试色视频被初版规则误杀,原因:第 12 秒出现"最"字口播被绝对化用语规则拦截。我们查看抽帧与跨帧关联日志:shot#4 @12.3s: ocr="这款颜色最显白" -> BANWORD_HIT(abs) cross_frame: only 1/3 consecutive -> NOT upgraded final: PASS (单帧命中未达跨帧升级阈值) 调整后该 SKU 误杀率由 3.1% 降至 0.8%另一条商家图因混入未授权影视截图被版权检测前置拦截,证据相似度 0.94,人工复核确认后驳回,避免了一次潜在版权投诉。

四、效果数据

以下为脱敏示意数据,口径为某头部美妆品牌商大促周期(约 2 周)上线前后对比:

指标改造前改造后说明
违规拦截率约 82%约 98%漏放显著下降,含视频跨帧命中
审核时效平均约 3.5 小时降至约 8 分钟低风险自动放行,高风险秒级处置
误杀率约 4.2%降至约 0.9%三级分流 + 抽检回流调参
人工抽检比例约 100% 全量降至约 12%仅中风险与抽检样本进人工

需要说明,拦截率提升主要来自视频跨帧关联和版权前置,时效提升来自低风险自动放行;约 12% 的人工抽检比例是为了维持可控误杀率而保留的"安全阀",并非越高越好。

五、可复用经验总结

第一,多模态先分模态再融合。别迷信一个万能端到端模型,分模态各自出分、按类目加权融合,工程上更好调参、更好排错,单模态故障也能降级。

第二,版权检测前置。版权问题的代价远高于普通违规,把它放在链路最前端拦截,比事后投诉处理成本低一个数量级。指纹 + 向量近邻检索是成熟可靠的组合。

第三,视频审核靠抽帧不靠全检。镜头边界检测把成本压到可接受区间,跨帧关联解决"单帧误判",这条规则直接决定了系统能不能跑在大促流量下。

第四,用"三级分流 + 抽检回流"平衡误杀与体验。判定不是非黑即白,把置信度中间地带交给人、把结果回流成阈值,系统才会越用越准。我们这个项目里,网关计量层沉淀的处置分布,是运营调参的唯一可信依据——没有数据支撑的"收紧规则"只会带来更多误杀投诉。