赞
踩
github
地址:https://github.com/chizhu/KGQA_HLM?tab=readme-ov-file
基于知识图谱的《红楼梦》人物关系可视化:应该是重庆邮电大学林智敏同学的毕业设计,在学习知识图谱的过程中参考使用。
文件树:
app.py
是整个系统的主入口templates
文件夹是HTML
的页面index.html
欢迎界面search.html
搜索人物关系页面all_relation.html
所有人物关系页面KGQA.html
人物关系问答页面static
文件夹存放css
和js
,是页面的样式和效果的文件raw_data
文件夹是存在数据处理后的三元组文件neo_db
文件夹是知识图谱构建模块config.py
配置参数create_graph.py
创建知识图谱,图数据库的建立query_graph.py
知识图谱的查询KGQA
文件夹是问答系统模块ltp.py
分词、词性标注、命名实体识别spider
文件夹是爬虫模块get_*.py
是之前爬取人物资料的代码,已经产生好images
和json
可以不用再执行show_profile.py
是调用人物资料和图谱展示在前端的代码pip install -r requirement.txt
neo4j
图数据库,并配好环境(注意neo4j
需要jdk8
)。修改neo_db
目录下的配置文件config.py
,设置图数据库的账号和密码。neo4j
教程:neo4j下载安装最新教程 2024.02neo_db
目录下,执行python create_graph.py
建立知识图谱ltp
模型。ltp
介绍:LTP/pyltp安装和使用教程KGQA
目录下,修改ltp.py
里的ltp
模型文件的存放目录LTP_DATA_DIR = 'e:/ltp_data_v3.4.0' # ltp模型目录的路径
python app.py
,浏览器打开localhost:5000
即可查看app.py
项目有三个主要功能,分别是人物关系可视化中的检索人物关系、红楼梦人物关系全貌和问答系统中的人物关系问答。
会通过echarts
可视化展示出林黛玉有关的人物关系,应用的是neo4j知识图谱。
展示整个红楼梦人物关系的知识图谱。
人物关系问答涉及基于ltp的实体识别NER,关系抽取和知识图谱的搜索,爬虫的部分已经提前做好,人物信息完整,但是有部分错误。
提问:贾宝玉的奶奶的儿子的妻子是谁?
[Record({'p.Name': '贾赦', 'n.Name': '贾母', 'r.relation': '儿子', 'p.cate': '贾家荣国府', 'n.cate': '史家'}), Record({'p.Name': '贾政', 'n.Name': '贾母', 'r.relation': '儿子', 'p.cate': '贾家荣国府', 'n.cate': '史家'})]
============================================================================================================
[Record({'p.Name': '王夫人', 'n.Name': '贾政', 'r.relation': '妻', 'p.cate': '王家', 'n.cate': '贾家荣国府'})]
============================================================================================================
127.0.0.1 - - [19/Feb/2024 16:40:54] "GET /KGQA_answer?name=贾宝玉的奶奶的儿子的妻子是谁? HTTP/1.1" 200 -
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。