免费开源的知识库神器!MaxKB 让你轻松搭建智能问答系统

免费开源的知识库神器!MaxKB 让你轻松搭建智能问答系统

MaxKB(Max Knowledge Base)是一款基于大语言模型(LLM)和检索增强生成(RAG)的开源知识库问答系统,支持智能客服、企业知识管理、学术研究等场景。本文将详细介绍其功能、部署流程及使用技巧,助你快速上手。

MaxKB 是什么?

MaxKB 是一款企业级 AI 助手 ,核心能力包括:

  • • RAG 检索增强生成 :通过向量化技术与语义检索,显著减少大模型幻觉,提升问答准确率

  • • 多模型兼容 :支持本地私有模型(如 DeepSeek、Llama)、国内公共模型(通义千问、腾讯混元)及国外模型(OpenAI、Claude)

  • • 零代码嵌入 :无缝集成至网站、钉钉、企业微信等第三方系统,快速赋能现有平台

  • • 高级编排能力 :内置工作流引擎与函数库,实现复杂业务逻辑的可视化编排

  • • 开源与社区 :MaxKB 遵循 GPLv3 开源协议,日均下载量超 1000 次,广泛应用于智能客服、教育等领域

核心功能亮点

1. 开箱即用的知识库管理

  • • 文档支持格式 :Markdown、PDF、DOCX、XLSX、CSV 等,并支持 ZIP 打包上传(含图文关联)

  • • 智能分段技术 :自动按标题层级拆分文档(最多 6 级),单段最长 4096 字符,避免信息冗余

  • • 向量化存储 :集成默认向量模型(如 maxkb-embedding),支持自定义模型对接

2. 灵活的大模型集成

  • • 多模型适配 :支持本地私有化部署模型(如 DeepSeek)与公有云模型(如 OpenAI)混合使用,降低算力成本

  • • 动态切换 :在模型管理界面一键切换不同供应商,满足不同场景下的性能与成本需求

3. 高级工作流编排

  • • 可视化编排 :通过拖拽节点设计复杂流程,如“用户提问 → RAG 检索 → 逻辑判断 → 函数调用 → 生成回答”

  • • 函数库扩展 :内置 Python 脚本库,支持自定义数据处理、信息提取等功能,如提取合同关键字段或清洗日志数据

4. 安全与监控

  • • 访问控制 :支持 IP 白名单、API 密钥鉴权,保障数据安全

  • • 实时监控 :提供对话日志、调用次数、响应耗时等指标,辅助优化问答效果

部分功能截图

none

 

none

 

部署要求

服务器配置

  • • 操作系统:Ubuntu 22.04 / CentOS 7.6 64 位系统;

  • • CPU/内存: 4C/8GB 以上;

  • • 磁盘空间:100GB;

Docker 快速部署

MaxKB 支持一键启动,仅需执行以下命令:

# Linux 操作系统docker run -d --name=maxkb --restart=always -p 8080:8080 -v ~/.maxkb:/var/lib/postgresql/data -v ~/.python-packages:/opt/maxkb/app/sandbox/python-packages registry.fit2cloud.com/maxkb/maxkb    # Windows 操作系统docker run -d --name=maxkb --restart=always -p 8080:8080 -v C:/maxkb:/var/lib/postgresql/data -v C:/python-packages:/opt/maxkb/app/sandbox/python-packages registry.fit2cloud.com/maxkb/maxkb

启动成功后访问:http://ip:8080

image-20250509141041267

 

默认登录信息用户名:admin默认密码:MaxKB@123..

快速版本升级

下载最新镜像

docker pull registry.fit2cloud.com/maxkb/maxkb

查看并确认上一次数据持久化目录,复制保存

docker inspect maxkb

none

 

删除正在运行的、旧版本的 MaxKB 容器

docker rm -f maxkb 

启动并运行新版本的 MaxKB 容器

注意: 务必确认数据持久化目录(即命令行中 -v后的目录)要跟第 (2) 步查看目录保持一致,否则启动后整个系统的数据为空。

docker run -d --name=maxkb --restart=always -p 8080:8080 -v ~/.maxkb:/var/lib/postgresql/data -v ~/.python-packages:/opt/maxkb/app/sandbox/python-packages registry.fit2cloud.com/maxkb/maxkb

功能使用

模型管理

在使用之前我们需要先配置任意一个大模型,支持供应商如下

image-20250509152706588

 

image-20250509152636554

 

知识库

创建知识库

image-20250509142517533

 

填写相关配置

这里我们创建一个 IT 知识库,用于帮助我们检索我们自己记录的一些笔记

image-20250509142958621

 

这里我们使用 maxkb-embedding 默认的向量模型,你也可以添加其他平台或者自己的模型

image-20250509143109144

 

创建完成后会显示下图

image-20250509143214555

 

上传文档

上传文档要求:

  • • 文本文件:Markdown、TXT、PDF、DOCX、HTML、XLS、XLSX、CSV、ZIP;

  • • 表格:XLS、XLSX、CSV、ZIP;

  • • QA 问答对:XLS、XLSX、CSV、ZIP;

  • • 每次最多上传 50 个文件;

  • • 每个文件不超过 100 MB;

  • • 支持选择文件夹,上传文件夹下符合要求的文件。

说明: ZIP 文件包括两种形式:

  • • MarkDown 文档 + 图片文件,MarkDown 文档中引入对应的图片,并将两者打包在 ZIP 中。

  • • XLS/XLSX 文件 + 图片文件,XLS/XLSX 文件中引入对应的图片,并将两者打包在 ZIP 中。

image-20250509143829550

 

配置文档分段规则

image-20250509143952723

 

对于知识库文件的分段,目前 MaxKB 支持智能分段以及高级分段两种方式。

智能分段

(1)MarkDown 类型文件智能分段规则

  • • 根据标题逐级下钻式分段(最多支持 6 级标题),每个段落最多 4096 个字符;

  • • 当最后一级的文本段落字符数超过设置的分段长度时,会查找分段长度以内的回车进行截取。

(2)HTML、DOCX 类型智能分段规则

  • • 识别标题格式转换成 markdown 的标题样式;

  • • 逐级下钻进行分段(最多支持 6 级标题),每个段落最多 4096 个字符。

(3)TXT和 PDF 类型文件智能分段规则

  • • 按照标题# 进行分段,若没有#标题的则按照字符数4096个字符进行分段;

  • • 查找分段长度以内的回车进行截取。

文档规范建议

  • • 分段标识规范:离线文档的分段标识要有一定规范,否则拆分出来的段落不规整。

  • • 段落完整:在一个分段中集中描述一个完整的内容。

高级分段

用户可以根据文档规范自定义设置分段标识符、分段长度及自动清洗。

  • • 分段标识支持:#、##、###、####、#####、######、-、空行、回车、空格、分号、逗号、句号,并支持手动输入其它分段标识符或正则表达式。

  • • 分段长度:单个分段的长度,范围 50 至 4096 个字符。

  • • 自动清洗:开启后系统会自动去掉重复多余的符号如空格、空行、制表符等。

导入时添加分段标题为关联问题

勾选后会把所有分段的标题设置为分段的关联问题。

问题这部分上传时最好人工校验一下准确性,如果文档不是很规范,会有很多垃圾数据

image-20250509144444173

 

命中测试

可以通过搜索来验证我们分段的准确性,这里我搜索的是Maven 阿里云

image-20250509144812868

 

问题

MaxKB 知识库管理员可以收集用户可能提出的相关问题,创建问题并关联知识库文档中的内容,维护知识库常见问题列表,以提高问答的准确度。

问题列表

 

另外知识库支持自动生成用户可能问的问题,帮助我们补充问题

image-20250509150411657

 

函数库

函数是通过Python写的一个脚本

MaxKB 支持用户根据自身的业务需求,通过内置函数或自定义函数对获取和查询数据,逻辑判断、信息提取或其它场景的操作。 函数创建完成后,在应用编排时以添加组件的方式调用这些函数,从而更好地满足各种复杂的业务需求。这种组件化的设计不仅提高了工作效率,还使得整个系统更加模块化,便于维护和扩展。

下面是一些内置的函数库

image-20250509150651139

 

也可以自定义函数库

image-20250509150828493

 

应用

简单配置应用

通过配置 Prompt、知识库等参数快速生成一个智能体。

image-20250509151139361

 

image-20250509151450459

 

调试预览

可以问些问题验证效果

image-20250509151623769

 

嵌入第三方

可以直接嵌入到第三方系统

image-20250509151749361

 

访问限制

可以配置访问限制

image-20250509152049995

 

演示

image-20250509152206026

 

使用监控

image-20250509152245302

 

对话日志

image-20250509152310125

 

高级编排应用

新创建的高级编排应用会默认生成简易工作流,可以根据自己的需求进行自定义编排,点击发布后生效。

注意:

  • • 画布上的节点必须在工作流程中,不能有流程外的孤立节点,否则在发布时会校验失败。

  • • 每个节点可以根据节点的用途进行重命名,双击节点名称即可重命名,但同一个工作流编排中节点名称不能重复。

  • • 连线的后置节点可以引用前置节点的输出参数,如果节点名称变更,需要重新复制变量,参数引用方式是{{节点名称.变量名称}}

image-20250509152422831

 

总结

目前来看 MaxKB 能满足我们大部分需求,其基于 RAG(检索增强生成)技术的核心能力,能够将非结构化数据(如文档、表格)转化为向量存储并生成精准回答,显著降低了传统问答系统对单一模型的依赖性与幻觉问题。通过内置的 工作流引擎 和 函数库,MaxKB 支持复杂业务逻辑的可视化编排,例如“用户提问 → RAG 检索 → 逻辑判断 → 函数调用 → 生成回答”的全流程自动化处理,灵活适配智能客服、合同条款提取等场景。

相关链接

  • • 官网:https://maxkb.cn/

  • • Github:https://github.com/1Panel-dev/MaxKB

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值