现在AI正火,AI也在潜移默化的改变我们的生活,我们也可以通过AI解决很多生活中的问题。但实际通用的AI在处理特定的专业知识的时候,要不就是回答的过于宽泛,要不就是回答的问题幻觉很严重。那怎么样能解决这些问题呢,答案就是通过知识库扩展AI的能力。我们在让AI回答特定的专业知识的时候,给AI一些知识参考,这个时候 AI 就可以更加准确的回答问题了。
知道如何去解决问题了,那我们就可以寻找对应的解决方案了。现在 gitee 上开源了一款基于 Springboot3 开发的 基于大语言模型和 RAG 的知识库问答系统。开箱即用、模型中立、灵活编排,支持快速嵌入到第三方业务系统。它就是 SparkX。我们可以在 gitee 和 github 免费获取它
那如何部署这个系统呢。本文我们先介绍两种docker部署的方式
一、通过官方docker镜像一键docker部署
这也是最轻松的方式,如果我们只是单纯的使用,这点足够了。无需我们准备繁琐的环境和自主的编译。主要通过如下三步就可以轻松的搭建并使用。
1、下载源码到本地
git clone https://gitee.com/shop-sparker/spark-x.git
2、进入到 sparkx的 docker 目录下执行
docker compose up -d
等待 docker执行完毕,并且 全绿退出。我们便可以在 Docker Desktop上看到拉取的 镜像和 创建的 容器
其中 sparkx-frontend为前端 页面,sparkx-backend为后端api接口。此时我们打开浏览器访问
则可以见到如下页面
输入 账号 admin和 密码 admin即可以使用
服务器通过 nginx反向代理 http://localhost:8189 即可实现绑定域名的访问服务了
二、自主编译并通过docker本地部署
如果您不想使用官方的镜像,或者你自己有做了修改,或者进行了端口的修改等一系列自主的修改的方式,想构建自己的镜像,可以采用如下的步骤。当然进行自主编译的前提使我们的本地环境准备完毕。
本地环境要求 JDK17、NodeJs 18+、IDEA、WebStorm 。这些工具和环境准备齐全以后就可以如下的步骤
1、编译jar包
1)、通过
IDEA打开下载目录的 server目录,等待工具索引
2)、通过 maven点击拉去项目依赖
3)、点开 maven 找到 Lifecycle 点击 clean进行清理,然后点击 package进行打包
4)、找到 sparkx-web项目下的 target中的 sparkx-web-xxx.jar,把他复制出来 ,放到 docker 目录下的 backend 目录下
2、编译前端dist
通过webstorm打开工程,并通过
npm i
命令完成依赖的安装。然后执行如下的打包命令
npm run build
打包出的编译文件在 dist 中,把这个 dist 目录复制出来,放到 docker 目录下的 frontend 目录下
最后执行
docker compose -f docker-compose-local.yml up -d
等待构建完成即可。
经过这两个步骤之后,您就可以愉快的使用 SparkX 了。同时也衷心的希望大家多多的给予Star 的支持。我们接下来还会更新更多、更强大的功能。