The deep-research enables efficient RAG retrieval and multi-source data analysis, supporting intelligent reasoning for automated complex research tasks.
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 10 个月前 | ||
| 6 个月前 | ||
| 4 个月前 | ||
| 6 个月前 | ||
| 5 个月前 | ||
| 6 个月前 | ||
| 6 个月前 | ||
| 5 个月前 | ||
| 5 个月前 | ||
| 6 个月前 | ||
| 6 个月前 | ||
| 6 个月前 | ||
| 5 个月前 | ||
| 10 个月前 | ||
| 11 个月前 | ||
| 5 个月前 | ||
| 7 个月前 | ||
| 5 个月前 | ||
| 6 个月前 | ||
| 6 个月前 | ||
| 6 个月前 | ||
| 5 个月前 | ||
| 5 个月前 |
DeepInsight
DeepInsight是面向企业的深度研究智能体,通过采用多Agent协同、上下文工程、MCP以及异构知识检索等技术,构建效果好、扩展易、体验优的关键能力,为在鲲鹏、昇腾以及其他智算平台上搭建开箱即用的深度研究能力提供开源范例与最佳实践。
您可以通过私有化部署进行体验,参见快速开始。
1. 软件架构
DeepInsight采用多Agent架构,通过多种不同角色Agent协作,提升复杂研究任务的完成能力:
- 意图识别Agent:基于用户研究主题,向用户追问需求并细化
- 计划制定Agent:基于细化后的需求,制定由多个研究任务组成的计划,并管理各任务状态,支持由用户自定义调整计划
- 每个任务交给一个研究团队进行研究,每个研究团队内部构成“研究-执行-评估”迭代式循环:
- 研究者Agent:对研究任务补充上下文(目标、验收标准、指导)后下发给执行者Agent,判断任务是否完成并给出下一步指导,过程中可追问用户补充所需信息
- 执行者Agent:按照给定的研究任务选择相应的工具完成每个研究任务
- 评估者Agent:对执行者Agent的执行结果进行评估反思,并检测知识冲突情况
- 报告生成Agent:汇总各个研究任务结果,生成指定类型的多模态结构化报告

2. 快速开始
方式一:命令行运行
- 安装依赖
conda create -n deepinsight python=3.11
poetry install
cp .env.example .env
# 在 .env 中填写数据库与服务配置,并添加所需 API Key(例如:DEEPSEEK_API_KEY)
- 迁移数据库到最新版本
alembic upgrade head
- 命令行使用
-
查看帮助:
di --help或python -m deepinsight.cli.main --help -
会议管理(conf)
- 列表:
di conf list - 删除:
di conf remove --id 12 - 顶会洞察:
di conf gen --name "ICLR 2025" --files-src ./path/to/files - 会议问答:
di conf chat --name "ICLR 2025" --files-src ./path/to/files --question "今年最佳论文有哪些创新点?" - 跨会议主题分析:
di conf topic --question "分布式系统一致性" --name "HOTOS 2025, OSDI 2025" --file-src "./path1,./path2"- 支持多个会议(用逗号分隔),分析跨会议的主题研究
- 生成统计信息、论文分析、总结等 Markdown 文件,并自动生成 PDF 报告
- 输出目录:
data/conference_report_result/cross_topic-<会议名称>/
- 快速测试(使用示例数据):
di conf gen --name "HOTOS 2025" --files-src ./example/papers/hotos-2025/
- 列表:
-
深度研究助手(resch)
- 启动研究:
di resch gen --topic "人工智能发展趋势" - 查看帮助:
di resch --help
- 启动研究:
-
后端服务(api)
- 启动后端服务:
di api start --config ./config.yaml - 指定专家配置(可选):
di api start --config ./config.yaml --expert-config ./experts.yaml - 也可通过环境变量指定:
DEEPINSIGHT_CONFIG=./config.yaml di api start
- 启动后端服务:
提示:可通过环境变量 DEEPINSIGHT_CONFIG 指定配置文件路径(默认 ./config.yaml)。
图表图片路径配置(image_path_mode & image_base_url)
- 在
config.yaml的workspace段控制图表图片 URL 的返回策略:image_path_mode:relative或base_urlimage_base_url: 当使用base_url模式时用于拼接的基础 URL(例如http://127.0.0.1:8888/api/v1/deepinsight/charts/image)。
- 推荐设置:
- 命令行/离线生成 PDF 与 Markdown:
image_path_mode: relative - API/Web 预览:
image_path_mode: base_url并设置image_base_url指向你的服务地址。
- 命令行/离线生成 PDF 与 Markdown:
- 返回示例:
relative→../../charts/<uuid>.pngbase_url→http://<ip>:<port>/api/v1/deepinsight/charts/image/<uuid>
- 配置示例:
若在命令行模式,请将workspace: work_root: ./data chart_image_dir: charts image_path_mode: base_url image_base_url: http://127.0.0.1:8888/api/v1/deepinsight/charts/imageimage_path_mode设为relative,其余保持默认即可。
RAG 配置(多后端/多解析链)
- 在
config.yaml的rag段可分别配置engine(LightRAG 或 LlamaIndex)与parser(MinerU+VL 或 LlamaIndex)。 - 支持的典型组合:
mineru_vl + lightrag:沿用 MinerU&VL 解析 + LightRAG 索引。mineru_vl + llamaindex:保持现有解析链,索引改由 LlamaIndex 完成。llamaindex + llamaindex:由 LlamaIndex 完成“解析+索引”的全流程。
mineru_vl.enable_vl控制是否调用视觉模型生成图片描述;llamaindex段可设置 embedding/LLM、持久化路径以及是否启用 LlamaParse。- 示例:
rag: engine: type: lightrag lightrag: enable_graph_extraction: false parser: type: mineru_vl mineru_vl: enable_vl: true
方式二:Web方式运行
启动后端服务
conda create -n deepinsight python=3.11
poetry install
di api start --config ./config.yaml
# 或直接运行脚本:
python deepinsight/api/app.py --config ./config.yaml
启动前端服务
cd web
npm install
npm run dev
3. 使用说明
- 打开浏览器窗口,点击深度研究按钮界面。选择数据来源,包括知识库、内网搜索、外网搜索等。
- 输入研究主题,例如“MCP协议技术分析” ,智能体会为您生成初始计划供您确认,或点击“修改计划”按钮调整计划。
- 点击“开始研究”确认计划,智能体自动制定研究计划、执行信息检索,整合为研究报告。
具体使用指导见用户指南
macOS PDF 生成提示(WeasyPrint 依赖)
- 在 macOS 上通过命令行将 Markdown 导出为 PDF 时,WeasyPrint 需要系统动态库支持。
- 请设置如下环境变量(建议写入
~/.zshrc或~/.bashrc):
export DYLD_FALLBACK_LIBRARY_PATH=/opt/homebrew/lib:$DYLD_FALLBACK_LIBRARY_PATH
- 设定后重新打开终端或执行
source ~/.zshrc使配置生效。 - 如仍有问题,请安装 WeasyPrint 所需库(示例:
brew install cairo pango gdk-pixbuf libffi)以及中文字体(示例:brew tap homebrew/cask-fonts && brew install --cask font-noto-sans-cjk)。
4. 概念介绍与FAQ
关于本项目的更多设计理念、领域概念与常见问题,详见概念介绍与FAQ
5. 参与贡献
- Fork本仓库并新建个人分支
- 在分支上提交代码
- 新建Pull Request,等待代码评审通过后即可合入仓库