快手商业化风控实战如何用大模型搞定低俗广告审核附完整技术拆解在商业化广告的洪流中平台方与低俗、违规内容之间的攻防战从未停歇。对于广告平台的技术负责人和风控工程师而言这不仅是合规问题更是一场关乎平台声誉、用户体验与商业生态健康的技术硬仗。传统的规则引擎与单一模态的识别模型在面对日益隐蔽、语义复杂的“擦边球”内容时常常显得力不从心。大模型的出现以其强大的语义理解、多模态融合与上下文推理能力为这场战役带来了全新的武器。但如何将这把“利器”真正打磨锋利并嵌入到高并发、低延迟的线上风控系统中却是一个充满挑战的工程实践问题。本文将深入快手商业化风控的一线实战抛开宏观叙事聚焦于大模型在低俗广告识别场景下的落地细节。我们将从数据工程的“脏活累活”谈起拆解多模态融合的工程选择探讨对抗样本的实战处理并深入参数微调、量化部署等具体技术决策为你呈现一套可复用的完整技术链路。1. 数据工程构建高质量风控“燃料库”任何优秀的模型都始于高质量的数据。在低俗广告审核场景下数据工程面临的挑战尤为特殊标注成本极高、对抗样本层出不穷、语义边界模糊。单纯依赖人工标注不仅效率低下也难以覆盖长尾的违规模式。1.1 多模态指令数据的自动化构建低俗内容往往通过图像、文本、甚至音频的复杂组合来传递隐晦信息。因此训练数据必须覆盖多模态并能引导模型理解“低俗”的复杂定义。我们采用了一种结合自动化与人工校验的流水线来构建指令数据。首先从历史审核日志中沉淀出高质量的正负样本对包括明确违规样本已被审核员确认为低俗的广告素材图像、视频帧、文案。明确合规样本经过多轮审核确认为安全的素材。边界争议样本历史上存在过争议或规则调整前后判定结果不同的素材。这类样本对于提升模型的鲁棒性和泛化能力至关重要。提示边界样本的收集需要与审核运营团队紧密协作定期从争议案例库中抽取这是提升模型应对“尺度变化”能力的关键。接下来利用大模型如GPT-4进行指令数据的自动化扩增。核心思路不是让大模型直接判断是否低俗而是让它基于素材生成丰富的、多角度的描述和问答对从而让我们的风控模型学习到更细粒度的特征。例如对于一张可能存在性暗示的图片我们让GPT-4生成如下格式的指令数据{ “image_path”: “ad_image_001.jpg”, “conversations”: [ { “from”: “human”, “value”: “请详细描述这张图片中人物的衣着、姿态、表情以及物品的摆放位置。” }, { “from”: “gpt”, “value”: “图片中央有一位女性模特身着紧身吊带裙领口较低。她侧身站立身体曲线被刻意突出手部轻抚脖颈。背景中有一个香水瓶但其摆放角度与模特的身体部位形成某种暗示性构图。模特眼神直视镜头嘴唇微张。” }, { “from”: “human”, “value”: “根据你的描述这张图片可能传递了哪些超出产品功能本身的信息请从社会普遍认知角度分析。” }, { “from”: “gpt”, “value”: “该构图将产品香水与模特性感姿态强关联可能暗示使用该产品能增加个人性吸引力。其衣着、姿态和眼神的共同作用容易引导观众关注模特身体而非产品存在利用性暗示进行营销的倾向。” } ] }通过这种方式我们构建的不仅是“图片-标签”数据而是“多模态输入-复杂推理过程”的数据让模型学会“如何思考”低俗问题。1.2 对抗样本的主动挖掘与数据增强恶意广告主会不断变换手法制造对抗样本以绕过审核。被动等待样本上报是远远不够的必须主动出击。我们建立了一个对抗样本生成管道基于规则的扰动对已知违规样本进行自动化变换如添加马赛克、局部裁剪、颜色调整、添加无关文字水印、进行轻微的仿射变换等。基于模型的攻击使用PGD投影梯度下降等对抗攻击方法针对当前线上风控模型生成对抗样本。这些样本对人眼而言变化不大但足以使模型判断错误。生成式样本扩充利用扩散模型等生成式AI在合规素材的基础上可控地生成具有低俗元素的“合成违规素材”。例如给定一个普通的服装广告场景指令生成式模型“为模特添加更挑逗的表情和姿态”。将生成的对抗样本加入训练集可以显著提升模型的鲁棒性。我们通常会维护一个“对抗样本池”定期用最新的线上模型对其进行攻击生成新的对抗样本实现数据与模型的协同进化。2. 模型构建从通用大模型到风控专家的精调策略拥有了高质量数据后下一步是将一个通用的大语言模型或多模态大模型微调成精通低俗内容识别的“风控专家”。这里面临的核心工程抉择是全参数微调还是参数高效微调如LoRA2.1 全参数微调 vs. LoRA一场效率与效果的权衡我们针对同一基础模型如InternVL-7B和相同的风控指令数据集并行实验了两种微调策略对比结果如下对比维度全参数微调 (Full Fine-Tuning)LoRA微调 (Low-Rank Adaptation)可训练参数量全部参数约70亿仅0.1%-1%的参数约700万-7000万GPU显存消耗高需存储优化器状态、梯度、参数极低主要存储适配器权重训练速度较慢快可设置更大的batch size单个任务效果最优模型能力完全对齐风控领域略低于或接近全参数微调多任务兼容性差微调后模型“遗忘”通用能力好可通过切换不同LoRA适配器服务不同任务部署灵活性每个任务需独立部署完整模型一个基础模型多个轻量适配器部署成本低我们的实战选择对于核心、固定的低俗识别主任务如果计算资源允许全参数微调是首选。它能最大程度地将领域知识注入模型达到最佳性能上限。我们在关键场景的最终模型上采用了此方案。对于快速迭代的细分风险类型如特定类型的文字游戏、新出现的符号隐喻或需要同时维护多个风控模型的场景LoRA是更优选择。我们可以基于一个强大的基础模型快速训练多个轻量级LoRA适配器灵活应对规则变化。例如当“霸总”类内容被纳入监管时我们可以在几天内训练一个专用的LoRA模块快速上线。2.2 多模态融合的工程实现低俗广告的识别需要综合判断画面、文字、语音甚至背景音乐。我们采用了一种分阶段、动态权重的多模态融合策略而非简单的早期或晚期融合。第一阶段特征独立提取与初筛视觉编码器如CLIP-ViT提取图像/视频帧的深度特征。文本编码器如BERT处理广告文案、ASR转录文本、OCR识别文字。各自通过一个轻量级的小模型如二分类网络进行单模态初筛产生一个初步的风险分数和特征向量。第二阶段基于交叉注意力的特征交互将初筛后的视觉特征序列和文本特征序列输入一个多模态融合Transformer层。这个层通过交叉注意力机制让图像特征和文本特征进行深度交互。例如模型可以学习到“某些特定文案”与“某些特定画面区域”同时出现时风险概率会急剧升高。第三阶段动态权重决策并非所有模态在所有样本中都同等重要。对于纯图片广告视觉权重要高对于音频为主的广播广告文本ASR权重要高。我们引入一个轻量级的门控网络根据输入样本的特征动态计算各模态特征的融合权重最终汇总成一个综合风险分数。# 简化的动态融合权重计算示意 def dynamic_fusion_weight(vision_feat, text_feat): # 门控网络学习判断当前样本哪个模态更关键 gate_input torch.cat([vision_feat.mean(dim1), text_feat.mean(dim1)], dim-1) gate_scores torch.softmax(self.gate_network(gate_input), dim-1) # [batch, 2] # gate_scores[:, 0] 视觉权重 gate_scores[:, 1] 文本权重 fused_feat gate_scores[:, 0:1] * vision_feat gate_scores[:, 1:2] * text_feat return fused_feat这种动态融合方式比固定权重融合在线上A/B测试中显示了更优的召回率和精准率。3. 推理部署让大模型在风控线上跑得又快又稳将数十亿参数的大模型部署到需要毫秒级响应的广告审核流水线中是最大的工程挑战。核心在于量化压缩与推理加速。3.1 AWQ量化实战在精度与效率间寻找平衡点我们放弃了传统的RTNRound-To-Nearest量化因为它对LLM的精度损失太大。最终选择了AWQActivation-aware Weight Quantization。它的核心思想是保护那些对激活输出影响大的“显著权重”只对不那么重要的权重进行激进量化。我们的AWQ量化实施步骤校准数据采集从风控审核的真实流量中采样一批具有代表性的图片和文本数据作为量化校准集。激活观测在基础FP16模型上运行校准集观测每一层权重的激活分布识别出那些激活幅度大、对输出影响显著的通道或权重。缩放保护在量化之前对这些显著权重所在的整个通道进行一个小的缩放因子调整扩大其数值范围使其在后续的INT4/INT8量化中能保留更多信息。分组量化对权重进行分组如128个权重为一组每组内寻找最优的量化参数scale和zero point实现更精细的量化。经过AWQ-INT4量化后一个13B参数的模型权重从约26GB压缩到约4GB显存占用下降至原来的1/6以下。在自建的低俗内容评测集上量化后的模型相比FP16原模型准确率下降控制在1.5%以内完全满足线上需求。3.2 基于vLLM的高吞吐推理服务量化解决了显存问题但要应对广告系统的高并发还需要优化推理速度。我们采用vLLM作为推理引擎其核心PagedAttention技术完美解决了自回归生成中KV缓存的内存碎片和浪费问题。我们将风控大模型封装为GRPC服务并进行了以下针对性优化连续批处理动态将不同用户请求的输入序列组合成一个批次进行计算极大提高GPU利用率。前缀缓存对于常见的系统Prompt如“请判断以下广告内容是否低俗…”其对应的KV缓存可以被所有请求共享避免重复计算。自适应生成长度对于风险较低的样本模型可能很快输出“合规”结论对于高风险样本则需要生成更长的拒绝理由。我们根据模型输出的置信度动态调整生成长度限制避免无效计算。经过优化单台A100 GPU服务器可同时处理数百路视频流的风控初筛请求平均响应时间P99控制在200毫秒以内。4. 动态对抗与系统迭代构建持续进化的风控飞轮低俗内容的对抗是动态的规则和尺度也在变化。一个静态的模型很快就会失效。我们构建了一个“感知-决策-学习”的闭环系统。4.1 RAG增强的实时规则应用审核规则库可能随时更新。为了让大模型能即时应用最新规则我们引入了检索增强生成技术。构建规则知识库将所有成文的审核规则、违规案例描述、历史判例转化为向量存入向量数据库如Milvus。实时检索当新广告素材进入时先用小模型或关键词提取其核心特征如“女性”、“紧身”、“特定姿势”用这些特征作为查询条件从规则知识库中检索出最相关的若干条规则和案例。增强推理将检索到的规则和案例文本作为上下文Context与大模型的原始Prompt拼接再让模型进行最终判断。这相当于给模型配备了一本随时可查、最新版的《审核规则手册》。注意RAG的检索质量至关重要。我们采用多级检索策略先基于关键词粗筛再用稠密向量检索精排确保召回的规则高度相关。4.2 人机协同与模型自迭代线上系统永远需要人工审核的兜底和指导。难例挖掘与反馈所有被模型判断为高风险但人工审核通过的样本以及模型判断为低风险但人工驳回的样本都会被自动收集到“难例池”。主动学习定期从“难例池”中采样最具信息量的样本如模型置信度不高但判断错误的样本提交给审核专家进行标注。模型迭代利用新标注的难例数据以LoRA的方式对线上模型进行快速增量训练通常每周或每两周进行一次小版本迭代。这个过程就像一个“风控飞轮”数据反馈驱动模型进化更强的模型又能发现更隐蔽的违规收集更高质量的难例。在实际业务中我们遇到过一种通过“谐音梗”和“抽象图案”结合的新型低俗广告。初期模型未能识别。通过RAG检索到了关于“谐音违规”的规则但案例库中没有完全匹配的。审核员处理该案例后我们将其作为典型样本加入训练集并通过LoRA对模型进行了快速微调。一周后同类广告的自动拦截率从不足10%提升到了85%以上。5. 效果评估与成本考量任何技术方案最终都要接受业务效果的检验。我们建立了多层次的评估体系离线评估在包含数万条样本的独立测试集上评估模型的准确率、召回率、F1分数特别是针对“边界样本”的识别能力。线上A/B测试将模型部署到小部分真实流量中与原有规则引擎或旧模型对比核心看两个指标误杀率好广告被拒和漏过率坏广告被放过的变化。成本监控持续监控GPU资源消耗、推理延迟、服务吞吐量。量化模型和vLLM的引入使得单次推理成本相比FP16部署降低了约70%。从结果来看引入大模型风控系统后对新型、隐蔽性强的低俗广告的召回率提升了约40%同时通过精细化调优和RAG的辅助误杀率保持在与传统系统相当的水平。更重要的是系统应对规则变化的适应周期从过去的以“月”为单位缩短到了以“周”为单位。大模型不是风控的“银弹”但它确实为我们打开了一扇新的大门。它让机器开始理解内容的“弦外之音”和“社会语境”将审核从简单的模式匹配提升到了语义理解的高度。然而这条路上没有捷径需要扎实的数据工程、精细的模型调优、巧妙的系统设计以及一个允许快速试错和迭代的技术文化。最深的体会是模型上线只是开始构建一个能够从业务反馈中持续学习的闭环系统才是让风控能力在动态对抗中始终保持领先的关键。我们仍在探索如何更好地利用思维链提示让模型“说出”判断依据以及如何将多智能体协作引入更复杂的审核流程中这些都是下一步值得深入的方向。