← 全部深度解读
📖 深度解读 · AI SEARCH

ProRetrieval: Learning to Orchestrate Hybrid Search via Executable Program Synthesis

Chengsong You, Zhen Sun, Yunhai Hu, Junwei Zhou, Xiaoyu Cao, Binyu Li, Ziyan Zhao et al. · ECNU / NYU / Matter Innovation / SDUST · arXiv 2608.27017 · 发表 2026-08-27
11 分钟阅读时长 4115字 4.40综合分 第 1 名08-31 AI Search 日报
目录 · 6 节1问题与动机2方法详解3核心技术贡献4实验结果分析5局限与未来方向6工业实践意义
相关 5新颖 5实用 4证据 4时效 5
对社区短文本搜索,复杂查询常同时包含地域、时间、作者等硬约束与模糊语义意图;把过滤、集合逻辑和向量召回显式编译为程序,比固定 RRF 更容易审计和扩展。实践上可先在长尾多约束查询中引入小模型编排器,保留现有倒排与向量索引,通过执行正确性和召回命中率共同约束训练。

1. 问题与动机

真实搜索请求往往不是单纯的语义近邻问题。例如“200 美元以下、Sony 或 Bose、降噪评价好、哑光黑色的无线耳机”同时包含价格与品牌等结构化条件、评论文本中的语义条件、外观条件,以及 AND、OR、NOT 和嵌套组合。传统 BM25 或稠密检索只能在单一表示空间内找近邻;RRF 一类融合方法本质上主要表达加权并集;self-querying retriever 通常只能生成简单键值过滤;Search-R1、DeepRetrieval 等强化学习检索器也主要面向单一后端生成查询。因此,系统设计者仍需在模型之外手工规定“调用哪个索引、如何融合候选、怎样处理否定与嵌套逻辑”。论文把这个缺口定义为检索编排能力不足,而不是单个召回器精度不足。

作者的核心判断是:如果让语言模型输出一个可执行、逻辑完备的检索程序,模型就能按查询动态决定哪些约束下推到关系库,哪些意图交给文本或图像向量索引,再通过集合逻辑组合结果。为检验该判断,作者没有只做自然语言问答,而是建立 Amazon 商品与 Enron 邮件两个混合检索基准,分别覆盖结构化字段、文本和图像。基准含每域 2 万训练查询与 3000 测试查询,复杂度从单条件到 4—5 条件、两层布尔嵌套;这使“程序是否可执行、目标文档是否到达首位”都能被自动验证。

2. 方法详解

ProRetrieval 的输出是一个 JSON DSL,包含 sql 与 retrieval_list 两个字段。sql 使用标准关系条件,并允许出现 <text_k>、<image_k> 占位符;retrieval_list 为每个占位符指定模态、检索字段和需编码的语义短语。执行时,系统先把每条文本或图像请求发往冻结的 Qwen3-Embedding-8B 或 Qwen3-VL-Embedding-8B,并从近邻索引取 Top-20 文档 ID;随后将 ID 集合替换进 SQL 的 IN/NOT IN 子句,最后由数据库原生执行 AND、OR、NOT 与嵌套子查询。占位符把向量计算与关系融合解耦:向量索引、编码器和 SQL 引擎可独立扩缩,而完整程序仍有清晰的可审计语义。

训练样本通过四步自动构造。第一步从 1—5 个叶条件采样查询结构,并按 L1/L2/L3 复杂度形成平面或两层布尔模板;第二步选定金标文档,为结构化、文本、图像叶节点生成正向或否定约束,其中数值条件带比较符,文本短语由 LLM 提取,视觉描述由 VLM 生成;第三步把叶节点编译为金标 DSL 并执行,得到真实命中文档集,同时用仅包含结构条件的“super-query”提前剪掉空结果或过大候选集;第四步由 GPT-4o 把 DSL 改写成自然语言查询。每个实例因此同时拥有自然语言、金标程序和可执行结果。

模型以 Qwen3-4B/8B 为底座,先在自然语言到 DSL 的映射上做 3 个 epoch 的 SFT,学习率 5×10^-5、batch size 64,并按验证损失选 checkpoint。4B 模型随后用 GRPO 或 DAPO 强化学习:每个 prompt 采样 4 条程序,组内奖励标准化为无价值网络的相对优势,再用裁剪策略目标更新;KL 系数为 0.001。GRPO 使用 0.2/0.2 对称裁剪,DAPO 使用 0.1/0.28 非对称裁剪和 token 级归一化,论文发现后者对长 DSL 更稳定。RL batch size 32、学习率 1×10^-6,训练使用两张 96GB RTX PRO 6000。

奖励 R = S_f + S_e + S_r + S_l 分四层:格式分检查 JSON/DSL 是否可解析;执行分检查 SQL 能否编译、占位符能否解析;结果分检查金标文档是否位于第 1 名;长度分惩罚冗长程序。四项名义上等权,但存在前置依赖:格式失败就无法获得后续奖励,执行失败也没有结果奖励,因此自然形成“先合法、再可执行、再命中、最后精简”的层级优化。作者选择 Hit@1 而非 MRR 作为结果奖励,因为每条构造查询锚定单个金标,MRR 的倒数名次会带来更噪的训练信号。

3. 核心技术贡献

第一,论文把混合检索定义为“检索程序合成”,用 SQL 的完整逻辑代数作为骨架,再把文本/图像向量召回作为一等原语。它严格包含固定 RRF、简单 self-querying 和纯 text-to-SQL 的表达空间,并能表示跨模态的否定、析取和嵌套条件。相比把所有信息压进同一向量,这一设计保留了硬约束的确定性和语义条件的容错性。

第二,四层奖励把程序正确性拆成可诊断的阶段信号。单靠 SFT 时,完整三模态 DSL 的电商 Hit@1 只有 0.680,反而低于 SQL+文本的 0.752,说明大动作空间导致多任务干扰;加入 GRPO 后完整 DSL 达到 0.809,比 SFT 提升 12.9 个百分点。图像查询从 0.323 跃升至 0.716,提升 39.3 个百分点,表明 RL 主要补足了示范学习难以覆盖的编排探索。

第三,作者构建了带可执行金标的 Amazon/Enron 混合检索基准,除了 Hit@1、Hit@3、MRR、NDCG@3,还直接度量执行成功率。人工独立构造的 OOD 查询显示 4B GRPO 在电商从 0.809 降至 0.783,DAPO 从 0.808 降至 0.793,域外差距均不超过 3 个百分点,支持模型学到的是可迁移编排模式而非只记住模板。

4. 实验结果分析

主要结果如下(电商/邮件均为 3000 条测试查询):

方法电商 Hit@1电商 NDCG@3邮件 Hit@1邮件 NDCG@3
BM250.5710.5310.7310.631
BGE-Reranker0.6180.5760.8360.733
RankGPT0.7680.6980.8880.789
GPT-5.5 生成 DSL0.6930.6600.8550.822
4B SFT0.6800.6510.8910.863
4B GRPO0.8090.7720.9060.878
4B DAPO0.8080.7700.9090.880
8B SFT0.8200.7820.8200.782

电商上 8B SFT 的 Hit@1 为 0.820,比 BGE-Reranker 高 20.2 个百分点,比 RankGPT 高 5.2 个百分点;邮件上 4B DAPO 为 0.909,比 GPT-5.5 高 5.4 个百分点。4B GRPO 相比 4B SFT 的 12.9 点提升尤其关键,其 bootstrap 95% 置信区间为 [0.795, 0.823],与 SFT 的 [0.663, 0.697] 不重叠。GRPO 与 DAPO 峰值接近,但 GRPO 峰值后震荡,需要挑 checkpoint;DAPO 更稳定,因此作者推荐 4B DAPO 作为效果与稳定性的折中。

动作空间消融揭示了收益来源:SQL-only Hit@1 为 0.650,SQL+text 为 0.752,完整 DSL 的 SFT 却降到 0.680;完整 DSL 经 GRPO 才升至 0.809。这不是图像无用,而是 4B 模型在模仿学习下难以同时掌握三条路径。按模态看,BGE-Reranker 在结构化查询仅 0.310、图像为 0.819;SQL-R1 则结构化 0.866、图像仅 0.048。4B GRPO 在结构化、文本、图像分别达到 0.843、0.690、0.716,是唯一没有灾难性模态盲点的方案。

训练后模型的 DSL 执行成功率超过 99%,残余错误主要是品牌名中撇号未转义;这可以用参数化 SQL 或后处理基本消除。作者也指出剩余性能瓶颈已经从格式合规转移到实际召回质量。推理在单张 RTX 4090 上端到端约 50ms,其中约 80% 花在向量检索,占位符替换和 K=20 候选集上的 SQL 执行各低于 1ms,因此编排层本身不是主要延迟来源。

5. 局限与未来方向

作者明确列出九类限制。DSL 依赖预定义 schema,无法直接适应无 schema 或频繁演化的语料;训练只覆盖最多两层逻辑嵌套;实验仅含电商和邮件两个领域,语料规模也只有 3000 商品与 5000 邮件,百万级集合上的候选集合组合和延迟尚未验证。当前系统每个查询只生成一次程序,不能根据中间结果多轮修正;图像效果受底层多模态 embedding 上限制约;RL 成本使论文没有报告跨随机种子方差。GPT-4o 负责查询口语化,可能引入风格偏差;系统也缺少 DSL 失败时自动退回普通向量召回的生产级兜底。

此外,论文测试集合的结构化条件比例较高,且由可执行模板反向生成自然语言,真实 UGC 查询中的省略、错别字、隐含约束和字段歧义可能更复杂。Hit@1 奖励适合单金标构造任务,却未直接刻画多相关结果、业务价值或结果多样性。后续应在真实日志上评估多标签 nDCG/CTR,并考察 schema 变化、索引新鲜度与 SQL 注入安全;生产实现也必须使用受限 AST 和参数化执行,不能直接运行模型输出的任意 SQL。

6. 工业实践意义

对社区 UGC 搜索,最值得借鉴的不是立刻用 RL 替换现有召回,而是把复杂 Query 拆成“确定性字段条件 + 模糊语义条件 + 集合逻辑”。例如“上周上海用户写的、讨论 iPhone 但不要广告的体验帖”可把时间、地域、内容类型下推到结构化索引,把“使用体验”交给文本向量检索,把“不要广告”表达为 NOT 集合;现有倒排、向量库与关系/列式存储都可保留。第一阶段可用规则或 SFT 生成受限 DSL,并将执行率、空结果率、硬条件违例率和 nDCG 分开监控。

落地时应建立严格的执行沙箱:模型只生成白名单字段、操作符和检索原语组成的 AST,服务端完成转义、参数化与超时控制;若解析或执行失败,自动回退到现有 BM25+向量融合。向量召回占论文延迟的约 80%,因此优化重点仍应放在 embedding 缓存、ANN 索引和候选 K,而不是占位符替换。论文 K=20、SQL 低于 1ms 的结论不能直接外推到百万候选,应在真实分片、过滤选择率与高并发下重测。

训练方面,可先从搜索日志中抽取可验证的复杂查询,利用字段过滤结果和人工相关性标签生成金标程序;若 SFT 在多模态路径间出现干扰,再引入 DAPO,而非一开始承担 RL 成本。奖励也应从论文的格式/执行/Hit@1/长度扩展为格式合法、零结果惩罚、硬约束满足、Top-K nDCG、延迟和业务安全等多目标。论文没有线上 A/B 数据,因此其 0.809 Hit@1 只能证明受控基准上的可行性;真正上线前应在长尾多约束流量灰度,确认 CTR、改写率、零结果率与 P95 延迟同时改善。

← 全部深度解读 出现于报告:2026-08-31 · AI Search #1 (4.40) 原文 ↗