来源:互联网 更新时间:2026-08-22 14:02
• MindSearch 是一种基于 LLM 的多智能体网络搜索框架,性能可媲美 Perplexity.ai Pro。
• 它采用 WebPlanner 和 WebSearcher 组件,通过问题分解、并行搜索和分层信息检索来模拟人类思维进行深度搜索。
• MindSearch 能够处理更长的上下文,提供更深入、更广泛、更准确的答案,优于 ChatGPT-Web 和 Perplexity.ai Pro。
传统的搜索引擎,就像一位忠实的图书馆管理员,尽心尽责地帮你翻遍书架、找出所有相关书籍。可一旦遇到需要多步推理和信息整合的复杂问题——比如“哪家大模型 API 最便宜?”——这位管理员就有点束手无策了。它能把一堆 API 提供商的网页摆在你面前,但要直接给出对比结论,那就超出能力范围了。
大型语言模型(LLM)的出现带来了转机。它像一位经验丰富的侦探,擅长理解复杂语义,从海量信息中抽丝剥茧。于是,把 LLM 和搜索引擎结合起来,打造更智能的 AI 搜索引擎,成了研究的热点——Perplexity.ai 这类明星产品就是例证。
不过,现有的 LLM+搜索引擎方案大多还停留在浅层应用,比如简单的检索增强生成,很难真正发挥 LLM 的潜力。这些方法就像刚入行的助手,虽然能找到些相关信息,但离专家级别的深度分析和推理还有不少距离。具体来说,它们面临三大挑战:
•
•
•
为了攻克这些难题,这里要介绍一个全新的 AI 搜索引擎框架——
MindSearch 的核心组件有两个:
•
•
MindSearch 的工作流程大致是这样的:
1.
2.
3.
4.
WebPlanner 是 MindSearch 的大脑,它模仿人类专家解决问题的思路,通过以下步骤实现深度搜索:
1.
2.
3.
WebPlanner 的关键创新,在于把问题求解过程建模成动态图构建。这种方式不仅更贴近人类的推理过程,也为处理复杂问题和超长上下文提供了可能。
WebSearcher 是 MindSearch 的信息收集者,负责用搜索引擎高效地找到和子问题相关的信息。它采用分层信息检索策略,具体步骤是:
1.
2.
3.
4.
WebSearcher 的设计目标,是在保证信息准确性的前提下,尽可能提高检索效率。分层策略可以有效减少需要处理的信息量,从而提升效率。
为了评估 MindSearch 的表现,研究团队在封闭集和开放集问答问题上做了实验,和 ChatGPT-Web(基于 GPT-4o)以及 Perplexity.ai Pro 做了对比。结果显示,MindSearch 在以下方面明显更胜一筹:
•
•
•
MindSearch 的系统架构采用多智能体设计,WebPlanner 和 WebSearcher 各司其职,协同完成深度网络搜索任务。代码实现主要基于 Python 的 FastAPI 框架,通过消息队列实现智能体之间的通信。
WebPlanner 的核心代码包含这几个关键部分:
•
•
WebSearchGraph 类中的 add_node 和 add_edge 方法。•
下面这段代码展示了 WebPlanner 如何用 WebSearchGraph 类构建和管理搜索图:
from mindsearch.agent.mindsearch_agent import WebSearchGraph
# 初始化搜索图
graph = WebSearchGraph()
# 添加根节点,即用户初始问题
graph.add_root_node(node_content="哪家大模型API最便宜?", node_name="root")
# 添加子问题节点
graph.add_node(node_name="大模型API提供商", node_content="目前有哪些主要的大模型API提供商?")
graph.add_node(node_name="API价格", node_content="每个 API 提供商的收费标准是什么?")
# 添加节点间的依赖关系
graph.add_edge(start_node="root", end_node="大模型API提供商")
graph.add_edge(start_node="大模型API提供商", end_node="API价格")
# ...WebSearcher 的核心代码主要包含 SearcherAgent 类,这个类继承自 Internlm2Agent,负责和 LLM 交互,并通过调用搜索引擎 API 获取结果。下面来分析 mindsearch_agent.py 中 SearcherAgent 类的核心代码:
•
__init__)class SearcherAgent(Internlm2Agent):
def __init__(self, template='{query}', **kwargs) -> None:
super().__init__(**kwargs)
self.template = templateSearcherAgent 的初始化方法接收一个 template 参数,用于定义和 LLM 交互的 Prompt 模板。
•
stream_chat)def stream_chat(self,
question: str,
root_question: str = None,
parent_response: List[dict] = None,
**kwargs) -> AgentReturn:
# ...stream_chat 方法接收三个参数:question(当前子问题)、root_question(用户初始问题)和 parent_response(父节点的搜索结果,提供上下文)。它先用模板把这三个参数整合进 Prompt,然后调用父类的 stream_chat 方法和 LLM 交互,最后把返回的答案封装成 AgentReturn 对象。下面展示如何生成 Prompt:
message = self.template['input'].format(question=question,
topic=root_question)
if parent_response:
if 'context' in self.template:
parent_response = [
self.template['context'].format(**item)
for item in parent_response
]
message = 'n'.join(parent_response + [message])• question: 当前需要搜索的子问题。
• root_question: 用户最初提交的完整问题。
• parent_response: 父节点的搜索结果,用于提供上下文信息。
WebPlanner 和 WebSearcher 之间通过消息队列进行异步通信,实现高效的搜索任务管理和结果收集。WebPlanner 把分解后的子问题和上下文信息发送到消息队列,WebSearcher 从队列中获取任务并执行搜索,再把搜索结果发回队列,供 WebPlanner 整合。
MindSearch 使用了精心设计的 Prompt 来引导 LLM 的行为:
•
•
下面是 WebSearcher 使用的 Prompt 示例:
searcher_system_prompt_cn = """## 人物简介
你是一个可以调用网络搜索工具的智能助手。请根据"当前问题",调用搜索工具收集信息并回复问题。你能够调用如下工具:
{tool_info}
## 回复格式
调用工具时,请按照以下格式:你的思考过程...<|action_start|><|plugin|>{{"name": "tool_name", "parameters": {{"param1": "value1"}}}}<|action_end|>
## 要求
- 回答中每个关键点需标注引用的搜索结果来源,以确保信息的可信度。给出索引的形式为`[[int]]`,如果有多个索引,则用多个[[]]表示,如`[[id_1]][[id_2]]`。
- 基于"当前问题"的搜索结果,撰写详细完备的回复,优先回答"当前问题"。
"""MindSearch 为 AI 搜索引擎提供了一种全新的解决方案——通过模仿人类思维的深度搜索,给用户带来更优质的体验。
展望未来,MindSearch 将在以下几个方向继续深入:
•
•
•
MindSearch 的出现,标志着 AI 搜索引擎进入了一个新的发展阶段。可以预见,在不久的将来,它会为我们带来更智能、更高效、更便捷的搜索体验,开启网络搜索的新纪元。
腾讯ima怎么把微信内容一键导入知识库?
黄金价格不断创新高!黄金稳定币XAU、PAXG市值达11亿美元
CC币价格预测(2026-2035):Canton币今日价格走势+长期价格预测
腾讯ima怎么创建共享知识库?
Celestia价格预测2026-2032:TIA币能否引领山寨币上涨行情?历史价格回顾
新浪互联网热点小时报丨2026年07月26日16时_今日实时互联网热点速递
新浪机器学习热点小时报丨2026年07月25日18时_今日实时机器学习热点速递
比特币(BTC)核心周期指标复刻历史走势 价格或跌破5.8万美元关键支撑位
新浪人工智能热点小时报丨2026年07月30日18时_今日实时人工智能热点速递
WorkBuddy微信版怎么获得积分?
车载冰箱重置到出厂设置几步?
5000元起的鼠标哪个最值得入手?
比特币 2025 年价格预测:BTC 的未来走势
笔记本移动电源推荐哪款?
结婚家电首选:Leader懒人三筒Ultra热泵洗烘一体
短剧《史上最强洪荒修为》剧情介绍
kimi提示词专家使用方法新手指南
Aptos(APT)2026-2032年价格预测与历史走势梳理
短剧《仙人跳获透视,古玩玉器我全拿捏》剧情介绍
腾讯ima知识库怎么分类管理?
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc