尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

大模型重塑营销广告:货拉拉意图理解、创意生成与投放优化实践

大模型重塑营销广告:货拉拉意图理解、创意生成与投放优化实践 1. 从“人写广告”到“模型写广告”货拉拉营销广告的智能化转轨先交代一下背景。货拉拉的业务覆盖货运、同城配送、搬家、租买车等场景营销广告体系天然带有“双边平台”属性一边是司机侧需要拉新、促活、唤醒沉默司机一边是用户侧要完成从“知道货拉拉”到“下单、复购、转介绍”的完整转化链。这两类人群的属性差异极大一个司机和一个C端用户的关注点、语言习惯、决策动机几乎完全不在一个频道上。传统广告投放的做法是运营和创意团队人工撰写文案、人工配置定向、人工盯报表再靠经验调整预算和出价。问题很明显人群包可能只有粗粒度的性别、地域、年龄创意素材产出速度跟不上投放节奏广告内容与用户当前需求错配——比如一个正在找搬家公司的人看到的是“司机月入过万”的司机招募广告跳转率自然难看。大模型切入营销广告体系逻辑其实很朴素用模型去理解“用户是谁、在什么场景、有什么意图”再自动产出“符合这个人的语境和决策阶段的内容”最后在投放层面做实时调优。我在货拉拉实际参与的项目里核心方向就三条线——意图理解、创意生成、投放优化。这篇博文不聊概念只聊我们怎么落地、踩了哪些坑、哪些经验可以复用到别的公司。2. 大模型选型与工程架构模型不是越强越好要分场景配2.1 选型逻辑先分场景再谈模型大小很多人一听到“营销广告用大模型”第一反应是“上GPT-4级别的模型”。实际做下来完全不是这么回事。营销广告场景有三个约束调用成本、延迟、内容合规审核压力。我们用分层策略场景模型级别核心考量用户意图理解短文本分类中等参数模型如7B-14B级别或微调后的精调模型高频调用延迟需控制在百毫秒级成本敏感广告文案生成长文本强生成能力模型如70B级别或商用API低频批量生成质量优先可接受秒级延迟实时投放策略调整小模型规则引擎结合大模型在线打分需要亚秒级响应大模型只做关键决策点打分不直接生成我们最早犯过一个错误想用一个14B模型同时承担意图分类和文案生成。结果意图分类的准确率不够文案生成又显得“模板味”太重两头都没讨好。后来拆成两个链路效果立刻上来了。注意营销广告场景的模型选型没啥捷径先把业务场景按“调用频次×延迟敏感度×质量要求”三个维度拉一个矩阵再去匹配模型规模顺序不能反。2.2 工程架构大模型不直接暴露在外层在大模型和广告投放系统之间我们加了一层“策略编排层”。原因很简单广告系统是7×24小时实时在跑的业务大模型一旦超时或者抽风不能整个链路跟着一起挂。这层的三个职责流量路由判断当前请求是否真的需要大模型介入。比如高活跃用户的广告内容刷新请求不涉及新意图推断可以直接走缓存GLB层面直接返回历史最佳创意。降级兜底大模型服务超时或返回内容不合规时回退到模板库和规则引擎的老路。我们定了一个硬性指标大模型链路可用性必须达到99.95%以上否则不上全量。结果校验大模型生成的文案必须过一层“合规品牌一致性”校验比如违禁词过滤、价格承诺的合规性检查、是否包含货拉拉品牌禁用语等这一层是纯规则代码很土但很管用。我们的大模型服务本身部署在内部Kubernetes集群里GPU节点分了两组一组跑在线推理意图理解一组跑离线批量任务创意生成和模型微调训练。两组物理隔离避免离线任务抢在线资源。2.3 上下文工程营销场景的Prompt设计比想象中难营销广告的Prompt设计和写代码助手类的Prompt有很大不同。代码场景有明确的输入输出格式和验证标准而广告文案的衡量标准是“点击率”“转化率”这种间接指标没有标准答案。我们实践下来一个比较靠谱的Prompt框架是角色设定你是货拉拉平台的资深营销文案专家深谙货运、搬家、同城配送场景的司机和用户心理。 任务背景{用户分层标签} {所处决策阶段} {业务目标} 创作要求输出3版不同风格的文案分别侧重利益点直给型、情感共鸣型、行动紧迫型。 输出格式每版文案前用一行说明风格侧重点和适用投放渠道信息流/短信/公众号。 合规约束禁止出现绝对化用语禁止承诺具体收入数字价格类表述需引用后台实时价格接口不写入静态文案。这套Prompt跑了一段时间我们发现一个问题模型理解“用户分层标签”的能力参差不齐。比如标签是“近30天未下单的搬家类用户”模型有时候会写出“您很久没来了我们好想您”——这种话说给用户听其实就是自嗨。后来我们开始做意图理解和用户画像的深度打通Prompt里不再直接堆标签而是让模型先基于标签生成一份简短的“用户画像推演”再基于推演结果写文案。这个两步走的小改动让文案的整体点击率提升了约15%。3. 创意内容自动生成从模板库到动态生成的质变3.1 广告文案生成先定“骨架”再让模型填“血肉”我们的广告文案体系早期就是一套模板库几千条文案按业务线和场景打标投放时匹配。模板库的问题很明显用户疲劳度上升得快同一条文案反复出现点击率衰减很厉害。大模型接入后我们尝试过完全放开让模型自由创作结果文案多样性有了但质量标准失控——有些文案读起来很有创意但完全不像是货拉拉该说出来的话。中期复盘之后我们改成了“骨架血肉”模式运营团队用规则定义“文案骨架”比如“开头问题共鸣-中段场景代入-尾部行动号召”或者“利益点前置-信任背书-限时暗示”大模型在骨架约束下生成文案内容每条文案自动生成3-5个变体一个“创意打分模型”对这批文案做排序估点击率只有Top 1-2的进入投放池投放后实时监控数据表现好的文案会被保留作为后续生成的风格参考few-shot示例。这里要说个细节。第三步的“创意打分模型”我们一开始直接用大模型打分让模型评价“这条文案点击率会高吗”成本高且不稳定。后来改成用一个轻量级的点击率预估模型(embeddingDIN结构的简化版本)来打分大模型只负责生成候选打分交给传统模型整体成本和稳定性都好了很多。3.2 多模态素材海报配图和视频脚本的辅助生成货拉拉的营销广告不止有文案还有海报和信息流视频。这个方向的实践可能对做电商、本地生活的人有参考价值。海报方面我们做了一个“文案底图分离”的流水线。大模型根据业务主题生成多条主文案然后从版权图库里匹配背景图再用规则引擎做文字排版位置校验。模型不直接生成图——受限于成本和质量我们尝试过文生图模型直接出海报但商品平台的海报往往需要体现真实车型、真实价格生成的图会失真而且审核那边过不了。所以目前的方案是“真实图库模型文案自动排版”用AI的地方在于文案生成和主题分类的自动化。视频脚本这块倒是很有价值。我们让大模型基于“活动信息投放渠道时长要求目标人群”直接产出分镜头脚本包括口播词、画面建议、字幕文案。这个脚本不需要100%可用它更大的价值是帮编导团队把70%的框架搭好人只需要改细节。一个编导原来一天能产出2-3条脚本现在能到8-10条这个效率提升是可量化的。3.3 小程序弹窗和Push的实时内容配合容易被忽略的一个场景是小程序弹窗和Push推送。这两类触点的文案有个特点——字符数限制严、意图性极强、和用户会话上下文关系紧密。用户上午刚查了“搬家小面”车型价格下午收到推送如果还在说“新用户立减XX元”转化一定差。我们在这个场景做了一个实时文案拼接链路用户触发行为事件后意图理解模型实时输出当前用户的意图标签和决策阶段再从一个“文案组件库”里动态拼装推送内容。这个组件库是预先生成的每个组件由大模型离线生成并做过合规校验在线阶段做的是组合而非生成所以延迟完全可控。这套机制让Push的点击率比原来全人工配置提高了约22%而且人工介入工作量下降了一大截。4. 用户意图理解与精准匹配广告投放的“芯片层”升级4.1 从规则标签到模型推断意图理解的范式切换货拉拉营销体系里的用户意图是一个多层级结构早期依赖用户的显式行为比如搜索行为、浏览品类。但大量用户并不一定先搜索再下单很多人是直接点开小程序里某个活动页或者通过老带新的链接进来。这种用户的前置意图是隐式的规则系统只能打一个“未知”标签投放就变得很盲目。我们搭建了一个基于大模型的意图理解模块输入特征包括用户近30天的行为序列、当前会话的交互轨迹、设备信息、LBS商圈特征。输出是三层意图结构——实时意图买车/租车/货运/搬家/同城配送、决策阶段认知/对比/决策/复购、价格敏感度档位。这里的关键在于微调。开源基座模型的通用意图理解能力在货拉拉业务场景下不够精准——比如“拉货”这个词在不同语境下可能是搬家也可能是企业用车基座模型往往给不出业务需要的细粒度分类。我们做了一版基于领域数据LoRA微调的意图模型用了一万多条标注数据和二十多万条弱监督数据评测下来意图分类准确率从基座的82.4%提到了93.1%这个提升幅度对投放后端是决定性的。提示意图理解模型不要一上来就做全量微调。先试LoRA或Q-LoRA效果不够再用全量微调。我们的经验是“标注质量远比数据量重要”五千条高质量人工标注能顶五万条自动标注。4.2 广告定向的人群扩展利用大模型做种子人群画像化货拉拉的广告投放需要做人群扩展lookalike传统做法是基于种子人群的特征向量做近邻搜索。这里有个问题种子人群的特征空间是稀疏的尤其是新业务线种子可能就几万人特征覆盖不全。我们试着用大模型来做人群画像的“补全”——给定种子人群的行为特征分布让模型推演这群人的潜在特征、媒体偏好、内容兴趣再把这些推演结果作为维度加入定向条件。这个话题有些敏感我们实际执行时非常克制只使用了脱敏后的统计级特征不会涉及任何个体隐私。这部分的实践效果是某业务线的人群扩展量提了3.7倍投放的CVR没有明显下降整体获客成本下降了约18%。但说实话这个数字里有多少是大模型的功劳、有多少是人群量变大本身的统计学红利我们内部没有完全拆清楚。这也是后面要持续做因果推断的原因——不搞清楚增量从哪来就无法稳定复制成功经验。4.3 用户分层的动态化从月级更新到小时级调整传统用户分层是运营给规则比如“近30天下单超过3次的算高频用户”然后数据库跑定时任务更新标签一天或一周更新一次。这在广告投放里太慢了——用户的需求会随季节、随搬家周期、随LBS商圈变化而波动。大模型介入后我们做了一个动态分层通道用户在广告场景里的每一次行为浏览、点击、搜索、下单都会实时更新一个“轻量意图向量”这个向量和大模型离线算出的“静态用户画像”做融合生成实时的投放分层。分层结果不进BI报表直接服务实时广告请求的定向和出价调整。这个架构做下来最大的收益不是单个指标的大幅上涨而是取消了“运营手动调整分层”这个环节。以前每周要花半天开会对分层规则做微调现在基本不需要了分层是模型在数据驱动下自动演化的运营只需要定义边界条件比如任何分层都不得包含未满18岁用户、任何分层都有最小样本量约束规则反而简化了。5. 广告投放的策略优化大模型在出价与预算分配中的角色5.1 竞价环节的传统方案与大模型增强货拉拉广告侧有自研的竞价系统RTB场景下要对每一次广告曝光机会实时出价。传统出价策略用的是PID控制加线性调价核心逻辑是跟踪一个目标成本线曝光机会的预估CTR高就加价、低就降价。这个方案成熟稳定但有个盲区——它只看“当下这一笔曝光的预估转化”不“理解”当前广告位的上下文环境是否与用户决策阶段匹配。我们在大模型接入后做了一件事把竞价请求的特征序列喂给一个轻量化的Transformer模型输出一个“上下文匹配分”直接作为PID调价器的一个输入修正项。这个模型做的事情本质上是用大模型的语言理解和序列建模能力补足传统预估模型对上下文不敏感的缺陷。举一个具体例子。用户正在小程序里比较“小面”和“中面”两种车型的价格这时候来自信息流广告位的一个曝光请求如果只按历史CTR预估权重可能一般但上下文匹配分识别出用户处于“对比决策期”在信息流推一个“中面价格立减券”的广告反而非常契合。加了这一项后信息流的竞价胜率提升了约9%同时目标成本没有超限。5.2 预算分配大模型拆解“什么时候该花哪个池子的钱”货拉拉的广告预算分很多池子新客获取池、老客召回池、品牌曝光池、司机招募池。每个池子的预算分配原来靠财务和运营对表拍脑袋周期是周级。这个节奏太慢了——周中突然有一波热点比如城市限行政策调整、货运旺季提前导致某个池子的流量机会暴增等下周调预算就来不及了。我们做了一个“预算调度辅助模块”每晚用大模型分析当日各渠道的投放数据、行业大盘波动、热点事件摘要输出未来48小时各预算池的建议调拨方向和幅度。大模型不直接改预算只是输出建议由系统内的规则来执行预算调拨规则会卡一个“单日调拨幅度不超过20%”的阈值防止模型抽风把预算全挪走。这个模块上线后预算使用效率用“预算消耗率×达成ROI的综合分”衡量提升了约14%主要提升来自对周末搬家需求和月初货运需求两个尖峰的预判。大模型在这里其实是用它的世界知识补齐了纯统计模型的“看不见拐点”问题。5.3 投放实验的加速自动生成A/B测试方案假设最后说一个可能比较小众但很实际的应用大模型辅助生成实验假设。做广告投放的人都懂A/B测试实验的设计很依赖经验——测什么变量、怎么定对照组、观察周期多长。新手运营提的实验方案经常变量混杂测试结果没法归因。我们让大模型基于历史实验数据和当前投放痛点自动生成实验假设包括实验变量如文案风格、落地页结构、出价倍率、目标指标、预期收益区间、风险控制线。大模型还会做一件事回溯分析历史实验找出“看起来很成功但其实是偶然波动”的案例减轻幸存者偏差对团队判断的干扰。这个模块的价值不在准确率而在“让团队的实验方法论变规范了”。投放所有的新实验都要和大模型生成的假设库对齐不一致的地方运营要说清楚理由——这个流程本身让实验设计质量有了明显提升。6. 效果评估与踩坑记录大模型广告系统是怎么被验证的6.1 对账和归因大模型在效果评估里的角色做营销广告最终老板只问一个问题多花的钱带来多少真实增量大模型在营销广告里的ROI必须用严格的对比实验来验证。我们在验证时遇到的问题很典型大模型优化的广告点击率确实涨了但点击率涨不等于增量收入涨——因为点击的可能是本来就会转化的“自然流量用户”。我们的归因方案分三层实验层A/B测试跑增量对比、归因层同一用户在广告触达和自然访问之间的转化路径映射、模型层用uplift model找出真正被广告说服的人群。大模型在这三层里的角色是用意图特征做用户分组保证实验组和控制组的用户“广告敏感度”分布一致——这一直是A/B测试里最容易被忽视的坑用户分组随机但不对等实验结果就废了。注意大模型在效果评估上帮的是“帮你看清因果”而不是“直接告诉你结果”。投资回报率验证没法省该跑的实验时长、该有的对照组、该做的显著性检验一步都不能少。6.2 实测过程中的典型意外与修复记录三个印象最深的坑排名按维修复杂度从低到高。第一个是“大模型文案被拦截率偏高”。我们生成的文案在合规校验环节被拦截了快18%远超之前模板库的4%——模型太喜欢用“最”“第一”“100%”这种词了。解决方案是在生成后的输出校验阶段增加一个“改写器”命中违禁词时自动用同义词替换和句式调整拦截率降到了5.8%。第二个是“文案多样性退化”。跑了两个星期后我们发现同一个业务线的文案开始趋同都变成了“XX元起立即下单”的句式。原因是创意打分模型倾向于给“类历史高点击”的文案打高分模型被评价器带跑了。修复方式是给打分模型加了一个“多样性惩罚项”同时每次从候选池里选广告文案时强制覆盖至少3种骨架风格效果恢复。第三个坑比较隐蔽“推送频率失控”。大模型上下文增强后Push内容的匹配度高了运营忍不住加频次——结果用户投诉率上涨。后来定了一个死规则无论模型判断内容多精准单一用户单周Push触达上限是4次超过就走冷却。技术再强用户关系不能被透支这个原则要写在工程代码里不能指望运营自觉。6.3 对同行做类似项目的一些建议最后聊几个能直接带走的心得都是我在这类项目里学到的东西但不代表适用所有团队参考为主。先做意图理解再做内容生成。意图理解是广告系统的地基地基不牢文案写再好投放也是瞎打。我们最早被“文案生成”吸引先去做了创意后面回头补意图浪费了一个多月。大模型生成的创意一定要用传统模型过滤一道。大模型的创意候选质量方差极大直接用等于赌博。一个便宜的点击率预估模型就是最好的“编辑”。Prompt工程要持续迭代。我们的广告文案Prompt每两周左右会更新一次主要工作是把“最近表现好的文案风格”沉淀成few-shot示例。Prompt不是写一次就完了它是活的资产。别把大模型当成唯一技术支柱规则引擎和传统模型依然是系统稳定性的底座。大模型负责智能规则负责底线这个组合在我们团队内部目前看来是最可靠的。7. 未来的演进方向与个人实操体会这一节不做什么宏大展望就说两件我实际在推进的事。第一件事是把大模型从“辅助创意和投放判断”逐步升级为“参与广告全链路的自动化决策”。目前意图理解和创意生成已经自动化了但预算调拨还需要人为确认实验设计也还需要人来审。我的目标是让系统在大模型建议的基础上自动执行低风险决策只把高风险决策留给人。这条线走通之后广告投放的人力介入点会进一步减少。第二件事是大模型的多模态能力在视频广告素材上的进一步应用。目前我们的视频还是编导主导、大模型辅助脚本下一步想把视频画面和口播的音画一致性也纳入模型辅助的范畴让编导的产出效率再翻一番。最后说句实在话。这一路实践下来我最大的体会是大模型在这种业务场景里不是“魔法棒”更像一个“能听懂人话的超强实习生”——给它清晰的指令、好用的工具、明确的边界它能顶一个五人小组的活但你如果指望它自己知道该干什么、不该干什么那一定会翻车。所有看似智能的成绩背后都是工程上和运营上的持续调教和约束。把约束做好了大模型就是营销广告系统里最踏实的一环。
返回列表