OpenDeepSearch:搜索引擎革命!这个开源深度搜索工具让AI代理直接读懂网页,复杂问题一键拆解

本文涉及的产品
NLP自然语言处理_高级版,每接口累计50万次
NLP 自学习平台,3个模型定制额度 1个月
NLP自然语言处理_基础版,每接口每天50万次
简介: OpenDeepSearch是基于开源推理模型的深度搜索工具,通过语义重排和多源整合优化检索效果,支持与AI代理无缝集成,提供快速和专业两种搜索模式。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 丰富的 AI 工具库 -> 每日更新 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦


🚀 「搜索引擎革命!开源神器让AI代理直接读懂网页,复杂问题一键拆解」

大家好,我是蚝油菜花。当传统搜索引擎还在返回零散链接时,这个开源项目已经让AI学会了「阅读理解」!

你是否也受够了这些搜索困境——

  • 🔍 查学术资料要手动对比10个网页
  • 📊 分析市场数据得自己整理表格
  • 🤖 问AI复杂问题总得到碎片化答案...

今天要介绍的 OpenDeepSearch ,正在重新定义信息检索!这个由Sentient AGI开源的搜索核弹:

  • 语义理解开挂:用知识图谱解析网页内容,告别关键词匹配
  • 多跳推理王:自动拆解「A对B的影响如何通过C体现」类复杂问题
  • AI代理最佳拍档:与Hugging Face生态无缝集成,搜索结果直接喂给代码生成器

已有团队用它1小时完成竞品分析报告,接下来将揭秘这套开源搜索系统的技术架构!

🚀 快速阅读

OpenDeepSearch是专为AI代理优化的开源深度搜索工具。

  1. 功能:支持语义搜索和多跳查询,提供快速和专业两种模式。
  2. 技术:基于语义重排器和ReAct框架,整合网络爬取与推理能力。

OpenDeepSearch 是什么

OpenDeepSearch

OpenDeepSearch 是专为AI代理设计的开源深度搜索工具,通过语义理解优化传统关键词检索方式。该系统包含Open Search Tool和Open Reasoning Agent两大核心组件,支持从简单查询到复杂多跳问题的全场景搜索需求。

作为Hugging Face SmolAgents生态的优化组件,它采用模块化设计,允许自由切换不同的大语言模型作为推理引擎。测试显示其在处理需要跨文档验证的问题时,准确率比传统搜索引擎提升47%。

OpenDeepSearch 的主要功能

  • 语义搜索:基于Qwen2-7B等模型实现语义级结果重排
  • 双模式检索:快速模式响应时间<1秒,专业模式支持多轮验证
  • 代理集成:直接输出结构化数据供AI代理进一步处理
  • 数学计算:通过Wolfram Alpha API处理数值问题
  • 动态爬取:实时抓取最新网页内容确保信息时效性

OpenDeepSearch 的技术原理

  • 查询扩展:生成多个语义相关查询提升召回率
  • 段落提取:从网页中智能抽取关键内容段落
  • ReAct框架:结合思考-行动-观察循环解决复杂问题
  • 代码执行:通过生成Python代码处理计算密集型任务
  • 微服务架构:各组件可独立部署和扩展

如何运行 OpenDeepSearch

下面将带你了解如何安装、配置和运行 OpenDeepSearch,以充分利用其语义搜索和高级搜索模式。

安装

在开始使用 OpenDeepSearch 之前,请确保你的系统满足以下安装要求:

1. 安装依赖

运行以下命令以安装 OpenDeepSearch 的依赖项:

pip install -e . # 你也可以使用:uv pip install -e .
pip install -r requirements.txt # 你也可以使用:uv pip install -r requirements.txt

注意:必须安装 torch,并且建议使用 uv 而非 pip 来简化安装过程。

配置

2. 获取 Serper.dev API 密钥

  1. 获取你的 API 密钥并将其设置为环境变量:
export SERPER_API_KEY='your-api-key-here'

3. 选择重新排序解决方案

OpenDeepSearch 支持以下重新排序选项:

4. 配置 LiteLLM 提供程序

选择一个支持的提供程序(如 OpenAI、Anthropic 或 Google Gemini),并设置其 API 密钥:

export <PROVIDER>_API_KEY='your-api-key-here'  # 例如:OPENAI_API_KEY, ANTHROPIC_API_KEY

在初始化 OpenDeepSearch 时,指定你选择的模型:

search_agent = OpenDeepSearchTool(model_name="provider/model-name")  # 例如:'openrouter/google/gemini-2.0-flash-001'

使用教程

以下是使用 OpenDeepSearch 的几种常见方式。

单独运行 OpenDeepSearch

以下代码展示了如何单独运行 OpenDeepSearch 工具:

from opendeepsearch import OpenDeepSearchTool
import os

# 设置环境变量
os.environ["SERPER_API_KEY"] = "your-serper-api-key-here"
os.environ["OPENROUTER_API_KEY"] = "your-openrouter-api-key-here"
os.environ["JINA_API_KEY"] = "your-jina-api-key-here"

# 初始化搜索工具
search_agent = OpenDeepSearchTool(
    model_name="openrouter/google/gemini-2.0-flash-001", 
    reranker="jina"  # 也可以设置为 "infinity"
)

# 执行搜索
query = "地球上最快的陆地动物是什么?"
result = search_agent.search(query)
print(result)

解释

  1. 代码中使用了 OpenDeepSearchTool 并指定了模型(openrouter/google/gemini-2.0-flash-001)和重新排序工具(jina)。
  2. search 方法用于执行搜索,返回结果并打印。

使用 Gradio 演示界面

Gradio 提供了一个用户友好的界面,你可以通过以下命令运行:

python gradio_demo.py

运行后,你将看到一个本地 Web 界面,可以交互式地测试不同搜索查询和模式。

集成 SmolAgents 和 LiteLLM

以下是将 OpenDeepSearch 与 SmolAgents 和 LiteLLM 集成的示例代码:

from opendeepsearch import OpenDeepSearchTool
from smolagents import CodeAgent, LiteLLMModel
import os

# 设置环境变量
os.environ["SERPER_API_KEY"] = "your-serper-api-key-here"
os.environ["OPENROUTER_API_KEY"] = "your-openrouter-api-key-here"
os.environ["JINA_API_KEY"] = "your-jina-api-key-here"

# 初始化搜索工具
search_agent = OpenDeepSearchTool(
    model_name="openrouter/google/gemini-2.0-flash-001", 
    reranker="jina"
)

# 初始化 LiteLLM 模型
model = LiteLLMModel(
    "openrouter/google/gemini-2.0-flash-001",
    temperature=0.2
)

# 初始化 CodeAgent
code_agent = CodeAgent(tools=[search_agent], model=model)

# 执行复杂搜索
query = "猎豹以最快速度跑完亚历山大三世桥的长度需要多久?"
result = code_agent.run(query)
print(result)

解释

  1. 代码中使用了 CodeAgent,它集成了 OpenDeepSearch 作为工具。
  2. run 方法接收复杂查询,并结合搜索工具和模型生成结果。

使用 ReAct 代理执行多工具操作

以下是结合搜索和数学工具的示例:

from opendeepsearch import OpenDeepSearchTool 
from opendeepsearch.wolfram_tool import WolframAlphaTool
from opendeepsearch.prompts import REACT_PROMPT
from smolagents import LiteLLMModel, ToolCallingAgent, Tool 
import os

# 设置环境变量
os.environ["SERPER_API_KEY"] = "your-serper-api-key-here"
os.environ["JINA_API_KEY"] = "your-jina-api-key-here"
os.environ["WOLFRAM_ALPHA_APP_ID"] = "your-wolfram-alpha-app-id-here"
os.environ["FIREWORKS_API_KEY"] = "your-fireworks-api-key-here"

# 初始化模型
model = LiteLLMModel(
    "fireworks_ai/llama-v3p1-70b-instruct",  
    temperature=0.7
)

# 初始化搜索工具
search_agent = OpenDeepSearchTool(
    model_name="fireworks_ai/llama-v3p1-70b-instruct", 
    reranker="jina"
)

# 初始化 Wolfram Alpha 工具
wolfram_tool = WolframAlphaTool(app_id=os.environ["WOLFRAM_ALPHA_APP_ID"])

# 初始化 ReAct 代理
react_agent = ToolCallingAgent(
    tools=[search_agent, wolfram_tool],
    model=model,
    prompt_templates=REACT_PROMPT  # 使用 REACT_PROMPT 作为系统提示
)

# 执行复杂查询
query = "罗马斗兽场与威尼斯里亚托桥之间的距离是多少米?"
result = react_agent.run(query)
print(result)

解释

  1. 代码中使用了 ToolCallingAgent,它结合了搜索和 Wolfram Alpha 工具。
  2. run 方法能够处理复杂的多跳查询,并返回详细结果。

搜索模式

OpenDeepSearch 提供两种搜索模式,以适应不同的需求。

默认模式

  • 使用基于 SERP 的交互,快速返回结果。
  • 适合单跳查询,响应时间短。
  • 适用于基础信息检索。

专业模式

  • 包括全面的网页抓取和语义重新排序。
  • 适合多跳查询和复杂搜索需求。
  • 结果更详细,但处理时间稍长。

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 丰富的 AI 工具库 -> 每日更新 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦

相关文章
|
1月前
|
人工智能 自然语言处理 算法
【2025云栖大会】AI 搜索智能探索:揭秘如何让搜索“有大脑”
2025云栖大会上,阿里云高级技术专家徐光伟在云栖大会揭秘 Agentic Search 技术,涵盖低维向量模型、多模态检索、NL2SQL及DeepSearch/Research智能体系统。未来,“AI搜索已从‘信息匹配’迈向‘智能决策’,阿里云将持续通过技术创新与产品化能力,为企业构建下一代智能信息获取系统。”
296 9
|
1月前
|
机器学习/深度学习 人工智能 算法
AI可以做电商主图了:技术原理,AI电商图生成工具对比及技术解析
双十一临近,电商主图需求激增。AI技术凭借多图融合、扩散模型等,实现高效智能设计,30秒生成高质量主图,远超传统PS效率。支持风格迁移、背景替换、文案生成,助力商家快速打造吸睛商品图,提升转化率。
598 0
|
1月前
|
人工智能 搜索推荐 数据可视化
当AI学会“使用工具”:智能体(Agent)如何重塑人机交互
当AI学会“使用工具”:智能体(Agent)如何重塑人机交互
309 115
|
1月前
|
人工智能 运维 Java
Spring AI Alibaba Admin 开源!以数据为中心的 Agent 开发平台
Spring AI Alibaba Admin 正式发布!一站式实现 Prompt 管理、动态热更新、评测集构建、自动化评估与全链路可观测,助力企业高效构建可信赖的 AI Agent 应用。开源共建,现已上线!
3023 42
|
1月前
|
人工智能 缓存 运维
【智造】AI应用实战:6个agent搞定复杂指令和工具膨胀
本文介绍联调造数场景下的AI应用演进:从单Agent模式到多Agent协同的架构升级。针对复杂指令执行不准、响应慢等问题,通过意图识别、工具引擎、推理执行等多Agent分工协作,结合工程化手段提升准确性与效率,并分享了关键设计思路与实践心得。
396 20
【智造】AI应用实战:6个agent搞定复杂指令和工具膨胀
|
1月前
|
人工智能 自然语言处理 Shell
我们开源了一款 AI 驱动的用户社区
KoalaQA 是一款开源的 AI 驱动用户社区,支持智能问答、语义搜索、自动运营与辅助创作,助力企业降低客服成本,提升响应效率与用户体验。一键部署,灵活接入大模型,快速构建专属售后服务社区。
240 5
我们开源了一款 AI 驱动的用户社区
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
双 11 电商效率突围:10 款 AI 工具的技术落地与实践指南
2025年双11促销长达38天,电商迎来AI重构关键期。本文剖析10款主流AI工具技术原理,涵盖设计、文案、投放、客服等场景,揭示计算机视觉、自然语言处理等技术如何驱动电商智能化升级,助力企业高效应对大促挑战。
337 1
|
1月前
|
人工智能 文字识别 自然语言处理
从“看见”到“预见”:合合信息“多模态文本智能技术”如何引爆AI下一场革命。
近期,在第八届中国模式识别与计算机视觉学术会议(PRCV 2025)上,合合信息作为承办方举办了“多模态文本智能大模型前沿技术与应用”论坛,汇聚了学术界的顶尖智慧,更抛出了一颗重磅“炸弹”——“多模态文本智能技术”概念。
129 1
|
1月前
|
人工智能 算法 搜索推荐
AI 搜索时代选 GEO 外援?十家服务商,企业看过来
随着AI普及,GEO(生成式引擎优化)成为品牌获客新赛道。本文推荐10家优质GEO服务商,涵盖内容优化、流量提升、合规风控等方向,助力企业提升在DeepSeek、豆包等AI模型中的曝光与推荐,实现智能时代的精准增长。

热门文章

最新文章

下一篇
oss云网关配置