UniSearch: Rethinking Search System with a Unified Generative Architecture
TL;DR 精炼摘要
本文提出了UniSearch,一个用于快手搜索的统一生成式搜索框架,取代传统的级联架构。通过集成搜索生成器和视频编码器,UniSearch实现了端到端优化,解决了目标不一致和泛化能力有限的问题,从而提升了短视频搜索的整体性能。
摘要
Modern search systems play a crucial role in facilitating information acquisition. Traditional search engines typically rely on a cascaded architecture, where results are retrieved through recall, pre-ranking, and ranking stages. The complexity of designing and maintaining multiple modules makes it difficult to achieve holistic performance gains. Recent advances in generative recommendation have motivated the exploration of unified generative search as an alternative. However, existing approaches are not genuinely end-to-end: they typically train an item encoder to tokenize candidates first and then optimize a generator separately, leading to objective inconsistency and limited generalization. To address these limitations, we propose UniSearch, a unified generative search framework for Kuaishou Search. UniSearch replaces the cascaded pipeline with an end-to-end architecture that integrates a Search Generator and a Video Encoder. The Generator produces semantic identifiers of relevant items given a user query, while the Video Encoder learns latent item embeddings and provides their tokenized representations. A unified training framework jointly optimizes both components, enabling mutual enhancement and improving representation quality and generation accuracy. Furthermore, we introduce Search Preference Optimization (SPO), which leverages a reward model and real user feedback to better align generation with user preferences. Extensive experiments on industrial-scale datasets, together with online A/B testing in both short-video and live search scenarios, demonstrate the strong effectiveness and deployment potential of UniSearch. Notably, its deployment in live search yields the largest single-experiment improvement in recent years of our product's history, highlighting its practical value for real-world applications.
思维导图
论文精读
中文精读
1. 论文基本信息
1.1. 标题
UniSearch: Rethinking Search System with a Unified Generative Architecture (UniSearch: 以统一生成式架构重塑搜索系统)
1.2. 作者
Jiahui Chen†, Xiaoze Jiang*†, Zhibo Wang†, Quanzhi Zhu†, Junyao Zhao†, Feng Hu†, Kang Pan, Ao Xie, Maohua Pei, Zhiheng Qin, Hongjing Zhang, Zhixin Zhai, Xiaobo Guo, Runbin Zhou, Kefeng Wang, Mingyang Geng, Cheng Chen, Jingshan Lv, Yupeng Huang, Xiao Liang, Han Li。 所有作者均隶属于 快手科技 (Kuaishou Technology),位于中国北京。
1.3. 发表期刊/会议
预印本 (Preprint Version),发表于 arXiv,链接为 https://arxiv.org/abs/2509.06887v2。这表明该研究尚未经过同行评审,但已公开发布,供学术界参考和讨论。尽管是预印本,但考虑到作者团队来自快手这一大型工业界公司,且论文内容涉及大规模系统部署和在线 A/B 测试,其研究成果具有较高的实际应用价值和工业界影响力。
1.4. 发表年份
2025年。具体发布时间为 2025-09-08T17:08:26.000Z。
1.5. 摘要
现代搜索系统在信息获取中扮演着至关重要的角色。传统的搜索系统通常依赖于级联架构 (cascaded architecture),通过召回 (recall)、预排序 (pre-ranking) 和排序 (ranking) 阶段来检索结果。设计和维护多个模块的复杂性使得实现整体性能提升变得困难。近年来,生成式推荐 (generative recommendation) 的进展激发了对统一生成式搜索 (unified generative search) 作为替代方案的探索。然而,现有方法并非真正的端到端 (end-to-end):它们通常首先训练一个物品编码器 (item encoder) 来对候选词元化 (tokenize),然后单独优化一个生成器 (generator),这导致了目标不一致 (objective inconsistency) 和泛化能力有限 (limited generalization)。
为了解决这些局限性,本文提出了 UniSearch,一个用于快手搜索的统一生成式搜索框架。UniSearch 用一个集成了搜索生成器 (Search Generator) 和视频编码器 (Video Encoder) 的端到端架构取代了级联管道 (pipeline)。生成器根据用户查询生成相关物品的语义标识符 (semantic identifiers, SID),而视频编码器则学习潜在的物品嵌入 (embeddings) 并提供其词元化表示。一个统一的训练框架联合优化 (jointly optimizes) 这两个组件,实现了相互增强,并提高了表示质量 (representation quality) 和生成准确性 (generation accuracy)。此外,本文引入了搜索偏好优化 (Search Preference Optimization, SPO),它利用奖励模型 (reward model) 和真实用户反馈来更好地使生成结果与用户偏好对齐。
在工业规模数据集上的广泛实验,以及在短视频和直播搜索场景中的在线 A/B 测试,都证明了 UniSearch 的强大有效性和部署潜力。值得注意的是,它在直播搜索中的部署实现了快手产品历史上近年来单个实验中最大的改进,突显了其对实际应用的实用价值。
1.6. 原文链接
https://arxiv.org/abs/2509.06887v2
1.7. PDF 链接
https://arxiv.org/pdf/2509.06887v2.pdf
2. 整体概括
2.1. 研究背景与动机
2.1.1. 核心问题
论文试图解决的核心问题是传统搜索系统级联架构 (cascaded architecture) 的固有缺陷,以及现有生成式搜索方法非真正的端到端问题。
2.1.2. 问题的重要性与现有挑战
- 传统级联架构的复杂性与局限性: 现代工业搜索系统普遍采用多阶段级联架构,包括召回、预排序和排序。这种架构虽然经过多年优化,但存在以下显著问题:
- 目标不一致 (Misaligned Objectives): 每个阶段使用独立的模型和优化目标,导致训练信号不一致,限制了整体端到端相关性建模 (relevance modeling) 的性能上限。
- 高推理延迟和维护成本 (High Inference Latency and Maintenance Overhead): 多阶段处理增加了推理延迟,且每个阶段都需要专门的算法设计和系统支持,维护成本高昂。
- 现有生成式方法的不足: 近年来,大规模生成模型 (large-scale generative models) 在推荐系统领域展现出潜力,一些工作尝试将生成式方法应用于搜索。然而,这些方法通常并非真正的端到端:
- 两阶段训练 (Two-stage Training): 它们通常首先训练一个物品编码器 (item encoder) 来为候选物品生成词元化 (tokenized) 表示(例如,语义 ID),然后单独训练一个生成器 (generator) 来预测这些词元。
- 目标不一致与泛化性差 (Objective Inconsistency and Limited Generalization): 这种分离的训练步骤导致词元化 (tokenization) 和生成 (generation) 目标之间存在不一致,限制了模型的优化效果和对未见过或动态内容的泛化能力。
- 跨域挑战 (Cross-domain Challenge): 推荐任务通常是域内 (intra-domain) 任务(用户/物品嵌入到物品),而搜索任务则是更具挑战性的跨域 (cross-domain) 任务(文本查询直接生成物品),现有生成式方法在搜索领域的应用尚不充分。
2.1.3. 论文的切入点与创新思路
论文的切入点在于,通过设计一个统一的生成式架构 (unified generative architecture),取代传统的多阶段级联管道,并解决现有生成式方法中的目标不一致问题。其创新思路是:
- 构建真正的端到端架构: 将搜索生成器 (Search Generator) 和视频编码器 (Video Encoder) 深度集成,实现从文本查询到物品语义标识符的直接生成。
- 统一训练框架: 提出一种统一的预训练 (unified pre-training) 策略,联合优化 (jointly optimize) 视频编码器(负责学习物品表示和离散化 (discretization) 为语义 ID)和搜索生成器(负责自回归地 (autoregressively) 生成语义 ID 序列),消除目标不一致。
- 引入搜索偏好优化 (SPO): 在预训练基础上,通过在线强化学习 (reinforcement learning) 框架,结合奖励模型和真实用户反馈进行后训练 (post-training),进一步使生成结果与用户偏好对齐。
- 工程部署与效率: 针对工业级部署,提出基于 Trie 树 (Trie-based) 的推理机制,确保生成效率和结果有效性。
2.2. 核心贡献/主要发现
UniSearch 的主要贡献可以总结为以下几点:
- 提出了 UniSearch 统一生成式搜索框架: 首次提出了一个在工业规模下部署的生成式搜索解决方案,用一个统一模型取代了传统的级联架构,并在检索质量和计算效率上均超越了传统方法。
- 设计了统一的训练框架: 创新性地将词元化 (tokenization) 和生成 (generation) 任务联合整合到一个训练框架中。这使得物品编码更有效,并生成更高质量的结果,解决了传统多阶段训练中的目标不一致 (objective mismatch) 问题。
- 引入了搜索偏好优化 (SPO) 机制: 通过结合奖励模型和真实用户反馈进行在线后训练 (post-training),使得模型生成的物品序列更符合用户的实际偏好,提升了用户体验。
- 大规模工业级部署与验证: UniSearch 成功部署在快手直播和短视频搜索系统上,通过大规模在线 A/B 实验验证了其在实际场景中的有效性和效率,服务于数亿活跃用户。特别是在直播搜索中,取得了近年来最大的单一实验指标提升。
3. 预备知识与相关工作
3.1. 基础概念
3.1.1. 级联架构 (Cascaded Architecture)
- 概念定义: 级联架构是传统搜索和推荐系统中最常见的系统设计范式。它将整个信息检索过程分解为多个顺序阶段,每个阶段负责不同的任务,并以前一个阶段的输出作为输入。这种设计通常是“粗到细”的过滤 (filtering) 过程。
- 系统构成:
- 召回 (Recall): 这是第一阶段,目标是从海量的候选物品集合 (item collection) 中快速检索出少量(通常几百到几千个)与用户查询或兴趣粗略相关 (roughly relevant) 的候选项。召回阶段通常注重高召回率 (high recall) 和低延迟。
- 预排序 (Pre-ranking): 召回阶段返回的候选集仍然较大,为了降低后续复杂模型的计算开销,预排序阶段会使用相对轻量级的模型对召回结果进行初步的排序 (ranking),进一步过滤 (filter) 掉不相关的或低质量的候选项,并将候选集缩小到几十到几百个。
- 排序 (Ranking): 这是最后一个阶段,使用最复杂、最精确的模型对预排序结果进行精细化排序 (fine-grained ranking)。这个阶段会综合考虑查询相关性 (query-relevance)、用户偏好 (user preference)、物品质量等多种因素,生成最终呈现给用户的列表。排序阶段通常注重高准确率 (high precision)。
- 本文中的挑战: 这种多阶段设计导致不同阶段的模型有不同的优化目标,可能导致目标不一致 (misaligned objectives),并且增加了系统维护和推理的复杂性。
3.1.2. 生成式模型 (Generative Models)
- 概念定义: 生成式模型是一类机器学习模型,其目标是学习训练数据的潜在分布,从而能够生成与训练数据相似的新数据。在信息检索和推荐领域,这意味着模型可以直接生成物品的标识符、摘要甚至完整内容,而不是从预定义的集合中检索或排序。
- 与判别式模型的区别:
- 判别式模型 (Discriminative Models): 主要关注在给定输入的情况下,预测输出的条件概率 (conditional probability) ,用于分类、回归等任务。例如,判断一个物品是否与查询相关。
- 生成式模型 (Generative Models): 试图学习数据的联合概率分布 (joint probability distribution)
P(X, Y),或者直接学习生成数据的过程。在搜索和推荐中,这意味着模型可以学习如何“创造”或“合成”出相关的物品。
- 在搜索中的应用: 在搜索中,生成式模型可以用于直接生成文档标识符 (document identifiers)、段落 (passages),甚至直接生成答案。这种方法摆脱了传统基于匹配 (matching-based) 的检索方式对索引的依赖。
- 本文中的应用: UniSearch 的核心思想就是将搜索任务转化为一个生成 (generation) 任务,由一个生成器 (Generator) 直接生成物品的语义标识符 (Semantic ID, SID)。
3.1.3. VQ-VAE (Vector Quantized Variational Autoencoder)
- 概念定义:
VQ-VAE是一种变分自编码器 (Variational Autoencoder, VAE) 的变体,它引入了向量量化 (Vector Quantization) 层来学习离散的潜在表示 (latent representations)。与标准VAE学习连续潜在空间不同,VQ-VAE强制编码器输出的嵌入 (embeddings) 必须“捕捉”到码本 (codebook) 中预定义的离散码向量 (code vectors)。 - 基本结构:
- 编码器 (Encoder): 将输入数据(例如图片、视频特征)映射到连续的潜在空间 (latent space)。
- 向量量化层 (Vector Quantization Layer): 这是
VQ-VAE的核心。它将编码器输出的连续潜在向量,通过最近邻查找 (nearest-neighbor lookup) 的方式,映射到码本中距离最近的码向量。这个码向量的索引就是离散的语义 ID (Semantic ID)。 - 解码器 (Decoder): 将量化后的码向量(或其对应的语义 ID)作为输入,并尝试重建原始输入数据。
- 目的:
- 学习离散表示: 使得模型能够学习到具有语义含义 (semantic meaning) 的离散词元 (tokens),这对于将连续数据(如视频特征)转换为生成式模型可以处理的离散序列至关重要。
- 信息压缩: 通过将高维连续数据压缩为低维离散编码,实现高效的信息存储和检索。
- 避免码本崩溃 (Codebook Collapse):
VQ-VAE通常会包含特殊的损失函数 (loss functions)(如码本损失 (codebook loss) 和承诺损失 (commitment loss))来确保码本中的所有码向量都能被充分利用,避免某些码向量“未被选中”或“崩溃”。
- 在 UniSearch 中的作用:
VQ-VAE被用于Video Encoder中,将视频的多模态特征 (multi-modal features) 学习到的连续潜在嵌入 (latent embeddings) 离散化为紧凑的语义 ID 序列 (Semantic ID sequence),这些序列可以被Search Generator自回归地生成。
3.1.4. Transformer (变换器)
- 概念定义: Transformer 是一种基于自注意力机制 (self-attention mechanism) 的深度学习模型架构,最初为序列到序列 (sequence-to-sequence) 任务(如机器翻译)设计。它彻底改变了自然语言处理 (Natural Language Processing, NLP) 领域,并在其他领域也取得了巨大成功。
- 核心组件:
- 自注意力机制 (Self-Attention): 允许模型在处理序列中的每个元素时,考虑序列中所有其他元素的重要性,从而捕捉长距离依赖 (long-range dependencies)。
- 多头注意力 (Multi-Head Attention): 将自注意力机制并行地执行多次,然后将结果拼接起来,使模型能够从不同的表示子空间 (representation subspaces) 学习信息。
- 位置编码 (Positional Encoding): 由于 Transformer 没有循环结构 (recurrent structure),它通过添加位置编码来保留序列中元素的顺序信息 (order information)。
- 编码器-解码器结构 (Encoder-Decoder Structure):
- 编码器 (Encoder): 负责将输入序列映射到一系列连续的表示 (representations)。通常由多个相同层堆叠而成。
- 解码器 (Decoder): 负责根据编码器的输出和之前生成的序列,自回归地 (autoregressively) 生成输出序列。也由多个相同层堆叠而成,并且解码器中的自注意力层通常会掩盖 (mask) 住未来的信息,以避免信息泄露。
- 在 UniSearch 中的作用:
- Search Generator: 采用编码器-解码器范式 (encoder-decoder paradigm)。编码器 (encoder) 是一个双向 Transformer (bidirectional Transformer),处理用户查询和用户特征;解码器 (decoder) 接收编码器的上下文表示,自回归地 (autoregressively) 生成语义 ID 序列。
- Video Encoder: 是一个单向 Transformer (unidirectional Transformer),用于学习视频的潜在嵌入。
3.1.5. 对比学习 (Contrastive Learning)
- 概念定义: 对比学习是一种自监督学习 (self-supervised learning) 方法,通过将锚点 (anchor) 样本与正样本 (positive samples)(与锚点相似的样本)拉近,同时与负样本 (negative samples)(与锚点不相似的样本)推远,来学习有意义的表示 (representations)。
- 目的: 学习到的表示能够在语义上区分不同的概念,使得相似的样本在嵌入空间 (embedding space) 中距离近,不相似的样本距离远。
- 损失函数: 常用的损失函数包括
InfoNCE loss或triplet loss。 - 在 UniSearch 中的作用: 论文引入了残差对比学习 (Residual Contrastive Learning) 来语义对齐 (semantic alignment) 用户查询和相关视频的潜在表示 (latent representations)。
3.1.6. 强化学习 (Reinforcement Learning, RL)
- 概念定义: 强化学习是一种机器学习范式,其中一个智能体 (agent) 通过与环境 (environment) 交互来学习如何做出决策以最大化其累积奖励 (cumulative reward)。智能体在每个时间步执行动作 (action),环境根据动作返回奖励 (reward) 和新的状态 (state)。
- 核心要素:
- 智能体 (Agent): 学习者和决策者。
- 环境 (Environment): 智能体与之交互的外部系统。
- 状态 (State): 对环境当前情况的描述。
- 动作 (Action): 智能体在给定状态下可以执行的操作。
- 奖励 (Reward): 环境对智能体执行某个动作的反馈信号,可以是积极或消极的。
- 策略 (Policy): 智能体从状态到动作的映射,定义了智能体的行为方式。
- 在 UniSearch 中的作用: 论文利用强化学习框架(具体是搜索偏好优化 (Search Preference Optimization, SPO) 算法)在在线后训练 (post-training) 阶段,根据用户反馈(作为奖励)来优化
UniSearch的生成策略 (generation policy),使其更好地与用户偏好对齐。
3.2. 前人工作
3.2.1. 传统搜索系统
- 多阶段级联架构 (Multi-stage Cascaded Architecture, MCA): 大多数工业搜索系统采用的范式,从召回到预排序再到排序,逐步过滤和精排。
- BERT-based 判别式模型: 现代搜索系统在各阶段采用基于
BERT的判别式模型来捕捉相关性,但各阶段的架构和优化目标不同,例如:- 召回: 双塔架构 + 对比学习,增强语义检索。
- 预排序: 双塔模型 + 后交互 (post-interaction),高效过滤。
- 排序: 单塔全交互 (fully interactive) 架构 + 点式学习 (point-wise learning),强调精度。
- 挑战: 这些方法需要持续的算法设计和投入,且不同组件的目标可能发散,导致整体性能不佳。
3.2.2. 生成式检索与 OneModels
- 生成式检索 (Generative Retrieval): 一种新的信息检索范式,将检索任务公式化为文本生成任务 (text generation task)。直接生成文档标识符、段落或答案,而不是通过匹配 (matching) 来评分候选。
- 文本到文本 (Text-to-text): 如查询自动补全 (query auto-completion),直接生成答案。
- 文档离散化 (Document Discretization): 将文档编码为离散路径,然后生成候选作为新的检索源。
- OneModels: 指的是使用一个生成式模型 (generative model) 来替代传统的多阶段管道。
- OneRec [2, 40]: 在短视频推荐领域,用一个生成式模型取代了整个级联管道。
- OneSug [5]: 用于查询自动补全。
- 其他应用:
POI推荐 [25] 和本地生活服务 [27]。
- 现有 OneModels 的局限: 大多数现有方法依赖于预词元化 (pre-tokenized) 的候选物品,这限制了模型的泛化能力 (generalization) 和对未见过或动态内容的适应能力。它们通常不是真正的端到端,因为物品词元化 (tokenization) 和生成 (generation) 往往是分离的。
3.3. 技术演进
- 从关键字匹配到深度学习: 搜索技术从最初的倒排索引 (inverted indexing) 和关键字匹配,发展到引入深度学习 (deep learning) 模型来理解语义和用户意图。
- 从判别式到生成式: 随着大语言模型 (Large Language Models, LLMs) 的兴起,信息检索和推荐领域开始从传统的判别式匹配 (discriminative matching) 转向生成式范式 (generative paradigm),即直接生成相关内容或标识符。
- 从多阶段到统一架构: 早期深度学习模型通常被集成到传统级联架构的各个阶段。随着生成式模型的成熟,研究开始探索用一个统一的生成式模型替代整个多阶段管道,以简化系统并解决目标不一致问题。
3.4. 差异化分析
UniSearch 与现有工作的核心区别和创新点在于:
- 真正的端到端统一架构: 现有生成式方法通常将物品编码和生成分为两阶段独立训练,导致目标不一致。UniSearch 通过一个统一的训练框架,联合优化 (jointly optimizes) 视频编码器(负责学习物品嵌入 (item embeddings) 和离散化 (discretization))和搜索生成器(负责自回归生成 (autoregressive generation) 物品的语义 ID (semantic IDs))。这确保了语义一致性并消除了任务错位。
- 跨域生成能力: 现有生成式推荐系统多为域内 (intra-domain) 任务(用户/物品嵌入到物品)。UniSearch 专注于搜索这一跨域 (cross-domain) 任务,能够直接从文本查询生成物品,挑战更大。
- 残差对比学习与粗到细策略: UniSearch 引入了残差对比学习 (Residual Contrastive Learning),结合粗到细 (coarse-to-fine) 策略来增强语义对齐,并解决词元崩溃 (token-collapsing) 问题,这在现有生成式方法中不常见。
- VQA-VAE 实时码本更新: UniSearch 使用
VQ-VAE进行离散化 (discretization),其码本 (codebook) 可以在训练过程中联合更新 (jointly updated),避免了现有方法中离线聚类 (offline clustering) 带来的不一致性。 - 在线偏好优化 (SPO): UniSearch 引入了搜索偏好优化 (Search Preference Optimization, SPO),通过在线强化学习 (RL),结合奖励模型 (reward model) 和真实用户反馈进行后训练 (post-training),进一步将生成结果与用户偏好对齐,这是许多现有
OneModels所欠缺的。 - 大规模工业部署与验证: UniSearch 不仅提出了理论方法,更在快手的大规模生产环境中成功部署,并通过在线 A/B 测试验证了其在直播和短视频搜索场景下的显著性能提升,包括对长尾查询 (long-tail queries) 和新用户 (new users) 的有效性。
4. 方法论
4.1. 方法原理
UniSearch 的核心原理是将传统的搜索级联管道替换为一个统一的生成式架构。它将搜索任务重新定义为:给定用户查询和用户特征,模型能够自回归地 (autoregressively) 生成与查询高度相关的视频语义标识符 (Semantic Identifiers, SIDs) 序列。为了实现这一目标,UniSearch 提出了一种联合优化 (joint optimization) 策略,同步训练视频编码器 (Video Encoder)(负责学习物品表示并将其离散化 (discretize) 为 SID)和搜索生成器 (Search Generator)(负责从查询生成 SID 序列)。此外,通过搜索偏好优化 (Search Preference Optimization, SPO) 在线后训练 (post-training),进一步使生成结果与用户偏好对齐。
4.2. 核心方法详解
4.2.1. UniSearch 架构
UniSearch 由两个主要组件构成:Search Generator 和 Video Encoder。这两个组件在单个框架内协同工作,实现训练和推理。
4.2.1.1. Search Generator (搜索生成器)
- 功能: 负责将用户查询和用户特征转化为相关视频的语义标识符序列。
- 架构: 采用编码器-解码器 (encoder-decoder) 生成范式。
- 编码器 (Encoder): 是一个双向 Transformer (bidirectional Transformer)。
- 输入: 用户查询文本 (
query text) 和辅助用户特征 (auxiliary user features),例如表示用户历史行为的GSU序列。 - 特殊
token: 在输入序列前添加一个特殊的 token。 - 输出: token 对应的表示作为全局查询嵌入 (global query embedding) ,它概括了当前搜索请求的意图。
- 输入: 用户查询文本 (
- 解码器 (Decoder): 接收来自编码器的上下文查询表示 (contextualized query representation) 。
- 操作: 自回归地 (autoregressively) 生成一系列语义标识符 (Semantic Identifiers, SID),这些
SID对应于相关的视频。
- 操作: 自回归地 (autoregressively) 生成一系列语义标识符 (Semantic Identifiers, SID),这些
- 编码器 (Encoder): 是一个双向 Transformer (bidirectional Transformer)。
- 目的: 将自然语言查询有效转换为搜索结果的结构化语义表示。
4.2.1.2. Video Encoder (视频编码器)
- 功能: 学习每个视频物品的潜在嵌入 (latent embeddings) 和语义 ID (semantic IDs)。
- 架构: 是一个单向 Transformer (unidirectional Transformer)。
- 输入: 每个视频通过其文本元数据 (textual metadata)、多模态内容特征 (multi-modal content features) (例如,视觉和音频信息) 和侧边统计特征 (side statistical features) 来表示。这些输入与 个可学习的
token(learnable tokens) 拼接后传入Transformer。 - 输出: 生成一个包含 个潜在嵌入的序列:,这些嵌入捕捉了视频的语义属性。
- 输入: 每个视频通过其文本元数据 (textual metadata)、多模态内容特征 (multi-modal content features) (例如,视觉和音频信息) 和侧边统计特征 (side statistical features) 来表示。这些输入与 个可学习的
- 离散化 (Discretization) 模块: 为了将这些连续嵌入转换为语义标识符,
Video Encoder增加了VQ-VAE模块。-
VQ-VAE 作用: 将潜在嵌入映射到码本空间 (codebook space)。
-
输出: 结果是一个语义
ID(SID) 序列:,它提供了每个视频物品的紧凑且可解释的表示,确保在生成式搜索框架中可以一致地索引和检索物品。下图 (原文 Figure 2) 展示了 UniSearch 的模型架构及其在线部署与后续训练的流程。上半部分展示了搜索生成器和视频编码器的统一预训练,包括
query的输入和不同层次的特征表示;下半部分则描述了 UniSearch 在强化学习训练系统、Trie 服务器和奖励系统中的应用与更新机制。
该图像是示意图,展示了UniSearch的模型架构及其在线部署与后续训练的流程。上半部分展示了搜索生成器和视频编码器的统一预训练,包括query的输入和不同层次的特征表示;下半部分则描述了UniSearch在强化学习训练系统、Trie服务器和奖励系统中的应用与更新机制。
-
4.2.2. 统一预训练 (Unified Pre-training)
为了使 Generator 和 Video Encoder 协同工作,UniSearch 设计了一个统一的预训练框架,同时学习视频编码和查询到视频的生成。与以往分离的生成式推荐方法不同,UniSearch 在一个训练管道 (pipeline) 中优化这两个目标,确保了语义一致性并消除了任务错位。
- 预训练数据: 从大规模搜索日志中采样,每条记录包含:
query(查询),user features(用户特征),candidate video set(候选视频集) ,label set(标签集) 。其中,候选视频集包括了针对查询的已曝光和未曝光的负样本 (negative items),标签集提供了每个候选的分级相关性标注 (graded relevance annotations),反映了查询-视频相关性和视频质量。
4.2.2.1. 残差对比学习用于语义对齐 (Residual Contrastive Learning for Semantic Alignment)
- 目的: 对齐用户查询的语义与相关物品的潜在表示。
- 方法: 引入残差对比学习 (Residual Contrastive Learning)。
- 表示
Generator编码器产生的查询嵌入 (embedding)。 - 表示
Video Encoder编码的第 个候选视频的潜在表示。 - 每个视频的嵌入 在第 步的当前残差 (residual) 会根据所有先前的残差累积信息进行优化,并与查询嵌入 进行对比。
- 表示
- 公式 1:残差对比损失 其中, 表示停止梯度 (stop-gradient) 操作, 是温度参数 (temperature parameter), 是负样本集 (negative sample set)。
- 公式 2:L2 相似度对比损失
其中,相似度函数 采用
L2相似度 ,而不是传统的余弦相似度 (cosine similarity)。这种选择更适合残差累积机制,并保留了嵌入的几何结构 (geometric structure)。 - 作用: 这种残差公式化 (formulation) 鼓励每个
token捕获互补信息 (complementary information),从而减少token间的冗余,更有效地利用码本 (codebook),并缓解离散表示学习 (discrete representation learning) 中常见的token崩溃 (token-collapsing) 问题。
4.2.2.2. 粗到细策略 (Coarse-to-Fine Strategy)
- 目的: 进一步加强语义对齐,模仿传统搜索系统中的级联排序 (cascaded ranking) 过程。
- 方法:
- 第一个残差
token学习一个简单、粗粒度 (coarse-grained) 的匹配任务,确保鲁棒的召回能力 (recall capability),即在大范围上区分相关和不相关项。 - 后续的
token逐步承担更复杂的任务,将表示细化到细粒度排序 (fine-grained ranking) 和个性化 (personalization)。
- 第一个残差
- 实现: 通过逐步增加负样本集 (negative sample set) 的难度来实现这种分阶段学习:
- 对抗简单的批内负样本 (in-batch negatives) 进行训练。
- 后续残差则针对从语义相似但不相关项中采样的更难负样本 (increasingly hard negatives) 进行优化。
- 优势: 这种方法分解了学习任务,使其成为一系列难度递增的子任务 (subtasks),并且由于残差公式的存在,它还防止了
token冗余,更有效地利用了codebook。UniSearch 能够在一个统一框架内同时捕获强大的召回能力和精细的排序能力。
4.2.2.3. 离散化为语义 ID (Discretization into Semantic IDs)
- 目的: 将视频的潜在嵌入离散化为
Generator可以处理的语义 ID。 - 方法: 采用
VQ-VAE[24] 进行离散化。- 与现有方法的区别:
VQ-VAE在训练过程中联合更新码本 (updates the codebook jointly during training),实现了高效的在线学习和推理,避免了以往依赖于平衡 K-means (balanced K-means) 或RQ-Kmeans等后聚类方法 (post-clustering methods) 带来的不一致性。 - 具体过程: 对于每个嵌入 ,
VQ-VAE编码器在可学习的码本 (learnable codebook) 中执行最近邻查找 (nearest-neighbor lookup),以获得量化嵌入 和对应的语义 ID 。 - 重建: 量化后的嵌入 被进一步要求重建原始嵌入 。
- 与现有方法的区别:
- 公式 3:码本损失 (Codebook Loss) 其中, 和 是超参数 (hyperparameters)。这个损失项确保 近似于 。
- SimVQ 策略: 采用
SimVQ策略 [41] 进一步稳定离散化 (discretization) 过程,并避免码本崩溃 (codebook collapse)。
4.2.2.4. 拒绝采样生成训练 (Reject-Sampling Generative Training)
- 目的: 一旦物品被映射为语义 ID,
Generator就被训练以自回归地 (autoregressively) 生成这些序列。 - 方法: 使用下一
token预测 (next-token prediction) 目标和交叉熵损失 (cross-entropy loss)。 - 增强生成质量: 在训练期间采用拒绝采样策略 (reject-sampling strategies):
- 低质量物品(由标签确定)会被过滤掉。
- 不同质量水平物品的损失会相应地重新加权 (reweighted)。
- 公式 4:拒绝采样加权下一
token预测损失 其中, 是由标签 决定的重新加权因子 (re-weight factor)。这确保了Generator在生成搜索结果时,优先考虑高相关性、高质量的物品。
4.2.2.5. 整体损失函数 (Overall Loss Function)
- 目的: 通过上述统一预训练目标,UniSearch 实现了查询-物品语义对齐、物品离散化和高质量序列生成的联合优化。
- 公式 5:整体训练损失 其中, 是用于平衡损失尺度和稳定训练过程的超参数 (hyper-parameters)。
4.2.3. SPO 后训练 (Post-training with SPO)
预训练后,UniSearch 已经能够生成可用的搜索结果。然而,为了进一步提高生成结果的质量并更好地将其与用户偏好对齐,论文引入了一个名为搜索偏好优化 (Search Preference Optimization, SPO) 的在线强化学习框架。
4.2.3.1. 奖励系统 (Reward System)
- 目的: 为
UniSearch生成的候选结果分配奖励分数。 - 方法:
- 系统估计信号: 利用现有的生产级搜索系统 (production search system) 的精细排序模块 (fine-ranking module) 作为奖励系统 (Reward System)。这个模块输入查询、用户上下文和候选视频特征,输出多个预测分数 (predictive scores),涵盖查询-物品相关性、视频质量和预期用户满意度等维度。
- 真实用户反馈: 当视频呈现给用户后,收集用户的真实交互行为 (interaction feedback),例如点击、观看时长、点赞或下载。
- 结合: 最终的奖励分数是系统估计分数和观察到的用户交互的加权组合 (weighted combination)。
- 公式 6:奖励函数 其中, 平衡了系统预测信号和用户行为信号的相对重要性。
4.2.3.2. 搜索偏好优化 (Search Preference Optimization)
- 目的: 根据奖励信号更新
UniSearch的生成策略 (generation policy)。 - 方法: 遵循
GRPO[14] 的思想。- 从在线系统日志中获取给定查询下的 个生成的搜索结果 及其对应的奖励 。其中 。
UniSearch根据查询 和用户上下文 赋予每个结果一个生成概率 。- 相对优势 (Relative Advantage): 通过将每个候选的奖励与其批次的预期奖励进行归一化 (normalizing) 来计算其相对优势。
- 公式 7:相对优势计算 这个公式鼓励模型优先处理比批次平均水平更好的结果,同时抑制较差的结果。
- 公式 8:SPO 优化目标
其中,
- 第一项最大化了由相对优势加权的偏好对齐生成 (preference-aligned generations) 的似然 (likelihood)。这里的 是当前策略, 是一个停止梯度的策略 (no-gradient policy),通常是当前策略的旧版本或平均版本,用于稳定训练。
- 第二项通过
KL散度 对更新后的策略 相对于从预训练获得的参考策略 (reference policy) 进行正则化 (regularization)。 - 系数 控制
KL正则化的强度。
- 作用: 这种公式化 (formulation) 使得 UniSearch 能够将其生成行为 (generation behavior) 与系统估计和用户观察到的偏好对齐,同时保持稳定,避免与预训练模型产生灾难性的偏离。
4.2.4. 推理和部署 (Inference and Deployment)
- Trie 约束 (Trie Constraint): 为了提高推理效率和确保结果的有效性,UniSearch 的生成过程受到一个前缀树 (Trie) 结构的约束,该结构编码了所有有效的语义 ID 序列。
- Trie 服务: 一个专门的
Trie服务维护允许路径的字典 (dictionary),确保UniSearch只生成有效的序列。 - 效率: 在每个解码步骤中,
UniSearch查询Trie服务以检索可行的延续token(continuation tokens),从而消除无效的语义 ID 并显著减少计算开销。 - 大规模优化: 为了扩展到大型视频语料库 (corpora),
Trie通过结合前缀树搜索和二分搜索 (binary search) 进行优化,有效缓解了在海量语义 ID 空间下的内存开销。
- Trie 服务: 一个专门的
- 部署架构: UniSearch 已成功部署在真实世界的工业搜索场景中,其部署架构集成了四个关键组件:
- 强化学习 (RL) 训练系统: 持续通过在线偏好对齐来微调 (fine-tune)
UniSearch,并将更新后的参数同步到推理服务 (inference service)。 - 在线推理系统 (Online Inference System): 服务实时搜索请求,模型使用
TensorRT部署,并通过KV-cache加速,以确保低延迟响应。 - Trie 服务器 (Trie Server): 通过维护有效的语义 ID 路径,提供高效的受限生成 (constrained generation),保证准确性和可扩展性。
- 奖励系统 (Reward System): 通过精细排序分数 (fine-grained ranking scores) 和用户交互信号评估候选结果,并将偏好对齐奖励 (preference-aligned rewards) 反馈给训练系统以指导进一步的训练。
- 强化学习 (RL) 训练系统: 持续通过在线偏好对齐来微调 (fine-tune)
- 效果: 这种端到端设计使得
UniSearch能够实现可扩展和低延迟的推理,同时通过在线学习和偏好优化持续提高搜索质量。
5. 实验设置
5.1. 数据集
为了评估 UniSearch 的有效性,论文构建了基于快手 App 真实搜索日志的大规模训练和测试数据集。
- 直播搜索 (Live Search) 数据集:
- 规模: 约 8000 万用户搜索会话 (sessions)。
- 时间跨度: 2025 年 7 月 9 日至 7 月 23 日。
- 训练集: 7 月 9 日至 7 月 22 日的日志。
- 测试集: 7 月 23 日的日志作为保留测试集 (held-out test set)。
- 用途: 所有在 4.2 和 4.3 节报告的离线实验均在此数据集上进行。
- 短视频搜索 (Short-video Search) 数据集:
- 构建方式: 遵循与直播搜索数据集相同的方法。
- 用途: 用于 4.4 节验证 UniSearch 在直播场景之外的泛化能力 (generalization)。
- 规模差异: 短视频搜索的候选池规模更大,约为十亿视频,这要求模型具有更大的容量来处理显著增加的复杂性。
5.2. 评估指标
论文采用 Recall@300 和 Mean Reciprocal Rank (MRR) 作为评估指标。
5.2.1. Recall@300 (召回率@300)
- 概念定义:
Recall@300评估模型在前 300 个检索结果中找回相关结果的能力。它衡量的是模型对所有实际相关项目的覆盖程度。对于搜索任务,高召回率意味着模型能够尽可能多地找出用户感兴趣的项。 - 数学公式:
- 符号解释:
- : 总样本数(即查询数)。
- : 对于第 个查询,在前 300 个检索结果中真正例 (true positive) 的数量(即既被预测为正例,又被标注为正例的实例数量)。
- : 对于第 个查询,数据集中所有正例 (positive instances) 的总数。
5.2.2. MRR (Mean Reciprocal Rank, 平均倒数排序)
- 概念定义:
MRR评估模型对相关结果的排序能力 (ranking ability)。它衡量的是第一个正确答案出现在排名列表中的位置。如果第一个正确答案排在第一位,MRR值为 1;如果排在第二位,MRR值为 0.5;依此类推。MRR对排名靠前的正确答案给予更高的分数,因此能够反映模型对用户点击行为 (click behavior) 的模拟能力,因为用户通常倾向于点击排名靠前的结果。 - 数学公式:
- 符号解释:
- : 总样本数。
- : 对于第 个样本,真实结果 (ground-truth result) 在排序列表中的位置(排名)。如果列表没有相关结果,则通常认为 为无穷大, 为 0。
5.2.3. 测试集划分
- RK (Ranking) 测试集: 包含搜索系统向用户曝光 (exposed) 的顶部视频。用于评估生成视频与系统偏好 (system preferences) 之间的对齐程度 (alignment)。
- CK (Click) 测试集: 将被点击的物品视为正例 (positives)。用于评估即时用户偏好 (immediate user preferences)。
5.3. 对比基线
论文将 UniSearch 与现有的生成式搜索框架进行了比较。这些基线方法通常不是完全端到端的,而是采用两阶段管道 (pipeline):
-
嵌入模型训练和码本构建: 训练一个嵌入模型 (embedding model),并使用
VQ-VAE[24]、FSQ[16] 或RQ-Kmeans等方法构建码本 (codebook)。 -
生成模型训练: 在词元化 (tokenized) 物品上训练一个生成模型 (generative model)。
具体基线模型包括:
- BERT-6 Layer (Embedding Model) + FSQ (Codebook) + BART-6 Layer (Gen. Model)
- BERT-6 Layer (Embedding Model) + VQ-VAE (Codebook) + BART-6 Layer (Gen. Model)
- BERT-6 Layer (Embedding Model) + RQ-Kmeans (Codebook) + BART-6 Layer (Gen. Model)
- BERT-12 Layer (Embedding Model) + RQ-Kmeans (Codebook) + BART-12 Layer (Gen. Model)
- BERT-24 Layer (Embedding Model) + RQ-Kmeans (Codebook) + BART-24 Layer (Gen. Model) 这些基线代表了不同规模(6层、12层、24层)和不同码本构建策略的现有两阶段生成式方法。
5.4. 实现细节
5.4.1. UniSearch 模型配置
- Search Generator: 基于
BART[9] 架构。 - Video Encoder: 基于
BERT[3] 架构。 - 直播搜索 (Live Search) 配置:
- 候选池: 约 50 万 (500K) 直播会话。
- 模型规模: 轻量级的 6 层
BART和BERT模型,隐藏层大小 (hidden size) 为 768。 - 码本 (Codebook): 物品编码器使用三级码本 (three-level codebook) (),每级包含 512 个条目 (entries)。
- 短视频搜索 (Short-video Search) 配置:
- 候选池: 约十亿 (one billion) 视频。
- 模型规模: 12 层
UniSearch配置。 - 码本: 三级码本,每级包含 8192 个条目。
5.4.2. 训练细节
- 优化器:
Adam优化器。 - 批次大小 (Batch Size): 64。
- 预训练 (Pre-training):
- 初始学习率 (Initial Learning Rate): 。
- 学习率调度 (Learning Rate Schedule): 采用余弦衰减策略 (cosine decay strategy)。
- 在线后训练 (Online Post-training):
- 学习率: 固定学习率为 。
5.4.3. 推理细节
- 搜索策略:
UniSearch采用束搜索 (beam search) 进行推理。 - 束大小 (Beam Size): 256。
- 目的: 在计算效率和探索多样候选物品的能力之间取得平衡,确保在直播和短视频搜索场景下都具有鲁棒的检索性能。
6. 实验结果与分析
6.1. 主要结果分析
6.1.1. UniSearch 与基线的性能比较
论文在直播搜索数据集上进行了广泛实验,将 UniSearch 与现有的生成式搜索框架进行比较。结果如 Table 1 所示。
以下是原文 Table 1 的结果:
| Model | Recall@300(%)↑ | MRR(%)↑ | |||||
| Embed. Model | Codebook | Gen. Model | RK | CK | RK | CK | |
| Baselines | BERT-6 Layer | FSQ | BART-6 Layer | 55.42 | 62.26 | 8.36 | 9.93 |
| BERT-6 Layer | VQ-VAE | BART-6 Layer | 64.83 | 63.67 | 7.98 | 9.50 | |
| BERT-6 Layer | RQ-Kmeans | BART-6 Layer | 65.56 | 64.12 | 9.24 | 14.81 | |
| BERT-12 Layer | RQ-Kmeans | BART-12 Layer | 67.79 | 67.90 | 12.13 | 15.68 | |
| BERT-24 Layer | RQ-Kmeans | BART-24 Layer | 69.05 | 69.27 | 13.84 | 15.73 | |
| UniSearch | UniSearch-6 Layer | 67.45 | 68.17 | 9.65 | 15.36 | ||
| UniSearch-12 Layer | 68.83 | 70.11 | 12.35 | 16.02 | |||
| UniSearch-24 Layer | 69.78 | 72.03 | 14.62 | 16.80 | |||
| UniSearch-6 Layer (w/ Online SPO) | 68.29 | 68.48 | 12.19 | 16.04 | |||
| UniSearch-12 Layer (w/ Online SPO) | 69.53 | 70.25 | 13.56 | 16.89 | |||
分析:
- 统一预训练的优势:
- 在相同模型规模下 (
6-Layer),UniSearch-6 Layer在MRR指标上显著优于所有6-Layer基线(例如,在CK测试集上,UniSearch-6 Layer的MRR为15.36%,而表现最好的BERT-6 Layer + RQ-Kmeans + BART-6 Layer仅为14.81%)。 - 在
Recall@300指标上,UniSearch-6 Layer的表现也接近甚至优于12-Layer基线(例如,在RK测试集上,UniSearch-6 Layer为67.45%,而BERT-12 Layer + RQ-Kmeans + BART-12 Layer为67.79%,非常接近)。 - 这证明了统一训练框架通过消除目标不一致,能够生成更相关的结果,并提高整体生成质量。
- 在相同模型规模下 (
- 可扩展性:
UniSearch-12 Layer和UniSearch-24 Layer在各自规模下,均比同等规模的基线模型有实质性提升。例如,UniSearch-24 Layer在CK测试集上达到了16.80% MRR,显著高于BERT-24 Layer + RQ-Kmeans + BART-24 Layer的15.73% MRR。- 这表明 UniSearch 框架在处理更大容量和复杂性时具有强大的鲁棒性和扩展能力。
- SPO 的效果:
- 引入
Search Preference Optimization (SPO)后,UniSearch模型在Recall@300上有适度提升,但在MRR上有显著提升。 - 例如,
UniSearch-6 Layer经过SPO后,在CK测试集上的MRR从15.36%提升到16.04%;UniSearch-12 Layer经过SPO后,在CK测试集上的MRR从16.02%提升到16.89%。 - 这说明
SPO有效地引导模型生成的结果不仅相关,而且质量更高,更符合用户偏好,因为它鼓励模型优先生成受用户青睐的物品(如热门或高质量视频)。
- 引入
6.2. 消融研究 (Ablation Study)
6.2.1. 粗到细策略与残差对比学习的有效性
为了解统一预训练中各组件的贡献,论文对 UniSearch 的三个变体进行了消融研究,结果如 Table 2 所示。
以下是原文 Table 2 的结果:
| Method | Recall@300(%) ↑ | MRR(%) ↑ | ||
| RK | CK | RK | CK | |
| UniSearch-Plain | 63.54 | 63.15 | 6.55 | 12.16 |
| UniSearch-Plain w/ CF | 64.63 | 65.61 | 7.01 | 12.97 |
| UniSearch-Plain w/ RCL | 66.18 | 65.41 | 8.59 | 14.71 |
| UniSearch | 67.45 | 68.17 | 9.65 | 15.36 |
分析:
- UniSearch-Plain: 作为基础模型,它独立处理每个
token并优化它们以实现相同目标。其在Recall@300和MRR上的性能最弱。这表明独立token处理和缺乏结构化的学习目标限制了性能,可能导致token级别多样性不足。 - UniSearch-Plain w/ CF (Coarse-to-Fine): 引入了粗到细 (coarse-to-fine) 任务。通过从简单到复杂的目标逐步学习,模型获得了更强的排序能力,并在召回和准确性方面取得了显著改进。然而,由于粗细任务的内在关联性,生成的
token表示可能变得相似,导致路径崩溃 (path collapsing) 问题,即多个候选物品对应同一个解码路径,从而降低判别能力 (discriminative power) 和精度。 - UniSearch-Plain w/ RCL (Residual Contrastive Learning): 引入了残差对比学习 (RCL)。
RCL通过残差求和逐步完善表示,鼓励不同的token捕捉互补的语义方面,从而缓解路径崩溃问题,并显著提高了排序指标MRR。例如,在CK测试集上,MRR从12.16%(Plain) 提升到14.71%(Plain w/ RCL)。 - UniSearch (Full Model): 完整模型集成了
CF和RCL。CF提供了从易到难的结构化学习路径,而残差设计则保持了token多样性并防止崩溃。两者结合,实现了更有效的端到端离散化,减少了聚类损失,并最终实现了优于任何单一变体的整体性能。在CK测试集上达到了15.36% MRR,相比Plain w/ RCL的14.71% MRR仍有提升。
6.2.2. 码本深度和大小的影响
码本深度和大小是候选token化的关键超参数 (hyperparameters),直接影响检索质量和系统效率。
下图 (原文 Figure 3) 展示了不同 Codebook 深度 和 Codebook 大小 对 RK 和 CK 测试集的影响。图 (a) 左侧显示在 Recall@300 下的结果,右侧为 MRR 值的变化;图 (b) 同样分别展示了不同 Codebook 大小下的 Recall@300 和 MRR 数据。数据显示出各参数对性能指标的影响趋势。

分析:
- 码本深度 (Codebook Depth):
- 固定码本大小为 512,改变深度 。
- 结果 (Figure 3(a)) 显示,当深度 超过 3 时,性能趋于饱和,
Recall@300和MRR都出现收益递减 (diminishing returns)。 - 解释: 更深的码本虽然可以生成更长的
token序列来捕获更多语义信息,但可能增加候选空间中的分散性 (dispersion),从而削弱泛化能力 (generalization)。此外,深度越大,解码时间越长,推理延迟越高。 - 选择: 综合准确性和效率考虑,选择深度 。
- 码本大小 (Codebook Size):
- 固定深度为 ,改变每层码本的大小 。
- 结果 (Figure 3(b)) 显示出发散趋势 (divergent trends):
Recall@300随着码本大小的增加而下降,而MRR则稳步提高。 - 解释: 更大的码本鼓励更精细的语义划分 (finer semantic partitioning),这增强了排序精度(因为可以更精确地编码物品),但通过碎片化 (fragmenting) 候选覆盖范围,降低了召回率(因为每个语义 ID 变得更具体,可能导致匹配的召回项减少)。
- 选择: 由于实际系统需要平衡召回和精度,选择码本大小 ,这在两个指标上都实现了良好性能。
6.2.3. Trie 约束的影响 (Impact of the Trie Constraint)
生成的路径的有效性(即路径是否对应实际的候选物品)对于系统可靠性至关重要。
下图 (原文 Figure 4) 是一个图表,展示了在RK和CK测试集上使用Trie的UniSearch与不使用Trie的Recall@300、MRR和Valid Rate结果。结果表明,使用Trie的UniSearch在各项指标上均有明显提升。

分析:
- 有效性提升: 引入
Trie后,路径有效率 (path validity) 从51.3%大幅提升至99.8%。这意味着几乎所有生成的语义 ID 序列 (semantic ID sequences) 都对应着真实的候选物品,极大地增强了系统的可靠性,避免了因生成无效结果而导致的空结果集。 - 性能提升:
Trie的引入显著提升了Recall@300和MRR。例如,MRR (CK)从15.36%提升到15.82%。 - 原因:
Trie约束确保模型只在有效路径上进行生成,避免了无效的词元 (tokens) 序列,这不仅提高了可靠性,还通过减少无效搜索空间提升了计算效率 (computational efficiency) 和模型性能。 - 动态更新: 在直播搜索等实时场景中,
Trie的动态更新至关重要,以适应直播流的开始、结束以及内容变化带来的有效标识符变化,从而保证在实际部署中的鲁棒性。
6.3. 在线测试 (Online Testing)
论文在快手的直播和短视频搜索系统上部署 UniSearch,并与现有生产系统 (production system) 进行在线 A/B 测试。
6.3.1. 在线 A/B 测试设置
- 测试时长: 7 天。
- 流量分配: 实验组和对照组随机分配
10%的实际搜索流量。 - 直播搜索场景: 直接用 UniSearch 替换整个多阶段级联架构 (Multi-stage Cascading Architecture, MCA),进行直接比较。
- 短视频搜索场景: 采用渐进式集成策略 (progressive integration strategy)。UniSearch 首先作为排序阶段的新资源 (resource) 引入,同时逐步停用多个召回源 (recall sources)。这确保了在严格的生产约束下评估 UniSearch 的有效性,同时不影响用户体验。
6.3.2. 对业务指标的影响 (Impact on Business Metrics)
论文关注直接反映用户满意度和参与度 (engagement) 的业务指标,结果如 Table 3 所示。
以下是原文 Table 3 的结果:
| UniSearch - Live | TPC ↑ | CTR ↑ | CQR ↓ | FCP ↓ |
| +3.31% | +0.202% | -0.382% | -0.107% | |
| UniSearch - Video | VPD ↑ | PVD ↑ | CQR ↓ | LPC ↑ |
| +0.213% | +0.993% | -0.602% | +0.830% |
分析:
- 直播搜索 (Live Search) 场景:
- TPC (Total Play Counts, 总播放量): 。这是最关键的指标,直接反映搜索规模和平台活力。 是近年来最大的提升。
- CTR (Page Click-Through Rates, 页面点击率): 。表明用户参与度更高。
- CQR (Change Query Rates, 换查率):
-0.382%。换查率降低意味着 UniSearch 生成的结果更令人满意,用户减少了重新构造查询 (reformulations) 的需求。 - PFC (Position of First-Click, 首次点击位置):
-0.107%。首次点击位置更靠前,表明用户更快找到了满意的结果。
- 短视频搜索 (Short-video Search) 场景:
- VPD (Video Playback Duration, 视频播放时长): 。
- PVD (Page View Depth, 页面浏览深度): 。
- CQR (Change Query Rates, 换查率):
-0.602%。 - LPC (Long Play Count per PV, 每 PV 长播放次数): 。
- 这些指标表明 UniSearch 不仅满足了即时搜索需求,还鼓励用户探索更多样化的内容,导致更丰富的兴趣。
6.4. 进一步分析 (Further Analysis)
对在线实验结果(特别是直播搜索)进行了详细分析,探讨了查询频率、用户类型和生成结果多样性的贡献。
下图 (原文 Figure 5) 是一个饼状图,展示了查询频率和用户类型对总播放量(TPC)改善的分析。图中显示,总播放量的改善为 3.31%,同时在查询频率中,65.06% 为长尾频率,34.94% 为高频率,而用户类型则分为新用户(23.02%)、低活跃用户(58.73%)和高活跃用户(18.25%)。

分析:
- 长尾查询的性能提升 (Enhanced Performance on Long-tail Queries):
65.06%的TPC提升是由长尾查询 (long-tail queries) 驱动的,几乎是头部查询 (head queries) 贡献的两倍。- 意义: 长尾查询通常稀疏且语义复杂,传统系统难以处理。UniSearch 凭借统一预训练和改进的语义表示 (semantic representations),能更有效地捕捉细微用户意图 (subtle user intents),并在多样化和低频查询上表现出更强的泛化能力 (generalization)。
- 对新用户的吸引力更强 (Stronger Appeal to New Users):
-
58.73%的TPC增长来自新用户 (new users),占总增长的一半以上。 -
意义: 这表明 UniSearch 生成的结果对不熟悉平台的用户尤其有吸引力。现有用户可能已适应传统
MCA系统的行为模式,而新用户对改进的语义理解和更丰富的搜索结果更敏感。这种新用户参与度的提升对于扩大活跃搜索用户群和维持长期增长至关重要。下图 (原文 Figure 6) 是图表,展示了基于多阶段级联架构(MCA)与UniSearch的搜索结果对比。上方为MCA的搜索结果,显示了多款《王者荣耀》的相关信息;下方为UniSearch的搜索结果,其中包括《英雄联盟》和《英雄之魂》的相关信息,展示了UniSearch在搜索结果多样性和准确性上的提升。

分析:
-
- 更丰富和多样化的结果 (Richer and More Diverse Results):
- 案例分析: 对于查询“MOBA 游戏”,传统
MCA系统排名前三的结果始终是“王者荣耀”,表现出对单一热门物品的强烈偏差 (bias)。 - UniSearch 优势: UniSearch 则能呈现出“英雄联盟”和“英雄之魂”等其他相关游戏。
- 意义: 这种更广泛的覆盖 (coverage) 确保了不同偏好的用户都能找到满意的内容。如果缺乏多样性,那些兴趣未被反映的用户(例如,喜欢“英雄联盟”的用户)可能会放弃平台,降低未来的参与度。通过平衡相关性 (relevance) 和多样性 (diversity),UniSearch 不仅提高了用户满意度,还降低了内容同质化 (content homogenization) 的风险。
- 案例分析: 对于查询“MOBA 游戏”,传统
7. 总结与思考
7.1. 结论总结
本文提出了 UniSearch,一个统一的生成式搜索框架,旨在取代传统的多阶段级联架构 (multi-stage cascaded architecture),实现真正的端到端解决方案。UniSearch 通过联合优化 (jointly optimizing) 一个搜索生成器 (Search Generator) 和一个视频编码器 (Video Encoder),将词元化 (tokenization) 和生成 (generation) 任务整合到单一的训练范式中,从而显著提高了表示学习 (representation learning) 和生成质量 (generation quality)。此外,引入的搜索偏好优化 (Search Preference Optimization, SPO) 机制,利用在线奖励系统 (online reward system) 和用户反馈,使生成结果更好地与用户偏好对齐。
在工业规模数据集上的广泛离线实验以及在快手直播和短视频搜索场景中的在线 A/B 测试都证明了 UniSearch 的强大有效性。其在直播搜索中的部署实现了快手产品历史上近年来最大的指标提升,凸显了其在实际应用中的巨大价值,尤其是在提升长尾查询 (long-tail queries) 表现和新用户 (new users) 参与度方面。UniSearch 成功地提供了一个能够平衡召回 (recall) 和精度 (precision),并提供多样化 (diverse) 搜索结果的统一解决方案。
7.2. 局限性与未来工作
论文作者指出了 UniSearch 当前的局限性,并提出了未来可能的研究方向:
- 当前局限性: UniSearch 目前使用束搜索 (beam search) 以点式 (point-wise) 方式生成候选结果,这可能限制了结果的多样性 (diversity)。虽然消融实验展示了多样性的初步提升,但点式生成本质上难以全局优化列表级的多样性。
- 未来工作方向:
- 增强列表式生成 (Enhancing List-wise Generation): 进一步探索列表式生成 (list-wise generation) 方法,以同时提高搜索结果的多样性和排序准确性。
- 更细粒度的奖励方法 (Finer-grained Reward Methods): 研究更细粒度的奖励机制,以进一步加强生成结果与用户偏好的对齐。
7.3. 个人启发与批判
7.3.1. 个人启发
- 统一生成式范式的潜力: UniSearch 成功将搜索任务从传统的“检索+排序”转变为“生成”,并用一个统一模型取代了复杂的级联架构,这为其他多阶段系统(如推荐、广告)提供了一个有力的通用解决方案范式。其核心在于解决多阶段优化的目标不一致问题。
- 工程与算法的紧密结合: 论文不仅提出了创新的算法,还详细介绍了在工业级部署中面临的挑战(如效率、稳定性、大规模数据处理)及其解决方案(如 Trie 约束、TensorRT 加速、KV-cache),这体现了在实际产品中算法与工程紧密结合的重要性。对于学术研究者而言,这强调了算法在真实世界中落地时需要考虑的工程因素。
- 在线强化学习的重要性:
SPO机制的引入,通过在线 A/B 测试的真实用户反馈来持续优化模型,是模型从离线指标到在线业务指标实现飞跃的关键。这表明对于直接面向用户的系统,纯离线指标的优化可能不足以捕捉真实用户偏好,在线微调 (fine-tuning) 和偏好对齐 (preference alignment) 至关重要。 - 长尾效应和新用户增长: 对
TPC提升的进一步分析揭示了 UniSearch 在长尾查询 (long-tail queries) 和新用户 (new users) 方面的显著效果。这对于产品增长和生态健康至关重要,也提示了在模型设计中不能只关注头部流量,而应考虑如何更好地服务长尾用户。
7.3.2. 批判
- 生成效率与资源消耗的权衡: 尽管论文提到了使用 Trie 约束、TensorRT 和 KV-cache 来提高推理效率,但生成式模型通常比判别式模型在推理时消耗更多的计算资源(例如,多步自回归解码)。在超大规模工业场景下,这种统一模型带来的总资源成本(GPU 算力、内存)相比轻量级召回+重型排序的级联架构,其真实效率优势和成本效益仍需更详细的分析。
- Trie 约束的动态性与维护成本: 论文提到
Trie需要动态更新以适应内容变化。在快手这样的内容平台,视频内容实时上传,直播流动态变化,Trie的实时构建、更新和同步的复杂度和成本可能非常高。如何在大规模、高并发、低延迟的场景下高效维护一个实时更新的Trie,本身就是一个巨大的工程挑战。 - 列表式生成的多样性问题: 论文明确指出了目前使用束搜索进行点式生成在多样性上的局限性。虽然
RCL和CF策略有助于保持token多样性,但生成一个有序且多样性高的结果列表 (ordered and diverse result list) 仍然是一个开放问题。未来的列表式生成工作需要更复杂的解码策略 (decoding strategies) 和目标函数 (objective functions) 来平衡相关性、多样性、新颖性和排序质量。 - 奖励模型偏差:
SPO依赖于一个“可靠”的奖励系统 (Reward System)。虽然论文采用了现有精排模型和用户交互信号的加权组合,但奖励模型本身也可能存在偏差,例如倾向于热门内容或容易被点击的内容,从而可能强化某些既有偏差,影响长尾内容 (long-tail content) 的曝光。如何确保奖励信号的公正性和全面性,避免马太效应 (Matthew effect),是一个持续的挑战。 - 模型可解释性: 生成式模型通常被认为是“黑箱”模型,其内部决策过程不如判别式模型那样容易解释。当 UniSearch 给出意外或不相关的结果时,诊断问题和理解其生成逻辑可能更具挑战性。在对用户体验至关重要的搜索系统中,可解释性有时与性能同样重要。
相似论文推荐
基于向量语义检索推荐的相关论文。