# knowledgeQuery **Repository Path**: mw2955695673/knowledge-query ## Basic Information - **Project Name**: knowledgeQuery - **Description**: 一个基于知识图谱的知识问答小系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 0 - **Created**: 2021-06-15 - **Last Updated**: 2022-09-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # knowledgeQuery #### 介绍 一个基于知识图谱的知识问答小系统 #### 软件架构 ![image](https://gitee.com/mw2955695673/knowledge-query/raw/master/images/07.png) #### 安装教程 1.git clone https://gitee.com/mw2955695673/knowledge-query 2.npm install 安装所有依赖 #### 项目实现说明 1.数据爬取 数据来源基于王者荣耀官网,用request包发送请求,以json文件格式保存数据。 2.数据处理 对爬取的数据进行清理,提取系统需要的数据,提取实体(英雄,装备,铭文)节点,同时生成分词所要的词典文件 3.构建知识图谱 ![image](https://gitee.com/mw2955695673/knowledge-query/raw/master/images/01.png) ![image](https://gitee.com/mw2955695673/knowledge-query/raw/master/images/02.png) ![image](https://gitee.com/mw2955695673/knowledge-query/raw/master/images/03.png) 4.构建问题模块 ![image](https://gitee.com/mw2955695673/knowledge-query/raw/master/images/06.png) ![image](https://gitee.com/mw2955695673/knowledge-query/raw/master/images/08.png) ![image](https://gitee.com/mw2955695673/knowledge-query/raw/master/images/09.png) ![image](https://gitee.com/mw2955695673/knowledge-query/raw/master/images/10.png) 5.为每种问题类型设计对应的与数据库交互的接口,查询用户所要的数据信息。 6.构造与用户交互的函数,返回用户所要数据,实现自动问答。 #### 使用说明 1.首先你要拥有neo4j数据库以及其依赖的环境。 2.你要拥有node.js运行环境。 3.neo4j.bat console打开你的neo4j数据库。 4.cd knowledge-query 切换到当前项目所在根目录 5.更改creatData.js和queryDatabase.js的数据库连接的用户名和密码。 6.node 07.js设置自己的分词字典。 7.node creatData.js构建知识图谱(创建neo4j数据节点、属性、节点之间的关系)。 8.node response.js 开始问答 9.首先,输入“你好” 10.项目结果: ![image](https://gitee.com/mw2955695673/knowledge-query/raw/master/images/04.png) ![image](https://gitee.com/mw2955695673/knowledge-query/raw/master/images/04.png) #### 文件功能说明 01.js 数据爬取 02.js 数据处理 07.js 创建项目所需词典文件 buildType.js 生成分词向量对象 余弦相似性算法实现 获取匹配问题类型 获取节点对象 creatData.js 用于构建知识图谱 matchQuestion.js 用于问题的匹配类型 queryDatabase.js 用于与数据库交互 response.js 用于与用户交互函数 以.txt文件结尾的为字典文件,以.json文件为结尾的是数据文件。 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)