base on 科亿知识库 KY KMS 是一款基于Elasticsearch的文档型知识库管理系统,提供强大的全文检索与文档分类管理功能
![KYKMS](./Docs/Pics/logo_keyi.png "科亿文档知识库管理系统")
科亿知识库 KYKMS
===============
当前最新版本: V2.0.0(发布日期:20241025)
- 版本备注:专业版已经开源,详见business分支。随着新版本功能迭代,会持续把开源版也升级,敬请期待。
项目简介:
-----------------------------------
- 如果您在寻找一款知识库系统,用来将文档整理归类,并在团队内受控共享以充分利用这些文档,或者将文档分享到外部,那么科亿知识库将是您的不二之选。AI能力加持,科亿知识库将成为您的第二大脑。
- 科亿知识库,可以应用在需要对文件进行管理、分类、归集、检索、分享交流的地方,以及需要对大数据进行管理和检索的场景,尤其适合知识密集型单位和历史文档丰富的单位。
- 版本说明:开源版适合个人学习和自用,提供基础功能,无套路,可以完整运行;商用版本则提供更强大的功能,并提供技术服务,如需要请联系商务;单机版为绿色软件,下载开箱即用,功能对标专业版。
- 我们的发展策略:开源版让产品更快触达客户,方便更多的人;以高阶版本和技术服务获取收入,来维持开源版本。
- 科亿知识库,助你快速完成文件到知识的升级。我们的宗旨是: `文件简单整理,知识创造价值`
为什么选择科亿知识库?
-----------------------------------
- 两年多的产品运营历史,历经数百客户验证,背后是专业的技术团队支撑,让您使用无后顾之忧后。
- 大模型能力加持,结合本地知识库,打造最懂您的知识智能管家,让大模型帮您对知识进行分类、标签、摘要,并且在自然语言对话间获得精准、扼要的本地知识库信息。
- 支持本地化部署的大语言模型(典型:ollama),亦支持扩展对接第三方主流的大模型,如chat-GPT、通义千问、智普、文心一言等。
- 附件内图像内容自动转文本,让各种扫描件轻松实现知识提取,并支持全文检索、智能问答。
- 灵活强大的知识访问权限管理模型,您能想到的都有。同时支持灵活分享、交流模式:站内、站外分享,评价与评论体系。
- 基于强大的 Elasticsearch 检索引擎技术构建,检索能力强大,支持最全面的检索特性,可以无限可能的集群扩展,支持高达百亿级别的数量。
- 全方位内容检索,包括附件文件内容、标题、关键字、知识摘要,并支持结果中二次检索、高级组合检索,支持精准匹配,关键词高亮显示。
- 全文检索与在线预览有着齐全的文件格式支持,支持全文检索的文件格式:office系列、文本、pdf、脑图,支持在线预览的文件格式包括:office系列、pdf、ofd、文本、脑图、图片、音频、视频等。
- 在线预览支持自定义水印,保护敏感信息截屏外流。
- 适配手机端 H5,支持集成到钉钉、企业微信,支持单点登录与对接第三方系统推送知识。
- 所有能力、服务均为在本地化部署,无须联网,无须依赖外网的服务,满足企业信息安全要求。
- 性能优秀,最低配置:2核4G即可运行,典型配置:4核8G。
交流互动
-----------------------------------
- 官方站点 : [http://www.kykms.cn](http://www.kykms.cn)
- 技术文档 : 科亿知识库的使用、部署手册,技术说明,请访问 - [技术文档大全](http://docs.kykms.cn/docs/mindoc/mindoc-1ephusv88b42s)
- 本产品有五个版本:开源版、绿色单机版、专业版、旗舰版、智能版 - [版本功能比较](http://www.kykms.cn/edition)
- 智能版在线演示 : [智能版](http://kg.kykms.cn/loginRandom)
- 绿色单机版 : [试用下载](http://service.kykms.cn/download-index) - [更多介绍](http://docs.kykms.cn/docs/greenDesktop/greenDesktop-1et33iuds3f68)
- 开发环境准备与运行,请参考:[开发环境准备与运行](./开发环境准备与运行.MD)
- 本地部署试用:强烈建议[docker方式部署](http://docs.kykms.cn/docs/mindoc/mindoc-1f80r7nnv763o);此外提供多版本安装包直接下载 - [下载入口](http://service.kykms.cn/download-index)
- 技术交流QQ技术 : 782686853
- Mail :
[email protected]
- github: [https://github.com/mahonelau/kykms](https://github.com/mahonelau/kykms)
- gitee: [https://gitee.com/kyxxjs/km_community](https://gitee.com/kyxxjs/km_community)
- 微信 : 如果你有任何产品上的想法、意见或建议,或商务上的合作需求,请扫码添加我们微信进一步沟通:
![微信](./Docs/Pics/wechat.jpg)
版权声明
-----------------------------------
本着开源精神,科亿遵循 GPL-3.0 开源协议发布,提供源码用于学习、自用与技术交流,但不允许修改后和衍生的代码做为闭源的商业软件发布和销售 ! 如果需要将本产品在本地进行任何附带商业化性质行为使用, 请联系项目负责人进行商业授权 ,以遵守 GPL 协议保证您的正常使用。
科亿开源团队拥有对本开源协议的最终解释权。
KMS功能思维导图
-----------------------------------
![KY KMS](./Docs/Pics/旗舰版功能思维导图.png)
KMS技术架构图
-----------------------------------
![KY KMS](./Docs/Pics/系统架构设计.jpg)
技术架构:
-----------------------------------
#### 技术亮点
- 主流技术,生态完善,易于维护
- 前后端分离,接口文档清晰,易于二次开发
- 后端采用ES搜索引擎,可以按需实行分部署部署
#### 开发环境
- 语言:Java 8
- IDE(JAVA): IDEA / Eclipse安装lombok插件
- IDE(前端): WebStorm 或者 IDEA
- 依赖管理:Maven
- 数据库:MySQL5.7+ & Oracle 11g & Sqlserver2017
- 缓存:Redis
- Node Js: 10.0 +
- Npm: 5.6.0+
- Yarn: 1.21.1+
#### 后端
- 基础框架:Spring Boot 2.3.5.RELEASE
- 持久层框架:Mybatis-plus 3.4.1
- 检索引擎:ElasticSearch 7.6.1
- 文档处理与转换: Libre Office 7.1.4
- 文本提取:Tika 1.17
- 安全框架:Apache Shiro 1.7.0,Jwt 3.11.0
- 数据库连接池:阿里巴巴Druid 1.1.22
- 缓存框架:redis
- 日志打印:logback
- 其他:fastjson,poi,Swagger-ui,quartz, lombok(简化代码)等。
#### 前端
- [Vue 2.6.10](https://cn.vuejs.org/),[Vuex](https://vuex.vuejs.org/zh/),[Vue Router](https://router.vuejs.org/zh/)
- [Axios](https://github.com/axios/axios)
- [ant-design-vue](https://vuecomponent.github.io/ant-design-vue/docs/vue/introduce-cn/)
- [webpack](https://www.webpackjs.com/),[yarn](https://yarnpkg.com/zh-Hans/)
- [vue-cropper](https://github.com/xyxiao001/vue-cropper) - 头像裁剪组件
- [@antv/g2](https://antv.alipay.com/zh-cn/index.html) - Alipay AntV 数据可视化图表
- [Viser-vue](https://viserjs.github.io/docs.html#/viser/guide/installation) - antv/g2 封装实现
- eslint,[@vue/cli 3.2.1](https://cli.vuejs.org/zh/guide)
### 功能模块
```
├─检索首页
│ ├─普通检索
│ ├─高级检索
│ ├─精准检索
│ ├─结果中二次检索
│ ├─文件预览
│ ├─知识版本控制
│ ├─知识详情(包含知识分享、推送、评价、评论)
│ ├─目录分类浏览
│ ├─个人工作区
├─个人中心
│ ├─我的知识
│ ├─我的收藏
│ ├─我的分享
│ ├─我的消息
│ ├─修改密码
├─知识管理
│ ├─知识创建
│ ├─知识编辑
│ ├─待审核文件
│ ├─已审核文件
│ ├─文件统计
├─知识库配置
│ ├─系统参数
│ ├─分类标签定义
│ ├─目录分类定义
│ ├─文件脱敏规则
│ ├─轮播图管理
├─知识权限挂你
│ ├─知识授权
│ ├─知识分类授权
│ ├─专题授权
│ ├─部门授权
├─系统管理
│ ├─用户管理
│ ├─角色管理
│ ├─菜单管理
│ ├─权限设置(支持按钮权限、数据权限)
│ ├─表单权限(控制字段禁用、隐藏)
│ ├─部门管理
├─日志
│ ├─文档操作记录
│ ├─系统日志
└─其他模块
└─更多功能开发中。。
```
系统效果(智能版)
----
##### 公共检索
智能问答
![智能问答](./Docs/Pics/search_AI.jpg)
检索首页
![检索首页](./Docs/Pics/search_home.jpg)
检索结果
![检索结果](./Docs/Pics/search_result.jpg)
高级检索
![高级检索](./Docs/Pics/search_advance.jpg)
知识专题
![知识专题](./Docs/Pics/km_topic.png)
知识详情
![知识详情](./Docs/Pics/km_detail.png)
知识分享
![知识分享](./Docs/Pics/km_share.png)
##### 管理后台
数据统计
![数据统计](./Docs/Pics/home.png)
知识管理
![知识管理](./Docs/Pics/km_mgnt.png)
授权管理
![授权管理](./Docs/Pics/km_auth.png)
编辑与创建
![编辑与创建](./Docs/Pics/edit.jpg)
附属文档
----
- [Ant Design Vue](https://www.antdv.com/docs/vue/introduce-cn)
特别鸣谢
-----------------------------------
本项目采用Jeecg-boot开发框架,Jeecg-boot,一款优秀的后台管理快速开发框架,让你更专注于业务开发的实现。
- JeecgBoot: [http://doc.jeecg.com](http://doc.jeecg.com)
## 捐赠
如果觉得还不错,请作者喝杯咖啡鼓励一下吧,敲代码不容易 ☺
![](./Docs/Pics/QR_pay.jpg)
", Assign "at most 3 tags" to the expected json: {"id":"3372","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"