如何评价阿里开源的大模型搜索引擎ZeroSearch?
作者:卡卷网发布时间:2025-05-14 20:45浏览数量:21次评论数量:0次
ZeroSearch:让 LLM 扮演搜索引擎
来自阿里巴巴通义实验室的这篇论文介绍了一种名为「ZEROSEARCH」的新颖强化学习(RL)框架,它的核心目标是训练大型语言模型(LLMs)更有效地使用搜索工具来获取信息,从而提高其回答问题和推理的能力。
- 传统方法通常需要模型在训练时与真实的搜索引擎频繁交互,但这既昂贵又不可控,搜索结果质量参差不齐。
- ZEROSEARCH 的巧妙之处在于,它用另一个经过特殊微调的 LLM 来模拟搜索引擎的行为。这个「模拟搜索引擎」不仅能生成相关的文档,还能按需生成「干扰」文档。通过一种「课程学习」策略,训练难度逐渐增加(从提供高质量信息到掺入更多干扰信息),逐步引导模型学会在复杂的信息环境中进行有效搜索和推理。
- 最重要的是,这一切都不需要调用真实的搜索引擎 API,大大降低了成本和不确定性。
论文:[2505.04588] ZeroSearch: Incentivize the Search Capability of LLMs without Searching
一、LLM 的缺陷与现有解决方案
LLM 基础能力很强,但也有「硬伤」:
- 知识「保鲜期」有限:它们的知识大多来自于训练数据,一旦训练完成,知识就被「冻结」了。对于世界上新发生的事情,它们往往一无所知。
- 爱「一本正经地胡说八道」:有时它们会自信满满地编造一些不存在的事实,也就是所谓的「幻觉」(Hallucination)。
1.1 RAG
检索增强生成(Retrieval-Augmented Generation, RAG) 是常见的手段之一,你可以把 RAG 想象成给 LLM 配备了一个「智能搜索助手」:
- 当 LLM 遇到一个问题时,它不再仅仅依赖自己「脑子里」的知识。
- 它会先让「搜索助手」根据问题去外部知识库(比如维基百科、或者整个互联网)搜索相关信息。
- 然后,LLM 会结合这些「新鲜出炉」的检索信息和原始问题,生成一个更准确、更可靠的答案。
RAG 效果显著,大大提高了 LLM 回答事实类问题的准确性。但是,一个新的问题又来了:如何让 LLM 学会 何时去搜索、搜索什么内容、以及如何利用搜索到的信息呢? 简单的 RAG 流程往往比较固定,不够智能。我们希望 LLM 能像一个真正的研究员一样,根据问题的复杂度和已有信息,动态地决定自己的信息获取策略。
1.2 RL
另一个常见手段是 强化学习(Reinforcement Learning, RL)。
RL 的核心思想是「试错学习」。想象一下训练一只小狗:它做出正确的动作(比如「坐下」),你就给它奖励(零食);做出错误的动作,就没有奖励。久而久之,小狗就学会了为了获得奖励而做出正确的动作。
把这个思想用到 LLM 身上:
- 智能体(Agent):就是我们要训练的 LLM。
- 动作(Action):LLM 可以选择思考、生成搜索查询、或者给出最终答案。
- 环境(Environment):包含了问题、以及与之交互的搜索引擎。
- 奖励(Reward):根据 LLM 最终给出的答案是否正确来给予评分(奖励)。
通过 RL,LLM 的目标是学习一套最优的「策略」(Policy),知道在什么情况下应该执行什么动作(是该思考一下?还是去搜点资料?搜什么关键词?信息够了没?),从而最大化最终获得的奖励(也就是答对问题的概率)。
一些研究已经证明,RL 确实能显著提升 LLM 的推理和决策能力。于是,研究者们开始尝试用 RL 来训练 LLM 与真实搜索引擎(比如 Google)交互,学习搜索策略。
二、RL + 真实搜索的两大难题
但直接让 LLM 在 RL 训练中与真实搜索引擎交互,会遇到两个非常棘手的问题:
2.1 文档质量不可控
真实搜索引擎返回的结果质量参差不齐。有时是高质量的百科页面,有时是充满广告的营销文,有时甚至是错误信息或低质量论坛帖子。
这种「时好时坏」的反馈对于 RL 训练来说是灾难性的。模型很难从中稳定地学习到正确的策略。想象一下,你在学车,教练(搜索引擎)有时给你正确的指示,有时却让你开到沟里去,你肯定学得一头雾水。
2.2 高昂的 API 成本
RL 训练需要海量的「试错」(称为 Rollout)。模型可能需要与环境交互数十万甚至数百万次才能学好。
如果每次交互都调用商业搜索引擎(如 Google Search API)的接口,费用会像雪球一样越滚越大,达到惊人的程度。这对于研究机构和开发者来说是难以承受的,极大地限制了研究的规模和应用的可行性。论文估算,一次典型的训练(约 6.4 万次搜索)使用 Google API 可能花费近 600 美元。
核心困境: 我们需要一个既能模拟真实搜索环境的复杂性,又能保证训练过程稳定、可控,并且成本低廉的解决方案。
三、ZEROSEARCH:让 LLM 模拟搜索引擎
ZEROSEARCH 的核心思想简单而大胆:既然 LLM 这么擅长生成文本,为什么不用一个 LLM 来 「模拟」搜索引擎的行为呢?
这就像与其花大价钱去真实赛道上练车(还可能遇到各种危险路况),不如先在一个高度逼真的驾驶模拟器里练习。
这个「模拟搜索引擎」(我们称之为 Simulation LLM)需要具备两个关键能力:
- 生成风格逼真的文档:它生成的文本要看起来像真实搜索引擎返回的摘要片段。
- 按需生成不同质量的文档:它不仅能生成对回答问题有帮助的「**有用文档 (useful documents)」,还要能生成干扰性的「噪音文档 (noisy documents)**」。
如何实现呢?ZEROSEARCH 采用了监督微调(Supervised Fine-Tuning, SFT) 的方法。
3.1 训练「模拟搜索引擎」
- 步骤一:数据收集:首先,研究人员让一个(通常是较强的)LLM 与真实搜索引擎进行大量交互,收集它解决各种问题的完整轨迹,包括它生成的查询、搜索引擎返回的文档、以及最终的答案是否正确。
- 步骤二:数据标注:
- 如果一个交互轨迹最终得到了正确的答案,那么这个轨迹中搜索引擎返回的文档就被认为是「有用的 (useful)」。
- 如果最终答案错误,那么返回的文档就被认为是「有噪音的 (noisy)」。
- 步骤三:SFT 训练:然后,他们用这些标注好的数据来微调一个中等大小的 LLM(比如论文中用到的 Qwen-2.5 3B, 7B, 14B)。训练时使用的 Prompt 模板是精心设计的:
You are the Google search engine. Given a query, you need to generate five [useful / noisy] documents for the query.
The user is trying to answer the question: [question] whose answer is [ground truth].
Each document should contain about 30 words, and these documents should contain [useful / noisy] information.
Query: [query]
[Useful / Noisy] Output:
关键点:
- 模板明确指示模型扮演「谷歌搜索引擎」。
- 通过
[useful / noisy]
这个占位符,模型在训练时就能学到将这个关键词与对应质量的文档模式关联起来。 - 模板还提供了原始问题
[question]
和真实答案[ground truth]
作为上下文,帮助模拟 LLM 生成更相关(或更有迷惑性)的内容。
效果:经过 SFT 后,这个 Simulation LLM 就成了一个「听话」的模拟器。你只需要在调用它时,在 Prompt 里指定需要 useful
还是 noisy
文档,它就能生成相应质量的模拟搜索结果。
这样一来,两大难题就被巧妙地化解了:
- 成本问题 : 不再需要调用昂贵的外部 API,只需要运行这个(相对较小的)Simulation LLM。
- 质量不可控问题: 现在研究人员可以精确控制模拟器返回文档的质量,甚至可以控制噪音的比例。
3.2 训练「搜索智能体」:ZEROSEARCH 的 RL 框架
有了这个强大的「模拟搜索引擎」,ZEROSEARCH 就可以搭建起它的 RL 训练框架了:
整个过程大致如下:
- 策略模型(Policy LLM,
):这是我们真正想要训练的、具备强大搜索能力的 LLM。
- 交互:
接收一个问题,开始思考(遵循论文表 1 的模板,在
<think>
标签内)。如果觉得需要信息,它会生成一个搜索查询(在<search>
标签内)。 - 模拟搜索:这个查询被发送给模拟 LLM(Simulation LLM,
)。
根据当前的训练策略(后面会讲到的「课程学习」)生成相应质量的模拟文档。
- 信息反馈:模拟文档被包装在
<information>
标签内,返回给。
- 循环或回答:
结合新信息继续思考,可能进行新一轮搜索,直到它觉得信息足够了,就在
<answer>
标签内生成最终答案。 - 奖励计算:将
生成的答案与标准答案进行比较,计算一个奖励分数(使用 F1 Score)。
- 模型更新:使用 RL 算法(如 PPO 或 GRPO)根据奖励信号来更新
的参数,使其倾向于做出能获得更高奖励的行为。
优化目标: 形式化来说,RL 的目标是找到最优的策略 ,最大化期望累积奖励,同时通过 KL 散度项防止模型偏离原始模型太远:
其中, 是输入问题,
是整个交互轨迹,
是固定的模拟 LLM,
是奖励函数,
是参考模型(通常是
的初始版本),
是控制 KL 正则化强度的超参数。
3.3 额外设计一: 课程学习 (Curriculum Learning)
既然能控制文档质量,那就可以设计一个「从易到难」的训练课程。
- 初期:让 Simulation LLM 主要生成「有用 (useful)」文档,降低噪音比例。这让 Policy LLM 可以先专注于学习基本的交互流程、如何生成有效的搜索查询。就像给新手司机提供空旷、简单的练习场地。
- 后期:随着训练的进行,逐渐提高生成「噪音 (noisy)」文档的概率。这迫使 Policy LLM 必须提升辨别信息真伪、在干扰中寻找关键线索的推理能力。就像逐渐在练习场地上增加障碍物和其他车辆。
论文中使用了一个公式来控制第 步训练时产生噪音文档的概率
:
其中 是初始噪音概率(低),
是最终噪音概率(高),
是总训练步数,
控制增长曲线(默认 4,表示先慢后快)。
这种循序渐进的方式,使得训练过程更稳定,效果也更好。
3.4 额外设计二: 损失掩码 (Loss Masking)
在 RL 更新模型参数时,计算损失函数是关键一步。一个细节是:Policy LLM 生成的轨迹 中,既包含它自己生成的 Token(思考内容、查询词、最终答案),也包含 Simulation LLM 生成的文档 Token(
<information>
里的内容)。
ZEROSEARCH 提出,在计算损失时,应该只考虑 Policy LLM 自己生成的 Token,而忽略(Mask 掉) Simulation LLM 生成的文档 Token。
为什么? 因为文档内容是「外部环境」提供的,不是 Policy LLM 能直接控制的。如果把这部分也纳入损失计算,就相当于让模型为它无法控制的内容负责,这会引入不必要的噪音,干扰学习过程,导致训练不稳定。
这就老师批改学生的论文,只会评价学生自己写的分析和论证部分(Policy LLM 的输出),而不会去评价学生引用的文献原文写得好不好(Simulation LLM 的输出)。
论文的消融实验证明,使用损失掩码确实能显著提升性能和训练稳定性。
四、实验结果
4.1 实验设定
- 数据集:涵盖了单跳、多跳等多种问答任务(NQ, TriviaQA, HotpotQA 等 7 个数据集)。
- 模型:测试了不同模型家族(Qwen-2.5, LLaMA-3.2)和大小(3B, 7B)。
- 基线对比:与多种方法进行了比较,包括不用 RL 的 RAG 方法,以及使用 RL 但连接真实 Google 搜索的 Search-R1。
- 模拟器:使用了 SFT 后的 Qwen-2.5 3B, 7B, 14B 作为 Simulation LLM。
4.2 核心发现
- 全面超越基线:ZEROSEARCH 在绝大多数模型和数据集上都取得了最佳性能,显著优于传统的 RAG 方法和不带搜索的 RL 方法 (R1)。
- 模拟器胜过真实搜索: 最令人惊讶的是,使用 ZEROSEARCH(特别是用 14B 模型做模拟器时)训练出的 Policy LLM,其性能普遍优于使用真实 Google 搜索训练的 Search-R1。
- 这可能是因为 ZEROSEARCH 提供的训练环境更稳定、难度可控。课程学习机制让模型能更好地掌握搜索策略。相比之下,真实搜索结果的质量波动可能干扰了 Search-R1 的学习过程。
- 泛化性强:无论 Policy LLM 是基础版(Base)还是指令微调版(Instruct),无论用 Qwen 还是 LLaMA,ZEROSEARCH 都表现良好。而且,随着 Policy LLM 和 Simulation LLM 规模的增大,性能也随之提升,显示出良好的可扩展性。
- 成本优势巨大:使用 ZEROSEARCH(即使是 14B 模拟器需要 4x A100 GPU)的成本远低于使用 Google API 的成本(数十美元 vs. 近六百美元)。
4.3 其他重要分析
- SFT 至关重要:实验表明,经过 SFT 的模拟 LLM 效果远好于仅靠 Prompt 的模拟 LLM。
- 模拟器越大越好:14B 模拟器 > 7B 模拟器 ≈ Google > 3B 模拟器。
- 训练曲线更平滑:与 Search-R1 相比,ZEROSEARCH 的奖励曲线上升更稳定,波动更小。
五、贡献与局限
5.1 主要贡献
- 解决了实际痛点:为在 LLM 中通过 RL 训练复杂工具(如搜索)使用能力提供了一条低成本、高效率、高稳定性的路径。
- 范式创新:提出了「模型模拟环境」进行 RL 训练的新思路。既然 LLM 能模拟世界知识,那么让它模拟与世界的交互(如搜索)也是可行的。
- 关键技术贡献:
- 基于 SFT 的可控质量文档生成技术。
- 有效的课程学习策略。
- 稳定的 RL 训练框架(含损失掩码)。
- 未来潜力:
- 可以扩展到训练 LLM 使用其他工具(计算器、代码解释器、数据库查询等)。
- 可以探索更逼真、更多样化的模拟器。
- 可以研究更智能的、自适应的课程学习策略。
5.2 局限与思考
- 模拟的保真度 (Simulation Fidelity):
- 多样性:真实网络信息形式多样(新闻、博客、论坛、PDF…),模拟 LLM 能否完全捕捉这种多样性?生成的「噪音」是否能真实反映网络上的各种低质量信息?
- 实时性:模拟 LLM 无法获取训练数据之后的最新信息。对于需要极端时效性的问题(比如「刚才发生的地震在哪里?」),模拟器可能会失效。
- 计算资源门槛:虽然省了 API 费,但运行 Simulation LLM(尤其是 14B)本身也需要不小的 GPU 资源。这对资源有限的团队仍是挑战。
- 知识边界:如果 Policy LLM 需要查询非常偏门、超出 Simulation LLM 知识范围的信息,模拟器可能无法提供有效帮助。
- 「近亲繁殖」风险? 用 LLM 训练 LLM,会不会导致模型学到一些只在模拟环境中有效,但在真实世界中表现不佳的策略?虽然实验结果很好,但这在理论上仍值得关注。
- SFT 数据依赖:模拟器的效果很大程度上取决于 SFT 数据的质量和覆盖范围。收集高质量、大规模的真实交互轨迹本身也是一项工作。
- 模拟器幻觉风险:Simulation LLM 本身也可能产生幻觉。它生成的「有用」文档会不会包含错误信息?这会不会误导 Policy LLM 的学习?(虽然 RL 的奖励机制和课程学习的噪音设计可能对此有一定鲁棒性)。
免责声明:本文由卡卷网编辑并发布,但不代表本站的观点和立场,只提供分享给大家。
- 上一篇:大龄剩男后悔了吗?
- 下一篇:视频号的红利期已经过去了吗?
相关推荐

你 发表评论:
欢迎