4 实验

本文为论文《Search-o1:让推理模型学会边思考边检索》「中文全文翻译」板块的对应章节,与「论文原文」板块同一章节一一对应,层级保持一致。

4.1 任务与数据集

本实验中使用的评估包括以下两类:

挑战性推理任务: (1) GPQA [52] 是博士级科学选择题问答数据集。问题由物理、化学和生物领域的专家编写。在我们的主要实验中,我们使用包含 198 个问题的最高质量钻石集,并在表 2 中使用包含 546 个问题的更全面扩展集,以与人类专家的表现进行比较。 (2) 数学基准包括 MATH500 [38]、AMC2023 11 1

https://huggingface.co/datasets/AI-MO/aimo-validation-amc,以及 AIME2024 22 2

https://huggingface.co/datasets/AI-MO/aimo-validation-aime。MATH500 包含 MATH 测试集 [16] 的 500 个问题。AMC2023 和 AIME2024 是中学数学竞赛,涵盖算术、代数、几何等,分别包含 40 和 30 个问题。在这三个数据集中,MATH500 和 AMC 相对简单,而 AIME 更具挑战性。 (3) LiveCodeBench [23] 是用于评估 LLM 编码能力的基准,包含简单、中等和困难难度的问题。它从竞技平台收集最近发布的编程问题以避免数据污染。我们使用 2024 年 8 月至 11 月的问题,共 112 个问题。

开放域问答任务: (1) 单跳问答数据集:Natural Questions (NQ) [29] 包含来自真实 Google 搜索查询、答案来自维基百科文章的问题。TriviaQA [28] 是一个大规模数据集,包含来自趣味网站和竞赛的问题,具有复杂的实体关系。 (2) 多跳问答数据集:HotpotQA [68] 是第一个需要跨多个维基百科段落进行推理的大规模数据集。2WikiMultihopQA (2WIKI) [18] 为多跳问题提供了明确的推理路径。MuSiQue [55] 从五个现有单跳数据集构建了 2-4 跳问题。Bamboogle [47] 收集了 Google 回答错误的复杂问题,以评估模型在各个领域中的组合推理能力。

4.2 基线方法

我们将本方法与以下基线方法进行评估:

直接推理:这些方法利用模型的内部知识而不进行检索。开源模型包括 Qwen2.5-32B-Instruct [50]、Qwen2.5-Coder-32B-Instruct [20]、QwQ-32B-Preview [54]、Qwen2.5-72B-Instruct [50] 和 Llama3.3-70B-Instruct [13]。闭源非专有模型包括 DeepSeek-R1-Lite-Preview [7]、OpenAI GPT-4o [21] 和 o1-preview [22]。开源模型的结果基于我们自己的实现,而闭源模型的结果源自其官方发布。

检索增强推理:这些方法检索外部信息以增强推理过程。我们考虑两种检索增强方法: (1) 标准 RAG:为原始问题检索 top-10 个文档,并将它们与问题一起输入模型进行推理和答案生成。 (2) RAG 代理(RAgent):允许模型决定何时生成检索查询,详情见第 3.3 节。为管理检索文档的长度,受 ReAct [70] 启发,我们在推理过程中先检索 top-10 个片段。模型随后在必要时决定获取哪些 URL 的完整文档。

4.3 实现细节

作为 Search-o1 的骨干大推理模型,我们使用开源的 QwQ-32B-Preview [54]。在生成设置方面,所有模型均采用最大 32,768 个 token、temperature 0.7、top_p 0.8、top_k 20 以及重复惩罚 1.05。在检索方面,我们使用 Bing Web Search API,将区域设为 US-EN,并将检索到的 top-$k$ 文档数设为 10。我们使用 Jina Reader API 获取给定 URL 的网页内容。对于所有基于检索的方法,遵循 [52],我们应用一种回退策略,即在未提供最终答案时,使用直接推理的结果。对于未专门针对 o1 类推理训练的基线模型,我们应用思维链(CoT) [59] 提示词在生成答案前进行推理。所有模型的详细指令见附录 A。所有实验均在八块 NVIDIA A800-80GB GPU 上进行。

表 1:挑战性推理任务的主要结果,包括博士级科学问答、数学与代码基准。所有任务均报告 Pass@1 指标。对于 32B 参数模型,最佳结果以粗体显示,第二佳结果加下划线。较大或非专有模型的结果以灰色显示供参考。符号 “†” 表示其官方发布的结果。

4.4 挑战性推理任务上的结果

主要结果。

表 1 展示了 Search-o1 在复杂推理任务上的表现,主要结果如下:

  • 1.

在无检索与检索增强两种设置下,大推理模型 QwQ-32B-Preview 始终展现出优于传统指令微调 LLM 的性能。QwQ 模型在 32B 参数下甚至在直接推理设置中优于 Qwen2.5-72B 与 Llama3.3-70B 等更大的 LLM,证明了 o1 类长 CoT 方法在复杂推理中的有效性。

  • 2.

RAgent-QwQ-32B 在大多数任务中超越了基于标准 RAG 的模型与直接推理 QwQ-32B,这得益于其代理式检索机制,能够在每个推理步骤自主检索补充推理所需的知识。此外,我们发现非推理模型 Qwen2.5-32B 使用代理式 RAG 在 GPQA 上与标准 RAG 表现相似,甚至在数学与代码任务中表现下降。这表明普通 LLM 无法有效地将检索作为工具来解决复杂推理任务。

  • 3.

我们的 Search-o1 在大多数任务中进一步优于 RAgent-QwQ-32B,证明了我们 Reason-in-Documents 策略的有效性,该策略在将外部知识整合进来的同时,确保不影响原始推理的连贯性。具体而言,在五个数据集的平均表现上,Search-o1 分别超越 RAgent-QwQ-32B 与 QwQ-32B 4.7% 与 3.1%,并显著优于非推理模型 Qwen2.5-32B 与 Llama3.3-70B 44.7% 与 39.3%。

被检索文档数量的缩放分析。

表 2:GPQA 扩展集 [52] 上与人类专家的性能对比。

在此实验中,我们分析了检索文档数量对性能的影响,如图 3 所示。结果表明,Search-o1 能够有效利用越来越多的检索文档,从而改善对复杂推理任务的处理。我们还观察到,就总体性能而言,即使只检索一份文档也能超越使用十份文档的直接推理与标准 RAG 模型,展现了代理式检索与 Reason-in-Documents 策略的有效性。

图

图 3:推理中使用的 top-k 检索文档的缩放分析。所有结果均基于 QwQ-32B-Preview 模型。

与人类专家的对比。

我们在 GPQA 扩展集中,将 Search-o1 的表现与不同领域的人类专家进行比较。表 2 展示了来自不同学科的人类专家评估,包括物理、化学与生物。我们的 Search-o1 模型在总体表现(57.9)以及物理(68.7)和生物(69.5)两个子领域中均优于人类专家,展现了处理复杂推理任务的卓越能力。虽然 Search-o1 在化学子领域略逊于化学家(40.7 vs. 72.6),但总体上仍具有竞争优势,尤其在多个领域的综合表现方面尤为明显。这突显了 Search-o1 在利用文档检索与推理来实现与专家水平相当或超过专家水平的跨领域性能方面的有效性。

4.5 开放域问答任务上的结果

除了 LRM 擅长的推理任务外,我们还探索了 Search-o1 在开放域问答任务上的表现。表 3 展示了总体结果。关键观察如下:

  • 1.

在无检索的直接推理下,推理模型 QwQ-32B 的表现总体上与非推理 LLM Qwen2.5-32B 相似,在所有 QA 数据集的平均 EM 上略有下降(31.3 vs. 30.7)。这表明 LRM 在开放域问答任务上的表现不如其在推理任务上的表现。

  • 2.

在采用检索增强推理时,检索显著提升了推理模型与非推理模型在所有任务上的性能,表明模型在这些任务上存在知识缺口。此外,对于 QwQ-32B 模型,代理式 RAG 在多跳 QA 任务上的平均 EM 比标准 RAG 提升 23.2%,证明了我们代理式 RAG 策略在知识型多跳问答中的有效性。然而,我们也观察到,单跳任务上没有显著的性能变化(平均 EM 47.8 vs. 47.6),因为这些问题只需要来自单个知识点的信息,无需多次检索。这也验证了代理式检索机制能更好地释放 LRM 在更复杂、更具挑战性推理任务中的潜力。

  • 3.

对于我们的 Search-o1,我们发现它在多跳任务上普遍优于所有基线。具体而言,在平均 EM 指标上,我们的 Search-o1 分别超越 RAG-QwQ-32B 与 RAgent-QwQ-32B 29.6% 与 5.3%,证明了我们 Reason-in-Documents 策略在复杂 QA 任务中的有效性。这进一步强调了保持外部知识与推理逻辑链一致性的重要性。

表 3:开放域问答任务的性能对比,包括单跳问答与多跳问答数据集。对于 32B 参数模型,最佳结果以粗体显示,第二佳结果加下划线。较大模型的结果以灰色显示供参考。