综合介绍
OpenDeepResearcher 是一个开源的自动化深度研究工具,旨在通过人工智能技术提升研究效率。该项目由 mshumer 开发,托管在 GitHub 上。OpenDeepResearcher 利用多种服务和技术,包括 SERPAPI、Jina 和 OpenRouter,来执行谷歌搜索、网页内容提取和上下文分析。其核心功能是通过迭代研究循环,不断优化搜索查询,直到系统确信已收集到所有必要的信息。该工具还支持异步处理、重复过滤和 LLM 驱动的决策,确保研究过程高效且全面。
功能列表
- 迭代研究循环:系统通过多次迭代优化搜索查询,确保信息收集全面。
- 异步处理:搜索、网页提取、评估和上下文提取同时进行,提高速度。
- 重复过滤:在每轮迭代中聚合并去重链接,避免重复处理相同链接。
- LLM 驱动决策:利用大语言模型生成新搜索查询、决定页面有用性、提取相关上下文并生成最终报告。
- Gradio 界面:提供一个功能性用户界面,便于使用。
使用帮助
安装流程
- 克隆或打开笔记本:下载笔记本文件或直接在 Google Colab 中打开。
- 安装 nestasyncio:运行第一个单元格以设置 nestasyncio。
- 配置 API 密钥:将笔记本中的占位符值替换为实际的 API 密钥,包括 OPENROUTERAPIKEY、SERPAPIAPIKEY 和 JINAAPIKEY。
使用步骤
- 运行笔记本单元格:按顺序执行所有单元格。笔记本会提示输入研究查询/主题和可选的最大迭代次数(默认是 10 次)。
- 初始查询和搜索生成:笔记本使用 LLM 生成初始搜索查询。
- 异步搜索和提取:并行执行 SERPAPI 搜索,聚合唯一链接,并并行处理每个链接以确定页面有用性并提取相关上下文。
- 迭代优化:每轮后,LLM 分析聚合的上下文,决定是否需要进一步的搜索查询。
- 生成最终报告:一旦 LLM 指示不再需要进一步研究(或达到迭代限制),根据所有收集的上下文生成最终报告。
- 查看最终报告:最终综合报告将打印在输出中。
详细操作流程
- 输入和查询生成:用户输入研究主题,LLM 生成最多四个不同的搜索查询。
- 并发搜索和处理:每个搜索查询同时发送到 SERPAPI。
- 去重:在当前迭代中聚合并去重所有检索到的链接。
- 上下文提取:处理每个链接以确定页面有用性并提取相关上下文。
- 迭代优化:分析聚合的上下文,决定是否需要进一步的搜索查询。
- 最终报告生成:生成基于所有收集上下文的最终综合报告。