在运行系统之前,请确保您已安装以下环境:
| 软件/工具 | 版本要求 | 推荐版本 |
|---|---|---|
| >= 1.8 | 1.8 | |
| >= 5.7.0 | 5.7 | |
| 4.x | 4.4.40 | |
| >= 5.0 | 5.0 | |
| >= 3.6 | 3.6 | |
| >= 16 | 16 |
提示: 前端安装完
Node.js后,建议设置淘宝镜像源以提升依赖包下载速度。不推荐使用cnpm,可能会引入一些不可预知的问题。npm config set registry https://registry.npmmirror.com
前往 【qKnow Gitee 下载页面】 下载项目并解压到您的工作目录。
├─qknow-framework # 公共配置模块
├─ ├─qknow-auth # oauth2模块
├─ ├─qknow-common # 共通模块
├─ ├─qknow-config # 配置模块
├─ ├─qknow-es # es模块
├─ ├─qknow-file # 文件管理模块
├─ ├─qknow-generator # 代码生成器
├─ ├─qknow-mybatis # mybatis配置
├─ ├─qknow-neo4j # neo4j数据库模块
├─ ├─qknow-pay # 支付模块
├─ ├─qknow-quartz # 定时任务模块
├─ ├─qknow-redis # redis模块
├─ ├─qknow-security # security模块
├─ ├─qknow-websocket # websocket模块
├─qknow-module-app # 知识应用模块
├─qknow-module-dm # 数据管理模块
├─qknow-module-ext # 知识抽取模块
├─qknow-module-kmc # 知识中心模块
├─qknow-module-system # 系统管理模块
├─qknow-server # 启动项目
├─qknow-ui # 前端模块
├─sql # sql脚本
├─README.md # 相关介绍
├─QUICKSTART.md # 快速启动
├─qknow-ui # 前端模块
├─ ├─public # 静态资源目录
├─ ├─src
├─ | ├─api # 接口
├─ | ├─assets # 图片、样式等资源
├─ | ├─components # 通用组件
├─ | ├─layout # 布局
├─ | ├─plugins # 插件
├─ | ├─router # 路由
├─ | ├─store # 状态管理
├─ | ├─utils # 工具类
├─ | ├─views # 页面视图
├─ | | ├─app # 知识应用模块
├─ | | ├─dm # 数据管理模块
├─ | | ├─ext # 知识抽取模块
├─ | | ├─kmc # 知识中心模块
├─ | | ├─system # 系统管理模块
├─ ├─.env.development # 开发环境配置
├─ ├─.env.production # 生产环境配置
├─ ├─vite.config.js # Vite配置文件
- 创建 MySQL 数据库:
qknow_dev - 导入数据脚本:
qknow_20250522.sql、quartz.sql
路径:qKnow/qknow-server/src/main/resources/application-dev.yml
datasource:
type: mysql
mysql:
driver-class-name: com.mysql.cj.jdbc.Driver
url: 数据库地址
username: 数据库账号
password: 数据库密码
- Neo4j版本要求4.4.x以上,推荐使用4.4.40版本。
- 由于Neo4j要求java 11以上环境,系统使用java 8版本运行,可能会导致Neo4j安装失败。所以我们推荐使用docker安装Neo4j,避免环境冲突问题。
- 如果您坚持使用本地部署Neo4j,请配置两套java环境分别运行Neo4j及qKnow。
- 进入Neo4j安装目录,在bin目录下,执行
./neo4j stop将服务关掉。
- 进入Neo4j安装目录,在bin目录下,执行以下导入命令。
# 命令说明: --force 表示强制覆盖,database如果不存在,则创建新数据库。
# dump文件: sql/neo4j/neo4j.dump。 注:以下命令行中的路径请填写您的绝对路径。
./neo4j-admin load --from=dump文件路径 --database=您的数据库名称 --force - 进入Neo4j安装目录,在conf目录下,找到
neo4j.conf文件,修改数据库名称:dbms.default_database=您的数据库名称
Tips:若使用docker运行neo4j,发生停止主进程自动退出容器现象,可以修改容器启动方式,例如:通过使用 --init 参数,让主进程停止,容器不会立即退出。具体操作方式请自行百度或AI。
- 进入Neo4j安装目录,在bin目录下,执行
./neo4j start启动服务
路径:qKnow/qknow-framework/qknow-neo4j/src/main/resources/application-neo4j-dev.yml
neo4j:
uri: 数据库地址
user: 数据库账号
password: 数据库密码路径:qKnow/qknow-server/src/main/resources/application.yml
server:
port: 端口 # 默认为8090
servlet:
context-path: /应用路径 # 应用访问路径,默认为空当前开源版本采用 开源中文知识图谱抽取框架开箱即用特别版DeepKE-cnSchema 作为知识抽取工具。请参考官方文档进行安装,推荐使用 Docker 安装。
Tips:我们基于DeepKE源码做了一些二开。如果你不想修改DeepKE源码,直接跳过当前步骤,可以到我们的交流群里,群文件中有已经修改好的镜像。下载后解压缩,直接使用docker命令加载镜像:
docker load -i deepke.tar
docker容器内路径:DeepKE/example/triple/cnschema/predict.py
替换文件:qKnow/bin/DeepKE/predict.py
docker容器内路径:DeepKE/example/triple/cnschema/conf/predict.yaml
替换文件:qKnow/bin/DeepKE/predict.yaml
text: 歌曲《人生长路》出自刘德华国语专辑《男人的爱》,由李泉作词作曲,2001年出行发版。
nerfp: 你的NER模型地址
refp: 你的RE模型地址
lm_file: 你的NER模型地址
num_hidden_layers: 1
type_rnn: LSTM
input_size: 768
hidden_size: 100
num_layers: 1
dropout: 0.3
bidirectional: true
last_layer_hn: true其中NER模型地址、RE模型地址,可在DeepKE提供的链接中进行下载。
注意:实体类型配置请参考以下DeepKE官网文档提供的类型,若需抽取其他类型,需重新训练模型。训练方式请参考 DeepKE 官方文档。
路径:qKnow/bin/DeepKE/start.sh
#!/bin/bash
# DeepKE.sh
if [ $# -lt 1 ]; then
echo "Usage: $0 <text>"
exit 1
fi
TEXT="$1"
# 注意:此处请换成你的docker容器id
# 注意:建议在本地命令行中运行以下测试命令,保证能够成功执行predict.py文件。
# 测试命令:docker exec dabea2a436b6 python -u predict.py "text='歌手周杰伦创作了多首经典歌曲,如《稻香》,这首歌深受中国各地听众的喜爱。'"
docker exec dabea2a436b6 python -u predict.py "text='$TEXT'"DeepKE抽取依赖CPU、GPU性能,建议抽取的文件不宜过大,否则抽取时间会很长。
- 使用 IntelliJ IDEA 或 Eclipse 导入项目。
- IDE 将自动加载 Maven 依赖,初次加载可能较慢。
- 运行
tech.qiantong.qknow.server.QKnowApplication.java。启动成功后,可通过http://localhost:8090访问后端服务。 - 出现以下提示,表示后端服务启动成功:
(♥◠‿◠)ノ゙ 千知平台启动成功 ლ(´ڡ`ლ)゙
_ __
__ _| |/ /_ __ _____ __
/ _` | ' /| '_ \ / _ \ \ /\ / /
| (_| | . \| | | | (_) \ V V /
\__, |_|\_\_| |_|\___/ \_/\_/
|_|
注意: 仅启动后端服务不会显示静态页面,请继续部署前端服务。
Tips: 如果提示缺少依赖包aspose-words-java、aspose-cells-java时,需要将项目根目录下lib文件夹中的两个jar包引入,在项目根目录下运行如下两行代码:
mvn install:install-file -Dfile=lib/aspose-cells-21.8.cracked.jar -DgroupId=com.aspose-cells -DartifactId=aspose-cells-java -Dversion=21.8 -Dpackaging=jar
mvn install:install-file -Dfile=lib/aspose-words-15.8.0-jdk16.jar -DgroupId=com.aspose-words -DartifactId=aspose-words-java -Dversion=15.8.0 -Dpackaging=jar
// vite 相关配置
server: {
port: 80,
host: true,
open: true,
proxy: {
"/dev-api": {
target: "http://localhost:8090",
changeOrigin: true,
rewrite: (p) => p.replace(/^\/dev-api/, ""),
},
}
}首先,导航到 qknow-ui 目录下:
# 进入项目目录
cd qknow-ui接下来,安装项目的依赖包。这里我们使用淘宝镜像源以加速下载速度:
# 安装依赖(推荐使用淘宝镜像)
npm install --registry=https://registry.npmmirror.com最后,运行以下命令来启动前端开发服务器:
# 本地开发 启动项目
npm run dev打开浏览器,输入 http://localhost。默认账户/密码为 qKnow/qKnow123。若能正确展示登录页面,并能成功登录,菜单及页面展示正常,则表明环境搭建成功。
提示: 因为本项目是前后端完全分离的,所以需要前后端都单独启动好,才能进行访问。
希望这个文档能够帮助您更好地理解和操作 千知平台(qKnow) 项目!
