Skip to content

基于知识图谱的《红楼梦》人物关系可视化及问答系统

Notifications You must be signed in to change notification settings

liuxirui123/KGQA_HLM

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KGQA_HLM

基于知识图谱的《红楼梦》人物关系可视化及问答系统

Project Python version Issues Lisence Lisence

文件树:

  1. app.py是整个系统的主入口
  2. templates文件夹是HTML的页面
    |-index.html 欢迎界面
    |-search.html 搜索人物关系页面
    |-all_relation.html 所有人物关系页面
    |-KGQA.html 人物关系问答页面
  3. static文件夹存放css和js,是页面的样式和效果的文件
  4. raw_data文件夹是存在数据处理后的三元组文件
  5. neo_db文件夹是知识图谱构建模块
    |-config.py 配置参数
    |-create_graph.py 创建知识图谱,图数据库的建立
    |-query_graph.py 知识图谱的查询
  6. KGQA文件夹是问答系统模块
    |-ltp.py 分词、词性标注、命名实体识别
  7. spider文件夹是爬虫模块
    |- get_*.py 是之前爬取人物资料的代码,已经产生好images和json 可以不用再执行
    |-show_profile.py 是调用人物资料和图谱展示在前端的代码

部署步骤:

  • 0.安装所需的库 执行pip install -r requirement.txt
  • 1.先下载好neo4j图数据库,并配好环境(注意neo4j需要jdk8)。修改neo_db目录下的配置文件config.py,设置图数据库的账号和密码。
  • 2.切换到neo_db目录下,执行python create_graph.py 建立知识图谱
  • 3.去 这里 下载好ltp模型。ltp简介
  • 4.在KGQA目录下,修改ltp.py里的ltp模型文件的存放目录
  • 5.运行python app.py,浏览器打开localhost:5000即可查看

系统整体流程图:

流程

网站示例:
欢迎界面

欢迎界面

主界面

界面

界面

界面

界面

界面

ps:

  1. NodeSelecter -> NodeMatcher
  2. config.py中新版本py2neo的Connection profiles示例: graph = Graph("http://localhost:7474", auth=("neo4j", "123456"))
  3. No such file or directory: './raw_data/relation.txt':改为绝对路径
  4. 编码改为utf-8:file = open(path, encoding='utf-8')
  5. 下载pyltp...whl,放在pip文件夹下,cmd下载
  6. 下载ltp模型,更改pisrl文件
  7. ltp.py中Segmentor()和Postagger()语法修改:

    postagger = pyltp.Postagger() # 初始化实例

    postagger.load(pos_model_path) # 加载模型

    postagger = pyltp.Postagger(pos_model_path)
  8. 环境: Python3.6.0 - Jinja2 2.10.1 - Flask 1.1.0

About

基于知识图谱的《红楼梦》人物关系可视化及问答系统

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 66.7%
  • CSS 14.1%
  • Python 12.2%
  • JavaScript 7.0%