AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


中科大、上海AI Lab发表的MindSearch思·索: 模拟模仿人类思维引发的深度AI探索者
发布日期:2024-08-11 08:07:24 浏览次数: 1837 来源:AI帝国



一、结论写在前面
论文来自中国科学技术大学、上海AI Lab
论文标题:MindSearch: Mimicking Human Minds Elicits Deep AI Searcher
论文链接:https://arxiv.org/pdf/2407.20183
代码链接:https://github.com/InternLM/MindSearch
摘要
通过结合LLMs和搜索引擎来解决信息搜索与整合任务因三个挑战而表现不佳:(1)复杂请求往往无法通过一次搜索准确且完整地检索;(2)待整合的相关信息分散在多个网页中,伴随大量噪音;(3)大量内容冗长的网页可能迅速超出LLMs的最大上下文长度。
受人类专家解决现实问题方式的启发,论文提出了MindSearch,这是一个基于LM的简单而有效的多agent框架,包括一个WebPlanner(模拟人类思维进行问题推理)和多个WebSearcher(管理信息搜索过程)给定一个用户查询,WebPlanner首先将查询分解为多个可并行解决的原子子问题,并将它们分派给相应的WebSearcher。为了进一步增强推理能力,WebPlanner将复杂的问题解决过程建模为迭代图构建:通过预定义一系列与拓扑思维图构建相关的标准代码接口,WebPlanner能够通过生成Python代码在图中逐步添加节点/边,从而将问题逐步分解为顺序/并行的子问题。同时,负责每个子问题的WebSearcher采用分层检索过程,从大量搜索页面中提取有价值的数据供LLMs使用,显著提高了信息聚合效率。通过将推理和检索过程的不同方面分配给专门的agent,MindSearch有效减轻了每个单一agent的负担,促进了长上下文的更稳健处理。它无缝地弥合了搜索引擎的原始数据检索能力与LLMs的上下文理解能力之间的差距。    
基于GPT-4或InternLM2.5-7B模型,MindSearch在闭集和开集QA问题的响应质量上,无论在深度还是广度方面,均显示出显著改进。此外,基于InternLM2.5-7B模型的MindSearch生成的响应更受人类青睐,优于ChatGPT-Web(基于GPT-4)和Perplexity.ai应用,这表明基于开源模型的MindSearch已经能够提供与专有AI搜索引擎相竞争的解决方案。
             

 

             

 

   
二、论文的简单介绍
2.1 论文的背景
图1:MindSearch的总体框架。它由两个主要组成部分构成:WebPlanner和WebSearcher。WebPlanner作为高级规划器,协调推理步骤和多个WebSearcher。WebSearcher执行细粒度的网络搜索,并将有价值的信息汇总回规划器,形成一个简单而有效的多agent框架
LLM与搜索引擎的互补优势凸显了它们结合的强大机遇,LLM的推理能力可以通过搜索引擎访问的广泛网络信息得到补充,可能彻底改变网络信息检索和整合的解决方案。先前的工作(Asai et al., 2023; Chan et al., 2024)仅将信息检索和整合任务视为简单的检索增强生成(RAG)任务。虽然这种表述简单直接,但往往导致性能不佳,对基于网络的信息检索的深度和复杂性处理表面化,面对更复杂的用户查询时存在三大挑战:    

(1) 现实世界的问题通常需要在检索相关信息之前进行深入分析和问题适当分解,这无法通过一次性检索网页来实现。

(2) 海量的搜索网页和大量的信息噪声对LLM进行有效的信息整合提出了巨大挑战。

(3) 网络搜索内容的迅速激增可能很快超过LLM的最大上下文长度,这进一步降低了信息整合的性能。

             

 

2.2 MindSearch
为了有效整合搜索引擎的网络信息检索能力与LLMs的推理和信息整合能力,MindSearch包含了一个WebPlanner和一组WebSearchers(图1)。WebPlanner首先通过图推理将用户问题分解为顺序或并行的搜索任务,并根据搜索反馈决定下一步行动。WebSearcher负责查询,并在互联网上执行分层信息检索以回答子问题。论文还讨论了多agent设计范围内的上下文管理。
2.2.1 WebPlanner:通过图构建进行规划
WebPlanner作为高级规划器,负责协调推理步骤和其他agent。然而,论文观察到,仅提示LLM规划整个数据工作流架构并不能产生令人满意的表现。具体而言,当前的LLMs在分解复杂问题及其拓扑关系理解方面存在困难,导致搜索查询粒度过粗。这种方法未能充分利用LLMs作为人类与搜索引擎之间中介的潜力,无法将人类意图转化为逐步搜索任务并提供准确响应。
为了提升大型语言模型(LLM)解决复杂问题的能力,论文建模了问题解决过程的DAG(有向无环图)。给定一个用户问题Q,解决方案轨迹为G(Q)=,>
利用当前LLM在代码任务上的卓越性能,论文明确提示模型通过编写代码与图进行交互。为此,论文预定义了向图中添加节点或边的原子代码函数(图2中的步骤1和2)。在每一轮中,LLM首先阅读整个对话,包括之前生成的代码和网络搜索结果,然后输出对思维图进行推理的想法和新代码,这些代码由Python解释器执行。在执行过程中,一旦一个节点被添加到推理图中,它就会调用Websearcher执行搜索过程并总结信息。    
图 2 : WebPlanner 如何通过规划即编码逐步解决问题的具体示例。在每个回合中,WebPlanner 输出一系列思考以及生成的代码。代码将被执行并产生搜索结果返回给规划器。在最后一个回合,WebPlanner 直接提供最终响应而无需生成任何代码。    
由于新添加的节点仅依赖于先前步骤中生成的节点,论文可以并行处理它们以实现更快的信息聚合速度。当所有信息收集完毕后,规划器通过添加结束节点(图 2 中的步骤 3)生成最终响应。
通过与 Python 解释器集成,WebPlanner 通过统一的代码动作与图进行交互,动态构建推理路径。这种“代码即规划”的过程使 LLM 能够充分利用其卓越的代码生成能力,在长上下文场景中受益于控制和数据流,从而在解决复杂问题时表现更佳。
2.2.2 WebSearcher:分层检索的网页浏览
WebSearcher 作为具有互联网访问权限的高级 RAG(检索与生成)agent,根据搜索结果总结有价值的响应(图 3)。由于网络上的内容极其庞大,LLM 在有限的上下文长度内(例如 8K 个token)处理所有相关页面是具有挑战性的。为了解决这个问题,论文采用了一种直接的从粗到细的选择策略。首先,LLM 根据 WebPlanner 分配的问题生成几个类似的查询,以扩大搜索内容并提高相关信息的召回率。然后,这些查询通过各种搜索 API(如 Google、Bing 和 DuckDuckGo)执行,返回包括网页 URL、标题和摘要的关键内容。搜索结果根据网页 URL 自动合并,并提示 LLM 选择最有价值的页面进行详细阅读。然后,所选网页 URL 的完整内容被添加到 LLM 的输入中。在阅读这些结果后,LLM 根据搜索结果生成响应以回答原始问题。这种分层检索方法显著降低了浏览大量网页的难度,并允许高效提取具有深入细节的高度相关信息。
图3:WebSearcher的详细工作流程。它包括最多4个步骤:查询重写、搜索内容聚合、详细页面选择和最终总结。
2.2.3 在MindSearch中管理LLM上下文
MindSearch通过提供一个简单的多agent解决方案,来处理复杂的信息搜索和与搜索引擎的集成。这种范式也自然地实现了不同agent之间的长上下文管理,从而提高了框架的整体效率,特别是在需要模型快速阅读大量网页的情况下。由于WebPlanner将搜索任务分配给不同的搜索agent,并且仅依赖于WebSearcher的搜索结果,因此WebPlanner可以纯粹专注于用户问题的分解和分析,而不会被过长的网页搜索结果分散注意力。同时,每个WebSearcher只需要搜索其任务子查询的内容,而不受其他内容的影响。得益于明确的角色分配,MindSearch在整个过程中大大减少了上下文计算,为LLM的长上下文任务提供了一个高效的上下文管理解决方案。这种多agent框架也为训练单一LLM提供了直接且简单的长上下文任务构建流程,这一点在(Team, 2024)中也有所体现。最终,MindSearch在不到3分钟的时间内收集和整合了来自超过300页的相关信息,而人类专家完成类似认知工作量大约需要3小时。    
由于多个agent之间存在显式的上下文状态传递,论文需要在整个工作流程中谨慎处理上下文。论文实证发现,仅关注规划器分解的查询可能会在信息收集阶段由于搜索agent内部的局部感受野而丢失有用信息。如何有效地处理多个agent之间的上下文并非易事。论文发现,通过有向图边构建的拓扑关系有助于论文轻松处理不同agent之间的上下文。更具体地说,论文在执行每个搜索agent时,简单地将来自其父节点以及根节点的响应作为前缀。因此,每个WebSearcher可以有效地专注于其子任务,同时不会丢失先前的相关上下文以及最终目标。
图4:人类专家对开放集QA问题的主观评估结果

2.3 实验
论文在两类主要的问题回答(QA)任务上评估MindSearch:闭集QA和开放集QA,这反映了MindSearch的主观和客观判断。为了公平比较,所有模型仅通过BING搜索API访问互联网,不考虑额外的参考来源。    
2.3.1 开放集QA
2.3.1.1 实施细节
为了更好地评估实用性和搜索性能,论文精心挑选了100个真实世界的人类查询,并从MindSearch(InternLM2.5-7b-chat)、Perplexity.ai(其Pro版本)和使用搜索插件的ChatGPT)收集响应。论文请五位人类专家根据以下三个方面手动选择他们偏好的响应:
•深度:深度指答案的彻底性和深度。具有深度的响应提供详细信息并深入探讨问题的复杂性。
•广度:广度涉及答案所涵盖的范围和多样性。具有广度的回答触及问题的各个方面或多个相关领域,提供不同的视角或解决方案。
•事实性:事实性是指答案的准确性和基于事实的程度。它应基于可靠的数据和信息,避免错误或误导性内容,确保所提供信息的真实性和可信度。
最终结果通过多数投票决定。在评估过程中,回答与其方法之间的对应关系对评估者不可见,以保证公平性。
2.3.1.2 结果与分析
评估结果如图4所示,论文还提供了图 5 中的定量结果。从图 4 中,论文可以观察到模型回答在深度和广度方面的绝对改进,这验证了论文提出的 WebPlanner 的优越性。通过将代码集成到 DAG 构建阶段,LLM 能够逐步将复杂问题分解为可执行的查询,同时平衡时间效率和搜索空间的探索之间的权衡。此外,MindSearch 针对问题进行了更细粒度的搜索主题,因此与其他模型相比提供了更紧凑和详细的回答。然而,MindSearch 在事实性方面并未表现出更好的性能。论文怀疑更详细的搜索结果可能会分散模型对初始问题的注意力,尤其是在 LLM 持有不完整的长上下文能力时。因此,MindSearch 的一个自然未来工作是减轻网络浏览过程中的幻觉问题。    
图 5:MindSearch 与 Perplexity.ai(Pro)在同一问题上的解决方案轨迹比较。得益于其细粒度搜索,MindSearch 提供了更详细和恰当的响应
表 1:在各种封闭集问答任务上的性能比较。论文选择了两个具有代表性的大型语言模型(LLMs):GPT-4o(闭源)和 InternLM2.5-7b-chat(开源)
除了定量结果外,论文还提供了 Perplexity.ai(Pro)与 MindSearch 之间的定性响应比较,以直观地理解它们的性能。从图 5 中,论文可以观察到 MindSearch 产生了更具体和详细的响应。论文实证发现,更好的响应可以归因于与 Perplexity.ai 相比更恰当的规划搜索路径,这也表明如何分解人类意图是最终问题的关键步骤。    
2.3.2 封闭集问答
2.3.2.1实施细节
论文在广泛的封闭集问答任务上广泛评估了论文的方法,包括 Bamboogle、Musique和 HotpotQA。为了进一步验证论文方法的泛化性,论文选择了闭源 LLM(GPT-4o)和开源 LLM(InternLM2.5-7b-chat)作为论文的 LLM 后端。由于论文的方法采用零样本实验设置,论文利用主观 LLM 评估器(GPT4-o)来评估 HotpotQA 的正确性。
2.3.2.2 结果与分析
在表1中,论文将论文的方法与两种直接的基线方法进行了比较:不使用搜索引擎的原始LLM(w/o Search Engine),以及简单地将搜索引擎视为外部工具并采用ReAct风格交互的方法(ReAct Search)。论文可以得出结论,MindSearch显著优于其原始基线方法,验证了所提出方法的有效性。当从闭源LLM转移到开源LLM时,这些优势进一步放大,这进一步证明了MindSeach提供了一种简单的方法来增强弱LLM的知识广度并缓解幻觉问题。

                 

 

   


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询