
做营销广告的同学这两年应该都有个共同感受大模型不是云端挂着的概念而是已经长到了投放链路的每一个环节里。就拿同城货运平台来说既有个人搬家、中小商户发货的货主端又有大规模司机的招募和活跃运营还牵涉同城LBS的实时匹配这几个场景交织在一起广告投放的复杂度比普通电商只高不低。这篇内容我想把我们团队在货拉拉营销广告场景里的落地实践整理出来重点讲清楚我们用大模型做了什么、为什么这么选、中间踩了哪些坑以及哪些做法可以移植到别的业务里。如果你正打算在大模型应用上动手又不想上来就搞一个所谓的“智能投放中台”这篇文章应该能给你一个更务实的路线图。1. 先别急着上模型把广告链路里最疼的三个环节挑出来1.1 货主端、司机端和LBS投放为什么比电商广告更复杂电商广告的经典链路是“曝光—点击—加购—支付”用户需求相对统一商品标签也比较标准化。但同城货运平台不一样货主端和司机端是两个不同的人群决策链路完全不同。货主端要解决的是“把东西从A地送到B地”的问题这个需求天然带强地理属性。用户可能刚搜完“搬家公司费用”转头又问“金杯车拉货多少钱”甚至直接下了一个“从浦西搬到浦东”的订单。这类需求非常碎片化传统的兴趣标签很难表达清楚。更麻烦的是它不是“马上点击就能成交”的即时广告用户往往要比较几家车型和价格决策周期可能从几分钟拉到几天。司机端则完全是另一种玩法。平台要招募新司机要激活沉默司机还要引导司机跑到特定区域接单。广告推送的目标不光是“让司机看到”而是要精准触达那些“有完单能力、近期活跃、愿意接特定类型订单”的人。这个人群量级有限广撒网没有意义挑人比喊话重要。同城LBS又给投放加了一层约束。用户在静安区刷到一个“附近正在接单的货车”广告和刷到一个全国连锁搬家品牌的广告感觉完全不一样。投放系统必须把“距离”“路况”“附近运力热力”这种时空信息融合进去这是普通电商广告不会遇到的高复杂度问题。所以你会发现在货拉拉这样的场景里大模型不是用来聊天或者做客服的它真正要处理的是非结构化、口语化、带有空间和时间信息的用户需求和素材内容。只有先把这三个环节的痛点画清楚后面选型才不会跑偏。1.2 从文案生成到投放决策哪里最值得投入我们当初没有一上来就把所有环节都“大模型化”而是按三个标准切了一刀投入产出比、数据闭环速度、容错率。第一优先是素材生产。原因很简单素材文案的生成结果可以直接放到广告A/B测试里转化数据两三天就能看到好坏错了也不至于伤筋动骨。这个环节也是大模型最能立竿见影的地方后面我会详细展开。第二优先是人群理解和定向投放。这部分需要改动标签体系、用户画像和向量检索改造周期长但收益也最大。因为广告投放的底层逻辑就是“在正确的时间把正确的内容给正确的人”如果人群理解错了素材再好也是白费。第三优先才是投放策略和归因分析。你让大模型直接给出价、控预算风险很高一旦出幻觉可能把预算烧掉。但让大模型辅助做数据解读、生成分析报告、提供决策参考是稳妥且有价值的。这个排序不是我拍脑袋定的而是来自一个很朴素的逻辑先做容易验证的再做影响面大的最后碰直接涉及钱的。所有项目在启动之前都应该先做一遍这样的“痛点排序”避免为了炫技术而选错战场。2. 素材生产是第一个吃螃蟹的环节2.1 文案生成把提示词工程做成上下文工程很多人一开始都用大模型生成广告文案但效果通常很差。最常见的结果是生成一堆“专业团队、价格实惠、服务周到”这种正确但毫无用处的废话。问题不在模型而在提示词太泛了。我们把提示词工程改成了上下文工程。所谓上下文工程不是单纯堆一个长prompt而是要把业务知识、约束条件和历史参考都变成可动态检索的上下文让模型每次生成时“带着真实业务信息去写”。以搬家广告文案为例最后沉淀的prompt大概长这样你是一位熟悉同城货运行业的广告投放优化师。 现在需要为上海地区搬家场景生成一条竖版信息流广告文案。 目标用户25-40岁近期需要搬家的个人用户。 核心卖点明码标价、车型可选、按里程计价、无额外费用担忧。 合规约束不出现“最”“第一”“绝对”等绝对化用语不承诺具体送达时间。 请输出以下三部分 1. 短标题不超过15字 2. 正文文案不超过60字 3. 行动按钮文案不超过6字 参考示例 标题搬家别猜价格车型自己选 正文小面、中面、厢货按需选择在线预约透明计价 按钮立即估车费用了一段时间之后我们又发现固定示例不够用。同样是搬家需求从老小区搬到新小区和从办公楼搬到仓库关注点完全不同。于是我们搭了一个“高转化文案片段库”把历史审核通过、跑量效果好的广告文案按场景、车型、城市、人群打标。每次生成前先根据当前的需求上下文做一次检索把最相似的3到5条历史文案拼进prompt作为few-shot示例。这一步非常关键。因为大模型生成效果的上限很多时候不取决于模型本身有多大而取决于你给它的上下文有没有把业务关键信息喂到位。这就是上下文工程的价值不是让模型“凭空想”而是让模型站在历史经验和业务约束的肩膀上写。2.2 轻量微调还是纯Prompt我们怎么选第一批大模型文案上线后我们用了一段时间发现两个问题一是风格不稳定同一个需求的两次生成结果差异很大二是一些业务术语经常说错比如“中面”“小面”“厢货”这类车型词通用模型分不清楚。于是我们开始考虑微调。但微调不是唯一选项我们内部做过一轮很务实的对比。方案训练成本数据需求风格稳定性迭代速度纯Prompt上下文工程低低一般依赖prompt质量快改prompt就能调LoRA微调中数千条高质量样本即可高能把业务术语学进去中需要训练和验证全参微调高十万级起步更高慢且容易过拟合我们的选择是先用纯Prompt跑通流程等积累了两三千条经过审核的高质量历史广告文案之后再做LoRA微调。LoRA的原理不复杂就是把大模型原有权重冻结只训练一小部分低秩矩阵显存占用低训练速度也快特别适合垂直领域“调风格”而不是“学知识”的场景。微调数据也不是越多越好。我们是把历史跑量最好的头部素材作为正样本把审核被驳回、投诉率高的文案作为负样本一起构造SFT训练集。训练过程中重点关注车型词、价格描述、合规约束这几个维度的表现。模型训练完之后部署用的是vLLM配合4bit量化单张消费级显卡就能支撑日常生成需求。这也解决了一个隐私问题业务数据不用全部打到外部API上可以在私有化环境里跑合规压力小很多。这里我想特别提醒一句如果你连Prompt都没调明白先别急着微调。微调只是把prompt管线里的效果固化下来它不能替代提示词设计。业务还没跑通就上微调只会把badcase也一起学进去。2.3 多模态素材里的统一token化实践文案的问题解决后我们很快发现真正的瓶颈不在文字而在图片和视频素材。广告平台对素材的新鲜度要求很高同一个创意跑量超过一定次数就会衰减。纯靠设计团队手工出图产能远远不够。多模态大模型在这里帮了大忙但我们的用法不是“一句话生成一张完整广告图”而是拆成一条稳定的素材流水线第一步用LLM根据用户意图和投放渠道生成文案和分镜脚本。比如一条15秒竖版视频脚本要包含前3秒的钩子、中间的产品卖点、最后的行动号召。第二步用图像生成模型生成场景底图比如居民楼门口、仓库园区、城市街道。这个阶段不做文字渲染因为直接让大模型在图片里生成中文文字经常会出现乱码、错字、缺笔画效果完全没法用。第三步用检测和分割模型把货车、货箱、搬运工人等元素从素材库里提取出来通过可控生成方式叠到底图上保持透视和光影一致。第四步最后用渲染引擎把标题文案、价格标签、行动按钮铺到图上。这样每个元素都是独立可控的出问题可以单独改而不是整张图重新生成。这套流程跑通后一个完整的“视频素材矩阵”可以在很短时间内生成十几个版本不同尺寸、不同城市背景、不同车型、不同文案组合。素材产能从过去的按天计算变成按小时计算。这也是大模型应用里我最推荐优先落地的部分因为效果肉眼可见且不太需要改造线上投放系统。2.4 A/B测试里必须盯住的素材疲劳素材量大了并不意味着广告效果一定更好。我们踩过一个很典型的坑模型生成了几千条素材投放团队一次性全铺上去前两天的确CTR涨了但一周之后整体成本反而上升了。原因是素材疲劳被忽视了。同一个素材在同一批用户面前展示次数过多点击率会快速衰减。大模型量产出来的素材里很多只是换了个背景颜色或换了句口号本质上还是同一套创意。广告平台对同质化素材的推荐权重会压得很低结果就是你生成的“新素材”并没有被当作新素材来跑。后来我们做了三件事第一在素材入库前计算素材间的相似度对相似度过高的簇做去重或者限制数量第二给每条素材加一个“新鲜度”特征展示量一旦超过阈值就自动降权第三A/B测试的时间窗和渠道必须一致不能让新老素材在不同渠道上直接比较数据。这条经验值得所有做大模型创意生产的团队记下来生成不是目的让素材真正进入投放循环并被系统喜欢才是目的。数量多只是手段质量分布才是关键。3. 人群理解与定向投放标签从离散到语义3.1 用户行为摘要与实时意图识别传统广告系统理解用户依赖的是行为标签。比如用户搜索过“搬家公司”系统就打一个“搬家兴趣”标签搜索过“金杯车拉货”就再打一个“货车租赁兴趣”。这听起来有效但实际工程里问题很多同义词覆盖不全“搬家”和“换房子”被认为完全不同标签是离散的表达不了“他正在比价、计划在两周内搬家、关注车型大小”这种连续且复杂的意图。我们引入大模型后做了一件很基础但价值很高的事离线为用户生成行为摘要。把用户近30天的搜索词、点击行为、订单内容、反馈行为拼成一段文本让LLM输出一段自然语言摘要同时抽取出结构化意图字段。一个简化示例输入行为片段最近5次搜索“搬家公司费用”“金杯车拉货价格”“浦东搬家到浦西” 输出摘要用户正处于搬家决策周期主要关注价格和车型预估搬家距离10-20公里对明码标价敏感有比价行为。 结构化标签搬家意图高关注车型小面/金杯预计决策时长3天内这些摘要和标签会进入两个系统一个是用户画像平台供广告定向和推荐系统读取另一个是广告竞价系统把“意图摘要embedding”作为特征向量输入CTR/CVR模型。在线实时链路里我们不会让每一条搜索都去调用大模型成本和延迟都兜不住。实际方案是两级级联先用规则和小模型做粗分类只有遇到高价值、不确定度高的请求才触发LLM精排。近线批量生成的摘要缓存在特征平台线上直接读取。这既享受了大模型的语义理解能力又不至于把在线广告系统的响应时间拖垮。3.2 用embedding重构lookalike人群扩展广告投放里有个非常经典的需求给定一批高价值种子用户找到更多相似的人。传统做法是把种子用户的id类特征、行为特征拿去做二分类模型然后对整个用户池打分排序。问题在于这个模型学到的“相似”往往偏向表层行为比如同样点过某个广告的人而不一定能理解“搬家用户”和“租房到期用户”之间的语义关联。我们换了个思路。既然已经有了用户行为摘要就可以把摘要文本和关键行为序列用embedding模型编码成用户向量然后在向量数据库里做近邻检索找出与种子用户语义最接近的用户群。具体流程是四步挑选高价值种子用户比如近30天完单3次以上、客单价较高的货主。用LLM生成每个种子用户的意图摘要再把摘要embedding化。对种子用户向量做聚类或直接取中心向量存入向量库。在限定城市范围内做ANN检索召回语义相近的扩展人群再叠加基础行为约束和频控策略。这里有一个同城场景特有的注意事项必须限定城市。一个上海的搬家用户和一个成都的搬家用户在语义向量上可能很接近但对广告投放来说完全是两个独立市场。人群扩展只能在同一个城市或相邻城市范围内做否则会引入大量无效流量。我们还发现embedding模型不能直接用通用的开源向量模型。通用模型会把“搬家”和“搬家公司”这种词处理成偏相似的表示但业务上它们代表的需求阶段不同。后来我们在业务数据上做了对比排序微调让模型学会区分“关注价格的人”和“已经下单的人”效果才有明显提升。3.3 创意与人群的动态匹配人群定向变得更准之后下一个问题就是“这群人到底该看到什么创意”。传统动态创意优化主要靠人工规则比如给价格敏感人群看低价车广告给企业客户看厢货月结广告。规则写起来麻烦而且覆盖不了长尾场景。我们的做法是把创意文案也embedding化然后和用户意图embedding做语义相关性计算把相关性分数作为特征塞进CTR模型。这个分数不替代CTR模型本身只是帮它更充分地理解“创意—用户”之间的匹配度。举一个实际场景一个用户最近在搜“电动三轮车送货”如果给他看一条标题是“小面也能拉货”的广告相关度不高但如果标题换成“三轮车之外的小面选择能盖雨布、能进市区”相关性就会好很多。这类需求太细碎了靠人工不可能提前把所有组合配好但语义向量匹配能自动发现这种关系。同时要盯住一个副作用不要把匹配做得“太精准”。用户刚搜过两次搬家就连续看到两天搬家广告会产生被跟踪的压迫感。这时必须叠加频控和隐私保护策略宁可牺牲一部分相关性也不要让用户产生反感。4. 投放策略和归因解读的智能化4.1 大模型辅助的预算分配与出价决策投放预算在多个渠道之间分配过去主要靠运营同学每天看报表、凭经验调。渠道一多、素材一多凭经验就很难做细。大模型在这里的角色是“策略助手”而不是“拍板者”。我们做了一个预算分配辅助模块每天早上把各渠道前一天的消耗、点击成本、转化成本、完单成本、素材环比数据整理成结构化上下文让LLM输出一份渠道诊断和预算调整建议。建议必须包含理由和预期影响比如“某渠道近三天eCPM上涨但转化成本同步下降建议加预算10%”“某渠道素材衰减明显建议把预算切一部分到另一渠道”。运营同学确认后再通过投放系统执行。这个模块看起来简单但有一个核心原则大模型永远不能直接操作实时出价。广告出价是实时博弈过程一旦模型幻觉或者数据异常可能几分钟内把当日预算烧掉。我们采用“离线分析—建议—人工/规则确认—执行”的链路让大模型做分析让规则和人来把最后一道关。更进一步我们还在探索离线仿真。用历史流量日志模拟“如果上周把预算按建议调整最终成本会不会更低”把LLM的建议先放在历史数据上“复盘”再决定要不要采纳。这一步能把很多模型幻觉挡在线上之外。4.2 从归因表到自然语言诊断报告投放业务最耗时的工作之一是复盘归因。一个广告最终是否有效要看从曝光、点击、下载、注册到完单的完整漏斗分析师需要不断写SQL拉数据钻取渠道、素材、城市、人群四个维度最后才能写出一段复盘结论。我们用大模型做了一个“归因解读助手”。它的工作方式不是让模型瞎猜而是封装成Agent具备调用指标查询和SQL读取数据的能力。业务人员输入一句“为什么上海地区上周注册成本涨了”Agent先把这句话转成数据查询拿到结构化结果再按固定模板生成诊断报告。报告结构严格要求为异常定位、维度下钻、可能原因、建议动作。比如异常定位上海地区上周注册成本环比上涨18%。维度下钻涨幅主要来自信息流渠道A头条系素材点击率没变但落地页到达率下降较快。可能原因部分素材点击率虽高但落地页加载速度在低端机型上表现异常。建议动作暂停低端机型占比高的素材包优化落地页首屏图片大小。为了保证报告质量提示词里明确限制了“没有数据支撑的结论不能写”。每一句话都要能对应到具体维度下的数据。真实归因仍然要靠统计模型和A/B实验大模型在这里的价值是大幅缩短数据分析的时间让运营把精力放在动作上而不是查数上。4.3 效果晾晒模型上线不等于完事大模型项目很容易出现“演示效果很好一上线就翻车”的情况。所以从第一天开始我们就要求每一项大模型能力都必须通过A/B实验验证再全量。实验指标不是只看点击率。广告素材上模型后我们同时盯三个层面CTR代表吸引力CVR代表说服力转化成本代表效率。如果CTR涨了但CVR明显降了大概率是模型生成的文案“标题党”过度把不合适的用户点进来了。这种情况不能称为正向效果。另一个容易翻车的地方是实验分流。人群定向改动和创意生成改动会互相影响如果实验设计不干净很难说清楚是哪个模型带来的收益。我们一般把实验分成两类人群实验必须固定素材创意实验必须固定人群和出价策略。上线前还要做小流量灰度因为素材生成模型有一定随机性先跑1%流量观察一段时间再放量。这里我想分享一个最朴素但最重要的体会大模型应用的效果最终不是用“模型会不会生成”来验证的而是用“实验结果是否显著”来验证的。没有实验兜底的AI项目本质上都是耍流氓。5. 落地必须跨过的工程化大坑5.1 内容安全审核与合规校验广告内容比一般UGC内容合规要求高得多。广告法有明确限制比如不能用“最”“第一”“绝对”这类绝对化用语不能伪造促销价格不能承诺无法保证的送达时间。大模型生成内容天然带有随机性哪怕99%的输出没问题那1%的违规内容一旦投出去就可能带来品牌风险和处罚。我们的做法是三层防护。第一层是传统规则引擎覆盖绝对化用语、违禁词、黑名单词第二层用大模型分类器做语义级审核识别那些靠关键词规则很难拦截的表述比如“全网最低价”这种变体第三层是人工抽检尤其是新场景和新的促销活动上线时必须有人审。审核结果不能只被消耗掉还应该形成反馈闭环。被拦截的badcase要回流到生成模型的负例集里定期更新prompt或者微调数据。这样一来生成模型会越来越少产出一开始就能被规则拦截的内容审核压力会逐月下降。还有一个容易被忽略的点大模型输入侧也不能放松。广告系统里很多prompt会拼接用户行为数据有些数据属于个人敏感信息比如精确位置、手机号、设备号。在把数据传给模型前必须做脱敏和最小化处理不能为了生成一段摘要就把用户隐私全塞进去。5.2 成本与延迟的平衡不是所有环节都上大模型大模型不是免费午餐尤其在广告系统这种对延迟和成本高度敏感的场景里每一毫秒和每一分钱都要算账。我们内部做过一次盘点把候选环节分成三类离线批量型素材生成、用户摘要、人群embedding这些完全不卡线上链路可以在低峰期跑GPU集群延迟只要不耽误更新即可。近线准实时型比如用户意图变化触发的创意改写可以用缓存加队列的方式允许分钟级延迟。在线实时型比如广告检索、点击率预估现有系统延迟预算普遍要求50毫秒以内这个场景大模型直接上机基本不现实尽量不做。实战中我们几乎把所有大模型推理都往后移。用户行为摘要每天算一次素材生成每批次跑创意-人群相关性分数每天更新向量。在线系统只读取预处理好的特征和素材不直接调大模型接口。成本监控也是必须的。我们建立了每千次生成成本、每千次曝光模型成本的报表对比的是同样素材如果由外部设计公司和文案外包来做要花多少钱。只有模型生成的综合成本低且效果稳定业务方才会愿意持续投入。vLLM和量化部署是这里的关键支撑。我们用vLLM做推理服务统一管理多模型同时开了量化版本做低成本批量任务。GPU资源池化之后不同业务线可以共享算力避免每条业务线都各自囤一批卡。5.3 评测体系建设离线指标和线上实验怎么配大模型生成的广告文案没有“标准答案”所以评测体系不能只看一两个指标要分两层来搭。离线层面我们每周抽一批固定输入覆盖搬家、拉货、司机招募、企业月结等主要场景让模型生成候选文案再由业务专家按相关性、合规性、语言质量、卖点表达四个维度打分。打分结果折算成相对胜率用来对比prompt版本和模型版本的好坏。这一步很重要因为线上实验成本高、周期长全靠线上试错太慢了。线上层面重点看三组数据素材CTR/CVR、用户获取成本、审核通过率。其中审核通过率经常被忽略但它能很直观地反映生成质量如果大模型生成的素材大量被审核驳回说明离线评测没做好。还有一个每周必须做的动作badcase评审。把用户反馈、审核拦截、投放超成本的素材全部捞出来过一遍看是生成层的问题还是选材层的问题还是投放策略的问题。大模型项目最忌讳的就是“模型上线后没人管”它需要像运营产品一样持续迭代。踩过这么多坑之后我个人最深的感受是大模型在营销广告里的价值不是一夜之间取代谁而是把原来靠人力堆的部分变成靠模型批量试错。素材生产可以多但入口审核要严人群定向可以宽但落地转化要盯策略建议可以聪明但最终上线必须有实验兜底。如果你所在的业务也准备引入大模型建议也按这个顺序来先做素材再做人群最后碰策略。别一上来就追求一个包打天下的智能投放平台先把一个环节跑出确定性后续的路会顺很多。