
在当今信息爆炸的时代,无论是学术研究、商业分析还是个人学习,都需要从海量的信息中快速获取、整理和分析关键内容。然而,传统的人工研究方法往往效率低下且容易遗漏重要信息。随着人工智能技术的飞速发展,AI驱动的研究工具应运而生,LangChain 团队开发了Local Deep Researcher。它旨在通过 AI 技术帮助用户进行深入、迭代式的主题研究。与传统的研究方法不同,Local Deep Researcher 能够自动分解问题、检索信息、生成总结,并通过多轮迭代来不断完善研究结果。
一、项目概述
Local Deep Researcher 是一款完全本地化运行的网络研究助手,依托Ollama所托管的各类大语言模型开展工作。它的核心设计理念是 “隐私与效率并重”,旨在帮助用户高效地进行深度研究。当用户输入一个研究主题后,Local Deep Researcher 会自动生成网络搜索查询,并通过配置的搜索引擎(如默认的 Tavily,也支持 DuckDuckGo、Perplexity 等)收集相关的网络搜索结果。接着,模型会对这些结果进行总结分析,反思总结内容以识别知识差距,进而生成新的搜索查询来填补这些差距。这一迭代优化过程会持续进行,直至达到用户设定的总结次数,最终为用户输出一份包含所有引用来源的 Markdown 格式总结报告 。这种自动化、迭代式的研究流程,极大地提升了研究效率,减少了人工筛选信息的繁琐工作。

二、核心功能
(一)深度、迭代式研究
Local Deep Researcher 的核心功能之一是其深度、迭代式的研究方法。它能够自动将复杂的研究问题分解为多个子问题,并针对每个子问题进行信息检索和分析。然后,它会根据已有的答案识别知识缺口,并生成新的搜索查询以填补这些缺口。这个过程会重复进行,直到达到用户设定的迭代次数。
(二)灵活的 AI 模型支持
Local Deep Researcher 支持多种 AI 模型,用户可以根据自己的需求选择本地模型或云模型。例如,它支持通过Ollama 使用本地LLM,也支持通过LMStudio使用其他模型。这种灵活性使得用户可以在保护隐私的同时,根据自己的硬件条件和性能需求选择合适的模型。
(三)丰富的输出选项
Local Deep Researcher 的输出非常灵活,支持多种格式。它能够生成详细的研究报告,包括总结、引用和参考文献。此外,它还可以生成快速摘要,方便用户快速了解研究的主要内容。
(四)隐私保护
Local Deep Researcher 提供了强大的隐私保护功能。它支持完全在本地运行,所有数据和模型都可以存储在用户的本地设备上,从而避免了数据泄露的风险。
(五)强大的搜索集成
Local Deep Researcher 集成了多种搜索工具,包括 DuckDuckGo、Tavily 和 Perplexity 等。用户可以根据自己的需求选择不同的搜索工具,并通过配置文件添加相应的 API 密钥。此外,它还支持本地文档搜索,用户可以上传自己的文档集合,以便在研究过程中使用。
三、技术原理
(一)迭代式研究流程
Local Deep Researcher 的技术原理基于迭代式研究流程。它首先使用本地 LLM 生成一个搜索查询,然后通过搜索引擎获取相关文档。接着,它使用 LLM 对这些文档进行总结,并识别知识缺口。然后,它生成新的搜索查询,继续获取和总结信息,这个过程会重复进行,直到达到用户设定的迭代次数。
(二)多轮分析与智能问题生成
Local Deep Researcher 的另一个重要技术特点是多轮分析和智能问题生成。它能够根据已有的答案和知识缺口,自动生成新的问题和搜索查询。这种多轮分析的方法能够确保研究的深度和广度,帮助用户全面了解研究主题。
(三)本地与云模型的结合
Local Deep Researcher 支持本地和云模型的结合。用户可以选择使用本地 LLM,以确保数据隐私和安全;也可以选择使用云模型,以获得更强大的功能和更高的性能。这种灵活性使得 Local Deep Researcher 能够满足不同用户的需求。
四、应用场景
(一)学术研究
Local Deep Researcher 在学术研究中具有广泛的应用。它可以帮助研究人员快速获取和分析科学论文,整理研究思路,生成详细的文献综述。通过多轮迭代分析,研究人员可以深入探索复杂的研究问题,发现新的研究方向。
(二)商业分析
在商业领域,Local Deep Researcher 可以帮助分析师跟踪行业动态和市场趋势。它能够快速生成商业报告,提供详细的市场分析和竞争情报。通过灵活的搜索工具和多轮分析,分析师可以深入了解特定市场或行业的各个方面。
(三)个人学习
对于个人学习者来说,Local Deep Researcher 是一个非常有用的工具。它可以快速整理和总结知识,帮助学习者快速了解一个主题的主要内容。通过多轮迭代分析,学习者可以深入探索感兴趣的主题,提高学习效率。
五、快速使用
(一)克隆仓库
首先,克隆Local Deep Researcher项目的仓库:
git clone https://github.com/langchain-ai/local-deep-researcher.git
cd local-deep-researcher
(二)编辑 `.env` 文件
cp .env.example .env
编辑`.env` 文件以根据需要自定义环境变量。这些环境变量控制模型选择、搜索工具和其他配置设置。当你运行应用程序时,这些值将通过 `python-dotenv` 自动加载。
(三)选择本地模型(使用 Ollama)
1. 下载适用于 Mac 的 Ollama 应用程序。
2. 从 Ollama 拉取本地 LLM。例如:
ollama pull deepseek-r1:8b
3. (可选)更新 `.env` 文件,添加以下 Ollama 配置设置:
OLLAMA_BASE_URL="http://localhost:11434" # Ollama 服务端点,默认为 `http://localhost:11434`
OLLAMA_MODEL="deepseek-r1:8b" # 使用的模型,默认为 `llama3.2`,如果不设置
(四)选择本地模型(使用 LMStudio)
1. 下载并安装 LMStudio。
2. 在 LMStudio 中:
– 下载并加载你偏好的模型(例如,qwen_qwq-32b)。
– 转到“Local Server”选项卡。
– 启动带有 OpenAI 兼容 API 的服务器。
– 记下服务器 URL(默认:http://localhost:1234/v1)。
3. (可选)更新 `.env` 文件,添加以下 LMStudio 配置设置:
LLM_PROVIDER=lmstudio
LOCAL_LLM=qwen_qwq-32b # 使用 LMStudio 中显示的确切模型名称
LMSTUDIO_BASE_URL=http://localhost:1234/v1
(五)选择搜索工具
默认情况下,它将使用 DuckDuckGo 进行网络搜索,无需 API 密钥。但你也可以通过添加 API 密钥使用 SearXNG、Tavily 或 Perplexity。在 `.env` 文件中更新以下搜索工具配置和 API 密钥:
SEARCH_API="duckduckgo" # 使用的搜索 API,默认为 `duckduckgo`
TAVILY_API_KEY="your_tavily_api_key" # Tavily API 密钥
PERPLEXITY_API_KEY="your_perplexity_api_key" # Perplexity API 密钥
MAX_WEB_RESEARCH_LOOPS=3 # 研究循环的最大次数,默认为 `3`
FETCH_FULL_PAGE=false # 使用 DuckDuckGo 时获取完整页面内容,默认为 `false`
(六)使用 LangGraph Studio 运行
-
Mac
1. (推荐)创建虚拟环境:
python -m venv .venv
source .venv/bin/activate
2. 启动 LangGraph 服务器:
curl -LsSf https://astral.sh/uv/install.sh | sh
uvx --refresh --from "langgraph-cli[inmem]" --with-editable . --python 3.11 langgraph dev
-
Windows
1. (推荐)创建虚拟环境:
– 安装 `Python 3.11`(在安装过程中添加到 PATH)。
– 重启终端,确保 Python 可用,然后创建并激活虚拟环境:
python -m venv .venv
.venv\Scripts\Activate.ps1
2. 启动 LangGraph 服务器:
pip install -e .
pip install -U "langgraph-cli[inmem]"
langgraph dev
(七)使用 LangGraph Studio UI
启动 LangGraph 服务器后,你将看到以下输出,Studio 将在浏览器中打开:
“`
Ready!
API: http://127.0.0.1:2024
Docs: http://127.0.0.1:2024/docs
LangGraph Studio Web UI: https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024
“`
通过上述 URL 打开 `LangGraph Studio Web UI`。在 `configuration` 选项卡中,你可以直接设置各种助手配置。请注意配置值的优先级顺序:
1. 环境变量(最高优先级)
2. LangGraph UI 配置
3. `Configuration` 类中的默认值(最低优先级)
六、结语
Local Deep Researcher 是一个强大的开源深度研究工具,它结合了本地运行的优势和强大的 AI 功能。通过深度、迭代式的研究方法,它能够帮助用户快速获取和整理大量信息,生成详细的研究报告。无论是在学术研究、商业分析还是个人学习中,Local Deep Researcher 都能够显著提高研究效率。此外,它还提供了灵活的配置选项,支持本地和云模型,满足不同用户的需求。
七、相关资源
GitHub 项目地址:https://github.com/langchain-ai/local-deep-researcher
Ollama 官方网站:https://ollama.com/
LMStudio 官方网站:https://lmstudio.ai/
LangGraph 项目地址:https://github.com/langchain-ai/langgraph
(文:小兵的AI视界)