计算机毕业设计基于知识图谱(Neo4j)和大语言模型(LLM)的图检索增强(GraphRAG)的地质矿产知识管理智能问答系统 人工智能 大模型毕业设计(源码+文档+PPT+讲解)

项目概述

本项目是一个基于知识图谱和大语言模型技术的地质矿产知识管理智能问答系统,采用前后端分离架构设计,集成 GraphRAG(图检索增强生成)技术,面向泥河铁矿、庐枞盆地等地质矿产勘查与成矿研究场景,为用户提供精准的地质矿产领域知识查询和智能问答服务。系统通过构建矿床—矿体—地层—构造—蚀变—品位等实体的知识图谱,实现了基于知识图谱的检索增强生成,提供比传统 RAG 更准确的问答能力。

核心创新点

知识图谱驱动:使用 Neo4j 图数据库构建地质矿产领域的复杂实体关系网络

GraphRAG 技术:图检索增强生成,结合知识图谱提升问答准确性

智能问答:集成大语言模型(GLM)API,支持自然语言交互和图片上传识别

文档管理:支持多种格式文档上传、内容提取、摘要生成

知识图谱构建:通过大语言模型自动从文档中提取实体和关系的三元组,构建知识图谱

实时可视化:提供知识图谱的交互式可视化界面,支持节点搜索

权限管理:支持管理员和普通用户两种角色,权限分离

矿床档案管理:完整的矿床基本信息管理系统

勘探记录管理:钻孔与勘探阶段记录的详细记录和统计分析

应用场景

用户端功能

用户管理:注册、登录、个人信息管理、密码修改、头像上传

智能问答:基于知识图谱的智能问答,支持多轮对话、图片上传识别

会话管理:创建会话、切换会话、重命名会话、删除会话、自动生成标题

问答历史:查看问答记录、知识图谱可视化展示、矿床档案和勘探记录检索展示、关键词提取展示

导出功能:导出问答咨询记录为 Word 文档

个人中心:个人资料修改、密码修改、头像更换、注册时间展示

管理端功能

数据统计:用户数、文档数、会话数、问答记录数、矿床数、勘探记录数统计、数据趋势可视化

用户管理:用户信息查看、状态管理、角色管理、用户删除

文档管理:文档上传、文档 CRUD 操作、文档内容查看、AI 摘要生成、文档目录管理

文档目录管理:创建文档目录、目录树展示、文档分类归档

知识图谱管理

数据同步:从文档中提取实体和关系,同步到 Neo4j

全量重建:重新构建整个知识图谱

增量构建:仅处理未构建图谱的文档

任务状态查询:查看图谱构建任务的进度和状态

节点搜索:搜索特定实体及其邻居节点

知识图谱可视化

交互式图谱展示:使用 ECharts 展示节点和关系

节点类型过滤:按实体类型筛选节点

关系类型过滤:按关系类型筛选边

节点搜索:搜索节点并展示 1 层邻居关系

布局切换:支持力导向布局和圆形布局

节点连接数展示:显示每个节点的实际连接数(度数)

统计信息:节点数、关系数、类型分布统计

矿床档案管理

矿床档案管理:管理矿床的基本信息(编号、名称、矿床类型、容岩围岩、成矿过程、勘查规范、品位信息、图片等)

完整 CRUD 操作:创建、查询、更新、删除矿床档案

图片上传:支持矿床相关图片上传和管理

搜索和筛选:按矿床名称、编号搜索

数据统计:矿床数量、矿床类型分布统计

勘探记录管理

勘探记录管理:管理钻孔与勘探阶段记录

多图上传:支持每个勘探记录上传多张图片(岩心图、剖面图等)

关联矿床档案:每个勘探记录关联到对应的矿床

按矿床筛选:查看特定矿床的所有勘探记录

关键词搜索:按钻孔编号、勘查区等关键词搜索

多维度统计:按勘查区、数据质量状态、矿床统计分析

核心技术功能

GraphRAG 检索:结合知识图谱检索策略

实体识别:从用户问题中识别矿床、矿体、地层、蚀变、品位等关键实体

关系推理:基于知识图谱的多跳关系推理

上下文构建:为 LLM 构建包含实体描述和关系的结构化上下文

三元组提取:使用 LLM 从文档中提取<头实体, 关系, 尾实体>三元组

异步任务处理:知识图谱构建任务异步执行,支持进度查询

技术架构

整体架构设计

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐

│   前端服务       │    │   后端服务       │    │   图数据库       │

│   (Vue3)        │◄──►│   (Flask)       │◄──►│   (Neo4j)       │

│   Port: 3000    │    │   Port: 5010    │    │ Port: 7687|7474  │

└─────────────────┘    └─────────────────┘    └─────────────────┘

        │                       │                       │

        │                       │                       │

        ▼                       ▼                       ▼

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐

│   文件存储       │    │   SQLite数据库   │    │   大语言模型API   │

│   (本地存储)     │    │   (本地文件)     │    │  (GLM)      │

└─────────────────┘    └─────────────────┘    └─────────────────┘

技术栈详解

前端技术栈

Vue 3 - 渐进式 JavaScript 框架,采用 Composition API

TypeScript - 静态类型检查,提高代码质量

Element Plus - 基于 Vue3 的 UI 组件库

Vue Router - 单页应用路由管理

Pinia - Vue3 官方推荐的状态管理库

Vite - 现代化前端构建工具

ECharts - 数据可视化库,用于知识图谱展示

Axios - HTTP 客户端库

Marked - Markdown 渲染库

后端技术栈

Flask - 轻量级 Python Web 框架

SQLite - 轻量级关系型数据库

Flask-CORS - 跨域资源共享支持

PyJWT - JWT 认证支持

Requests - HTTP 客户端库

python-docx - Word 文档处理

pdfplumber - PDF 文档处理

openpyxl - Excel 文档处理

算法服务技术栈

Neo4j - 图数据库,存储知识图谱

Neo4j Python Driver - Neo4j 官方 Python 客户端

GLMAPI - 大语言模型 API(glm-4.7-flash 文本模型 + glm-4.6v-flash 多模态模型)

异步任务处理 - 后台任务队列(知识图谱构建)

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容