简介

MaxKB = Max Knowledge Base,是一款基于大语言模型和 RAG 的开源知识库问答系统,广泛应用于企业内部知识库、客户服务、学术研究与教育等场景。作为一款专注于知识库问答场景的软件产品,MaxKB 能够为企业的智能化进程注入新的动力,助力企业实现“提质增效”的目标。在知识库管理方面,MaxKB 帮助企业实现知识采集、知识入库、知识库构建的全流程自动化;在场景化智能搜索方面,MaxKB 能够解析用户输入的问题并匹配检索知识库;在回复准确性方面,MaxKB 采用了成熟的 LLM + RAG 技术,能够最大限度地降低大模型幻觉对知识搜索准确性的干扰,提高企业对业务数据的分类与召回能力;安全性方面,MaxKB 支持本地部署和调用本地大模型,有效管控企业使用知识库时越级访问的风险,以及公有模型在数据传输方面可能存在的安全隐患。借助 MaxKB,企业用户可以快速上线业务 AI 助手,将生成式 AI 能力应用于业务数据管理、内部资料查询、线上客户服务等领域,优化业务服务流程并切实提升用户体验。

产品优势

  • 开箱即用
    支持直接上传文档 / 自动爬取在线文档,支持文本自动拆分、向量化和 RAG(检索增强生成),有效减少大模型幻觉,智能问答交互体验好;
  • 快速接入
    支持零编码嵌入到第三方业务系统,以及快速接入企业微信、钉钉、飞书、公众号等应用,让已有系统快速拥有智能问答能力,提高用户满意度;
  • 灵活编排
    内置强大的工作流引擎和函数库,支持编排 AI 工作过程,满足复杂业务场景下的需求;
  • 模型中立
    支持对接各种大模型,包括本地私有大模型(Llama 3 / Qwen 2 等)、国内公共大模型(通义千问 / 腾讯混元 / 字节豆包 / 百度千帆 / 智谱 AI / Kimi 等)和国外公共大模型(OpenAI / Claude / Gemini 等)。

部署要求

  • 操作系统:Ubuntu 22.04 / CentOS 7.6 64 位系统
  • CPU/内存:2C/4GB 以上
  • 磁盘空间:100GB

在线快速部署

配置docker

#安装docker
#安装yum-config-manager
yum install -y yum-utils

#配置docker源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

#卸载原有的docker
yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

#安装docker
yum install -y docker-ce docker-ce-cli containerd.io
systemctl start docker
systemctl enable docker

#配置镜像加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://rt856jlj.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

#修改dns(如dns无问题可以跳过此步骤)
echo "nameserver 223.5.5.5" > /etc/resolv.conf

拉取容器镜像(问题集中在拉取镜像失败)

docker pull 1panel/maxkb

手动对时

#虚拟机上执行ntpdate
ntpdate ntp.aliyun.com

配置ntp

yum install -y chrony

vim /etc/chrony.conf
server ntp.aliyun.com

systemctl start chronyd
chronyc sources

启动容器

docker run -d --name=maxkb -p 8080:8080 -v ~/.maxkb:/var/lib/postgresql/data 1panel/maxkb

至此maxkb已经部署完成,是不是很简单,下面我们一起配置一下AI应用

Mxb配置

  • 登陆web
admin
MaxKB@123..

设置星火模型

apikey注册地址:https://console.xfyun.cn/services/bm35

设置阿里通义千问

apikey注册地址:https://dashscope.console.aliyun.com/overview

设置deepseek

apikey注册地址:https://platform.deepseek.com/api_keys

  • 完成模型添加

创建知识库

打开【知识库】页面,点击【创建知识库】,进入创建知识库页面。

  • 上传文档

输入知识库名称、知识库描述、选择通用型知识库类型。然后将离线文档通过拖拽方式或选择文件上传方式进行上传。上传文档要求:支持的格式为Markdown、TXT、PDF、DOCX;每次最多上传 50 个文件;每个文件不超过 100 MB。文档规范建议:

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

2、段落要完整:一个分段中最好能描述一个完整的功能点或问题。

  • 设置文档规则

当前支持智能分段和高级分段两种分段方式,推荐选择:智能分段。

  • 创建完成

点击【创建并导入】后,系统会对文档进行自动分段 -> 存储 -> 向量化处理操作。

创建应用

  • 创建参数说明
点击【创建应用】,进入创建应用页面,左侧为应用信息,右侧为调试预览界面。    
应用名称: 用户提问时对话框的标题和名字。  
应用描述: 对应用场景及用途的描述。  
AI模型: 显示【系统设置】-【模型管理】中大语言模型,也可以直接添加模型,请参考【添加模型】操作介绍。  
提示词: 系统默认有知识库的问答提示词,用户可以自定义。
多轮对话: 开启时当用户提问携带用户在当前会话中最后3个问题;不开启则仅向大模型提交当前问题。         
关联知识库: 选择已有的知识库进行关联,用户提问时会在关联的知识库中检索分段,引用分段生成提示词发送给大模型进行询问。若未关联知识库或未匹配到分段内容。
参数设置: 可以设置知识库的相似度,引用分段数量和最大引用字符数。    
注意:关联的知识库和应用为同一个用户创建。  
开场白: 用户打开对话时,系统弹出的问候语。支持 Markdown 格式;[- ]后的内容为快捷问题,一行一个。  
问题优化: 对用户提出的问题先进行一次 LLM 优化处理,将优化后的问题在知识库中进行向量化检索,开启后能提高检索知识库的准确度,但由于多一次询问大模型会增加回答问题的时长。     
应用信息设置完成后,可以在右侧调试预览中进行提问预览。
  • 创建

  • 完成应用创建

  • 显示预览
入口一:在应用列表页面,点击【演示】,可进入问答页面。
入口二:点击应用面板,在概览页面点击演示或复制公开访问链接至浏览器进入问答页面进行提问。

问答测试

  • 基于互联网模型问答

  • 基于知识库问答(命中测试)


标题:知识库系统Maxkb本地部署
作者:zybox
地址:http://www.lmdate.com/articles/2024/10/10/1728523499888.html