Industry & PracticeResearch & Benchmarks
长尾 BadCase 降了 2.96 个 点: 美 团 搜索 3.0 把 三 期 实验 的 窗口 都 写 了
美团服务零售搜索用三期实验把 LLM 语义表征放进精排。一期 20% 流量 14 天,长尾 BadCase@1 显著降 2.96pp。二期和三期分别是 7 天的 20% 与 10% 流量。三期订单 +0.32% 没有拆开两类特征。

In this piece
长尾 BadCase 降了 2.96 个点:美团搜索 3.0 把三期实验的窗口都写了
美团技术团队在 2026 年 8 月 20 日写了服务零售搜索排序怎么把 LLM 语义表征放进精排。服务零售指把服务卖给消费者,和商品零售相对。时间跨度是 2025 年第四季度到 2026 年第二季度,三期都做了 Launch Review 并全量。三期的线上窗口不都落在 2026 年下半年,下文按原文的实验日期分开写。
先证明语义缺口,再决定怎么测
服务零售品类长尾、商品描述不标准,Query 和商品名经常对不上字面。例子是「宠物 SPA+洗澡」对上「萌宠清洁护理套餐」,「春节大扫除」对上「深度保洁服务套餐」。传统精排几乎没有语义建模。做法是用 LLM 给 Query、商家(POI)和商品(Deal)出语义向量,把 cosine 相似度当特征灌进排序。
一期:64 维、10 个桶,先看能不能涨
一期只用轻量开源基座做全参数微调,目标是验证 LLM 表征对精排有没有实质帮助。词表里加了 <|query|>、<|item|>、<|qi|> 三个特殊 Token,当语义聚合锚点,嵌入用平均初始化。推理时 Query 和 item 分开出向量,按天增量写到 Hive。
cosine 不直接当连续值。按边界 [-0.40, -0.30, -0.18, -0.12, 0.00, 0.10, 0.16, 0.22, 0.30] 切成 10 个桶,每个桶一个 12 维可学习向量,再拼进精排。离散化是为了让特征交叉更好用,并降低对噪声的敏感。2 万条搜索曝光样本用来看分桶:语义越近,点击和下单占比越高。
离线:点击 NDCG +9bp,下单 NDCG +13bp。线上窗口是 2025 年 9 月 18 日到 10 月 1 日,20% 流量,14 天,AA 校验通过。大盘搜索支付订单显著 +0.20%,服务零售订单显著 +0.27%。长尾 NDCG@5 显著 +2.21pp,长尾 BadCase@1 显著 -2.96pp。原文说这是 64 维表征、只靠分桶拼接拿到的订单增量。
一期自己写了四条短板:只覆盖 Query 和商家,没有商品;全参数微调贵;目标偏点击率,对成单不够;三次 Forward 的推理还能再省。
二期:2766 万条五元组,从「是否匹配」改成「谁更匹配」
二期把样本扩成五元组:Query、Deal 正样本、POI 正样本、Deal 难负样本、POI 难负样本。难负样本来自同一请求:Deal 难负是同一商家下曝光未点击的商品,POI 难负是同一请求里曝光未点击的商家。训练样本 2766 万条。
损失从点击二分类改成对比学习。消融里,加上 Triplet Loss 后 Q2I-Click-AUC +4.85pp,Q2I-Order-AUC +11.02pp。脚注写 Triplet 的 margin 用网格 {0.1, 0.3, 0.5, 0.7, 1.0} 搜到 0.5。LoRA 用 r=8、α=32,目标模块是 q_proj 和 v_proj。对比里 LoRA 的 NDCG 好于全参数微调,全参数的 AUC 略好。这个现象原文说只在本场景看到,不能当成普遍规律。最后选 LoRA,是为了训练效率和维护成本。
参数档位在约 0.5B 到 8B 之间,中等档位是效果和推理成本的平衡。更大模型 NDCG 提升有限、推理更贵;最小档全面落后。表征任务专用的 Embedding 变体,在 Click-AUC 和 NDCG 上好于同参数量的通用模型。降维用 MRL-E。相对线性降维,离线精度差不大,价值是同一套表征可以按场景选维度,不用重训。
相对一期,表征质量是:Q2I-Click-AUC +6.25pp,Q2I-Order-AUC +5.37pp,Q2I-Click-NDCG +1.77pp,Q2I-Order-NDCG +2.03pp。Q2I 这些 AUC 的定义在脚注里:用 query 和 item 表征的余弦相似度当分数,在精排样本上算,反映的是语义匹配,不是线上订单。
应用上同时算 Query-POI 和 Query-Deal 两组相似度,各自分桶。没有表征的样本置零向量,进专门的缺失桶。底层把分桶向量拼进特征交叉,顶层把原始 cosine 接到 CTR 和 CTCVR,中间过一层 LHUC。加上顶层之后,点击 NDCG +5bp,下单 NDCG +3bp。维度从 64 扩到 128 后,不再用 HashTable 热启,改成离线样本化加线上 KV 读。模型体积相对一期基线还略小。原文没有给出缩小的字节数。
线上窗口是 2026 年 3 月 17 日到 3 月 23 日,20% 流量,7 天,AA 通过。搜索大盘搜索 UV 显著 +0.07%,有效点击 QV 显著 +0.13%,服务零售结果页有效 QV_CTR 显著 +0.10pp(+0.15%)。TP90 只增加 0.2ms。服务零售搜索 QV -0.05% 不显著,有效点击 QV +0.09% 不显著,结果页 QV_CTR 显著为正。下钻到某一个事业部:QV -0.70% 显著,QV_CTR +0.24pp 显著。原文的解释是无效曝光被换掉了,总曝光下降,转化效率上升。实验组点击 NDCG@30 +6bp,点击 GAUC +13bp。
三期:覆盖率不修就不要迁移
下挂精排复用二期模型,但 Query 覆盖率只有 81.24%,Query 和 Deal 同时有向量的双覆盖率只有 73.61%。原因是商家精排的 Query 偏商家意图,例如「SPA」,下挂精排更多是商品意图,例如「双人 XX 套餐」。用下挂样本重新圈选之后,Query 覆盖率到 98.92%,双覆盖率到 89.81%。原文把覆盖率检查写成跨模块迁移的第一步,不是可选项。
前置验证把 cosine 等距分成 100 桶,看成单、货架成单、点击、全域成单的桶内均值,都随 cosine 单调上升。分桶做了五种:等样本量(V1)、按下挂成单等距(V2)、按货架成单等距(V3)、以及在下挂曝光和货架曝光上分别等距(V4、V5)。Droprank 重要性:V1 排第 21,V2、V3、V4 分别排第 40、164、129。它们不是重复特征。
注入方式对比了四种,离线增量是:底层只拼交叉统计特征 +7bp;底层拼 LLM 相似度加交叉统计 +18bp;LLM 相似度放在输出塔前 +8bp,且部分指标为负;PEPNet 门控 +25bp。门控这一档对应的指标名是 ctcvr_auc_global_poi +25bp,高于底层拼接的 +18bp。
另外补了四类全域交叉统计:user×deal、POI 的 cate3、user×POI 的 cate3、query×deal。订单和转化类特征覆盖率低于 0.1%,消融后拿掉。原文写明:方向对但覆盖太低,仍然没有实际收益。
线上窗口是 2026 年 5 月 28 日到 6 月 3 日,10% 流量,7 天,AA 通过。服务零售订单显著 +0.32%,服务零售访购率显著 +0.29%,搜索大盘支付订单显著 +0.35%,大盘访购率显著 +0.25%。+0.32% 是表征和交叉统计叠在一起的结果。两类离线都单独为正,叠加上线比预期更强。原文没有把 +0.32% 拆成各自的线上贡献。
五条判断,都带着边界
中等参数量是当前预算下的平衡点,不是终局。推理变便宜之后,最优点会上移。难负样本决定表征上限,随机负样本学不会「为什么选这个」。Embedding 的提示词做减法:要写模型该聚合什么信息,不要写复杂任务指令。迁移的风险在覆盖率,不在能不能复用参数。语义特征和统计特征是互补,不是二选一。
后续还没做的包括:针对下挂分布重训表征,以及把排序信号回灌到表征训练。这些是计划,不是已完成的线上数。
读的时候只保留原文给得出的边界:一期线上窗口在 2025 年 9 月,二期在 2026 年 3 月,三期在 2026 年 5 月,都不能写成 2026 年 8 月当周的新实验;bp 和 pp 不能互换;Q2I 的 AUC 是表征余弦分,不是支付订单;三期 +0.32% 没有拆开两类特征的线上份额;LoRA 优于全参只在 NDCG、且只在本场景观察到。
出处:美团,美团技术团队,美团搜索3.0:LLM 语义表征在排序模型的探索与应用,2026-08-20,https://tech.meituan.com/2026/08/20/01-meituan-Query-3.0.html
Found it useful? Pass it on
Scan with WeChat to open it on your phone and forward it.