基于多模态多智能体的深度文献研究系统,支持从PDF文档中提取知识、构建知识图谱,并通过协同工作的多个智能体完成复杂的研究任务。
- 数据预处理: 使用PaddleOCR和PDF解析工具提取文本、表格、图片和元数据
- 向量知识库: 基于bge-m3嵌入模型和Faiss索引实现高效语义检索
- 知识图谱: 使用ERNIE模型进行NER和关系抽取,通过NetworkX构建知识网络
- Planning Agent: 使用ERNIE-4.5-21B-A3B-Thinking进行问题分解(DAG结构)
- Search Agent: 使用ERNIE-4.5-VL-28B-A3B进行混合检索和多模态RAG
- Generation Agent: 使用ERNIE-4.5-VL-28B-A3B生成结构化研究报告
- 前端: Gradio Web界面
- 部署: vLLM框架实现高性能本地化部署
- 深度学习框架: PaddlePaddle
- 向量检索: Faiss
- 知识图谱: NetworkX
- OCR: PaddleOCR
- 前端: Gradio
- 部署: vLLM
pip install -r requirements.txt复制 config.example.yaml 到 config.yaml 并配置相关参数:
# 模型配置
models:
planning_agent: "ERNIE-4.5-21B-A3B-Thinking"
search_agent: "ERNIE-4.5-VL-28B-A3B"
generation_agent: "ERNIE-4.5-VL-28B-A3B"
embedding_model: "BAAI/bge-m3"
# 知识库配置
knowledge_base:
vector_db_path: "./data/vector_db"
knowledge_graph_path: "./data/knowledge_graph"
documents_path: "./data/documents"from knowledge_base import KnowledgeBaseBuilder
builder = KnowledgeBaseBuilder()
builder.build_from_pdfs("./documents")from deep_research_system import DeepResearchSystem
system = DeepResearchSystem()
result = system.research("总结一下2025年关于大模型MoE架构的最新进展")python app.pylocaldocresearcher/
├── agents/ # 智能体模块
│ ├── __init__.py
│ ├── planning_agent.py # 规划智能体
│ ├── search_agent.py # 搜索智能体
│ └── generation_agent.py # 生成智能体
├── knowledge_base/ # 知识库模块
│ ├── __init__.py
│ ├── vector_store.py # 向量存储
│ ├── knowledge_graph.py # 知识图谱
│ └── document_processor.py # 文档处理
├── models/ # 模型封装
│ ├── __init__.py
│ └── ernie_model.py # ERNIE模型接口
├── utils/ # 工具模块
│ ├── __init__.py
│ ├── config.py # 配置管理
│ └── logger.py # 日志管理
├── deep_research_system.py # 主系统
├── app.py # Gradio应用
├── config.yaml # 配置文件
├── requirements.txt # 依赖
└── README.md # 说明文档
- ✨ 基于DAG的问题分解和规划
- 🔍 混合检索(向量检索 + 知识图谱)
- 🖼️ 多模态理解(文本 + 图表)
- 📊 知识图谱可视化
- 📝 自动生成结构化研究报告
- 🚀 高性能vLLM部署
MIT License