DeepRearch深度研究:基于Python的AI驱动智能搜索与深度研究解决方案DeepRearch深度研究是一个基于Python的AI驱动智能搜索与深度研究解决方案,通过Agent架构和精准搜索策略,帮助用户从海量信息中获取高质量、高相关性的资料,强调提升搜索资料的质量远比罗列上百个网页更有价值。DeepRearch主要功能和关键特性包括:支持完全本地部署,除大型模型API外不依赖任何在线服务;提供可视化的研究过程,实时“直播”AI从规划、搜索、评估到迭代深化的每一步;提供兼容OpenAI格式的API服务,便于集成;通过大模型对网页内容进行压缩,提高有效信息密度并扩大上下文访问范围;实现多个大型模型协同工作以充分发挥各自能力;允许用户通过提示词控制搜索语言和资料来源等过程;内置了大量精心设计的Prompt和消息处理机制,以精确引导LLM完成复杂的搜索规划、信息评估和内容生成任务,并已在Gemini 2.5 Flash模型上经过数十次测试无错误。
• 所有服务都能本地部署,除大模型API外,不依赖任何在线服务
• 研究过程完全透明,会实时“直播”AI从初步规划、动态搜索、评估网页到迭代深化的每一步
• 基于Flask构建,提供符合OpenAI格式的API接口
• 借助大模型压缩网页内容,减少上下文长度,提高有效信息密度,相同上下文下能访问更多网页
• 多个大模型协同工作,充分发挥各自能力完成任务
• 用户通过提示词,能控制搜索使用的语言、资料来源限制等
• 内置大量精心设计的Prompt与消息处理,指导LLM完成复杂的搜索规划、信息评估和内容生成任务,全部使用Gemini 2.5 flash模型时,测试数十次未出现任何差错
1、用户发起研究请求
2、DeepResearch分析请求,制定初步计划;若需要更多信息,会询问用户以完善计划
3、用户提供额外需求或确认后,开始核心研究循环:
• 生成搜索关键词 • 评估搜索结果价值,更新搜索计划 • 爬虫提取有价值网页 • 压缩内容,提高信息密度
4、判断信息是否足够,足够则生成最终报告,用户接收研究报告
提供两种部署方式:使用Docker(推荐)或直接在本地环境运行。
这种方式最简单,不用手动管理Python环境和依赖。项目根目录已提供Dockerfile和docker-compose.yml文件。
使用Docker Compose(推荐):项目根目录的docker-compose.yml文件内容如下:
version: '3'
services:
deepresearch:
container_name: deepresearch
image: cat3399/deepresearch:latest
ports:
- "5000:5000"
# volumes:
# - ./.env:/app/.env # 若想使用本地的.env文件,取消此行注释
在项目根目录运行docker-compose up -d即可启动服务。注意:volumes部分默认被注释,若想将本地.env文件映射到容器,取消注释后再运行。
使用Docker CLI:若不使用Docker Compose,可直接运行docker run -d --name deepresearch -p 5000:5000 cat3399/deepresearch:latest。
服务启动后,通过http://127.0.0.1:5000访问API服务,或通过http://127.0.0.1:5000/setting访问可视化配置页面。
1、环境准备:确保安装Python 3.8+,建议使用uv或venv等虚拟环境。
2、安装依赖:克隆仓库到本地后,在项目根目录运行pip install -r requirements.txt。
3、配置环境变量:可通过http://127.0.0.1:5000/setting进入配置文件的webui进行可视化配置,保存后配置立即生效,不用重启服务。
快速上手(仅使用Gemini):复制.env.template文件并重命名为.env,只需在配置文件中填入ALL_IN_GEMINI_KEY。支持多个Gemini API Key,用英文逗号,分隔。此配置中,基础与总结模型使用2.5pro,评估使用2.5flash,压缩使用2.5flash lite,具体模型配置优先级高于默认值。
完整配置(适用于所有模型):复制.env.template文件并重命名为.env,根据实际情况填写必要的API密钥和URL。
• 所有模型的API_KEY字段支持填写多个密钥,用逗号,分隔,程序会随机选择使用。
• 除内容压缩模型外,若特定模型的配置项(如SEARCH_KEYWORD_API_KEY等)留空,系统默认使用BASE_CHAT_*的配置。
• API_TYPE字段指定API格式,留空默认为OPENAI格式,除内容压缩模型,其余暂不支持Gemini格式(Gemini有OpenAI兼容模式)。
关键配置项说明:
基础配置:API_KEY是访问本项目API服务时所需的授权密钥。
搜索引擎配置:优先使用SearXNG,请求失败时自动切换到Tavily。需配置SEARXNG_URL(自建或公共SearXNG实例,支持JSON格式输出)、TAVILY_KEY(Tavily服务的API密钥)等。
网页爬虫配置(至少配置一个):优先级为FireCrawl>Crawl4ai>Jina,需配置对应服务的URL和API密钥等。
搜索与研究参数:包括抓取网页时的并发任务数、普通/深度研究模式下处理的网页数量、深度研究模式的最大迭代次数等。
大模型(LLM)配置:包括基础对话模型、搜索关键词生成模型、搜索结果评估模型、网页内容压缩模型、最终总结生成模型的API密钥、URL、模型名称等。
4、运行服务:一键测试所有API是否正常可运行python main.py --test;在项目根目录运行python main.py,服务默认启动在http://0.0.0.0:5000。
搜索引擎API(二选一):Searxng(自建或使用公共服务器,需开启JSON格式支持)、Tavily(通过官网获取API密钥)。
网页爬虫(三选一):FireCrawl(自建或使用官方API)、Crawl4AI(自建服务)、Jina(官方提供免费版,详见 https://jina.ai/reader/ )。
LLM:大模型API供应商提供的服务。
任何兼容OpenAI API格式的客户端(如LobeChat、One-API、OpenWebui、Cherry Studio)都能与服务交互。以Cherry Studio为例,API地址可设为http://127.0.0.1:5000或http://127.0.0.1:5000/v1/chat/completions。使用带deep-research的模型ID可触发深度研究模式,支持的模型ID列表可通过/v1/models接口获取。
包括Flask(Web框架)、OpenAI Python SDK(与OpenAI兼容的API交互)、Requests(HTTP请求库)、BeautifulSoup4(HTML/XML解析)、PyMuPDF、python-docx、openpyxl(解析PDF、DOCX、XLSX等文件)、python-dotenv(加载环境变量)等。完整依赖列表见requirements.txt。
当用户要求“获取gemini、claude、deepseek、glm、qwen全部对话模型的参数和官方api的价格,用表格清晰展示,确保数据完整,最后总结不遗漏”时,项目会:
1、分析需求,制定初步计划,包括针对每个模型搜索官方技术文档和定价页面、整理数据为表格、总结信息等。
2、根据用户进一步要求(如用英文搜索、表格按厂商分开、资料来源为官方)调整计划。
3、执行深度研究,最终生成按厂商分类的表格,包含模型名称、免费额度、上下文窗口、API支持、定价等信息,并进行总结。
AI学术写作助手:学术论文润色和语言优化工具
Gemini对话与提示管理扩展工具 Gemini Voyager
AI驱动的股票研究平台 Multi-Agent Investment Research Platform
AI驱动的加密货币自动化交易系统 open-nof1.ai
基于Next.js、AI SDK和Workflow DevKit构建的线索鉴定与人工审核代理工具 Lead Agent
XiaomiMiMo/MiMo-Audio-7B-Instruct模型微调工具MiMo-Audio-Training
基于DeepSeek-OCR模型的文档解析工具 DeepSeek-OCR Studio
AI-Trader:让多个AI模型在纳斯达克100股票市场中进行完全自主的零人工干预的竞争性交易
辅助软件开发任务和终端操作的命令行代理工具 Kimi CLI
AI 编码代理工具 deer-code,帮助开发者学习和构建智能的编码助手