菜单

部署

相关源文件

本页面提供了部署和运行Local Deep Researcher系统的全面指南。它涵盖了可用的部署选项、配置要求以及与LLM提供商和搜索API等外部服务的连接。有关系统架构的信息,请参阅系统架构;有关详细配置选项,请参阅配置

部署选项概述

Local Deep Researcher可以通过两种主要方法进行部署

  1. 本地开发环境:使用LangGraph Studio直接在您的机器上运行
  2. Docker容器:作为容器化应用程序运行

这两种部署选项都支持与本地托管的LLM提供商(Ollama或LMStudio)以及各种搜索API集成。

来源: README.md77-156 README.md187-214

使用LangGraph Studio进行本地部署

部署Local Deep Researcher最直接的方法是使用LangGraph Studio在本地开发环境中直接运行它,LangGraph Studio提供了一个用于与研究过程交互和可视化研究过程的Web界面。

先决条件

部署前,请确保您已具备

  1. 已安装Python 3.11
  2. 已安装Git以克隆仓库
  3. 已使用您偏好的LLM设置Ollama或LMStudio
  4. 搜索服务的API密钥(如果未使用默认的DuckDuckGo)

部署步骤

1. 克隆仓库

2. 设置环境配置

编辑.env文件以配置您的LLM提供商、搜索API和其他设置。

3. 创建虚拟环境

适用于Mac/Linux

适用于Windows

4. 启动LangGraph服务器

适用于Mac/Linux(使用uv包管理器)

适用于Windows

5. 访问LangGraph Studio UI

服务器运行后,通过以下地址访问Studio UI

https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024

来源: README.md77-156

Docker 部署

Local Deep Researcher可以使用Docker作为容器化应用程序部署,这简化了依赖管理并提供了统一的运行时环境。

先决条件

  1. 在您的系统上安装Docker
  2. 确保Ollama或LMStudio正在运行(无论是本地还是在其他可访问的机器上)
  3. 准备搜索服务所需的任何API密钥

构建和运行Docker容器

1. 构建Docker镜像

2. 运行容器

注意:host.docker.internal DNS名称允许容器访问在主机上运行的服务。如果您的LLM提供商在其他地方运行,请相应调整URL。

3. 访问LangGraph Studio UI

通过以下地址访问Studio UI

https://smith.langchain.com/studio/thread?baseUrl=http://127.0.0.1:2024

来源: README.md187-214 Dockerfile1-39

部署架构

本节将系统组件映射到其部署结构,展示了代码实体如何与运行时组件关联。

部署组件结构

代码到部署的映射

来源: README.md16-24 README.md187-214 Dockerfile1-39

部署的环境配置

环境变量对于配置Local Deep Researcher的部署至关重要。这些变量控制使用哪个LLM提供商、查询哪个搜索API以及系统的其他行为方面。

关键环境变量

环境变量描述默认值示例
LLM_PROVIDER指定要使用的LLM提供商ollamaollamalmstudio
LOCAL_LLM与提供商一起使用的具体模型llama3.2deepseek-r1:8b
OLLAMA_BASE_URLOllama服务的URLhttp://:11434http://host.docker.internal:11434/
LMSTUDIO_BASE_URLLMStudio服务的URLhttp://:1234/v1http://host.docker.internal:1234/v1
SEARCH_API用于网络研究的搜索APIduckduckgotavilyperplexitysearxng
TAVILY_API_KEYTavily搜索的API密钥-tvly-yourapikey
PERPLEXITY_API_KEYPerplexity搜索的API密钥-pplx-yourapikey
MAX_WEB_RESEARCH_LOOPS研究迭代次数35
FETCH_FULL_PAGE是否抓取完整页面内容falsetruefalse

配置优先级

系统采用分层配置方法,优先级顺序如下

  1. 环境变量:最高优先级,覆盖所有其他设置
  2. LangGraph UI配置:如果未设置环境变量,则使用此项
  3. Configuration类中的默认值:最低优先级,用作备用

来源: README.md24-75 README.md129-135

连接到外部服务

Local Deep Researcher依赖于两种主要的外部服务

  1. LLM提供商:用于生成查询、分析结果和生成摘要
  2. 搜索API:用于检索网络搜索结果

连接到LLM提供商

Ollama

连接到Ollama

  1. 确保Ollama在您的本地机器或远程服务器上运行
  2. 设置以下环境变量
    LLM_PROVIDER=ollama
    OLLAMA_BASE_URL=http://:11434  # or URL to remote Ollama service
    LOCAL_LLM=llama3.2  # or your preferred model
    
  3. 确保您选择的模型已在Ollama中拉取并可用

LMStudio

连接到LMStudio

  1. 启动LMStudio并加载您偏好的模型
  2. 从“本地服务器”选项卡启动LMStudio服务器
  3. 设置以下环境变量
    LLM_PROVIDER=lmstudio
    LMSTUDIO_BASE_URL=http://:1234/v1  # or URL to LMStudio server
    LOCAL_LLM=qwen_qwq-32b  # exact model name as shown in LMStudio
    

连接到搜索API

系统支持多种搜索提供商

  1. DuckDuckGo(默认):无需API密钥
  2. Tavily:需要TAVILY_API_KEY
  3. Perplexity:需要PERPLEXITY_API_KEY
  4. SearXNG:需要一个SearXNG实例

来源: README.md29-75 README.md157-167

监控与故障排除

部署Local Deep Researcher后,监控和故障排除对于确保系统正常运行至关重要。

监控

主要的监控界面是LangGraph Studio UI,它提供了

  1. 研究图的视觉表示
  2. 访问包含所有研究工件的图状态
  3. 研究过程的实时更新
  4. 查看最终输出和来源

常见部署问题及解决方案

问题可能原因解决方案
无法连接到LLM提供商URL不正确或LLM提供商未运行验证提供商是否正在运行,并检查环境变量中的URL
浏览器安全警告混合内容(HTTPS/HTTP)使用Firefox或调整浏览器安全设置
无搜索结果API密钥或搜索API不正确验证API密钥并检查搜索API配置
LangGraph Studio UI未加载广告拦截扩展禁用广告拦截扩展或使用其他浏览器
Docker容器无法连接到Ollama网络配置使用host.docker.internal或正确的网络配置

浏览器兼容性

访问LangGraph Studio UI时

  • 推荐使用Firefox以获得最佳体验
  • Safari用户可能会因混合内容(HTTPS/HTTP)遇到安全警告
  • 如果遇到问题,请考虑禁用广告拦截扩展

来源: README.md117-128 README.md147-156 README.md209-214

高级部署考量

Local Deep Researcher旨在适应各种部署场景。

与现有系统集成

该系统可以通过以下方式与现有工作流集成

  1. HTTP API访问LangGraph服务器(http://:2024
  2. 在下游流程中使用研究输出(存储在图状态中)
  3. 为特定集成要求自定义Docker配置

部署自动化

对于自动化部署,请考虑

  1. 构建用于部署Docker容器的CI/CD管道
  2. 使用配置管理工具管理环境变量
  3. 为已部署系统实施监控和警报

来源: README.md178-180

有关特定Docker部署步骤和选项的更多信息,请参阅Docker部署