个性化训练知识库GPT机器人服务部署流程
唯一客服系统知识库服务,支持向量形式个性化训练ChatGPT,该服务是独立搭建的,下面是一些介绍
安装docker
现在基于GPT相应实现自建本地知识库,必不可少的就是向量数据库,现在介绍下qdrant向量数据库的安装。
因为qdrant向量数据库只支持docker部署,所以在服务器上安装一下docker,下面是在ubutnu下安装docker
apt update
apt install apt-transport-https ca-certificates curl gnupg lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
apt update
apt install docker-ce docker-ce-cli containerd.io
如果你使用宝塔面板,那么就更简单了,提供可视化的界面进行管理
宝塔安装docker
如果你使用宝塔面板,那么就更简单了,提供可视化的界面进行管理
安装docker模块和docker管理器
开启docker服务
拉取镜像
docker管理器的镜像管理里,拉取qdrant/qdrant
根据镜像创建容器,注意端口映射,其他的是默认的
这样就能安装成功了。
安装向量数据库Qdrant
拉取镜像
docker pull qdrant/qdrant
运行服务
docker run -d -p 6333:6333 qdrant/qdrant
部署知识库服务
知识库服务的程序文件如下图所示
.env文件是一些配置信息,可以配置openai 的key 或者 是其他第三方代理的域名和代理的key
OPENAI_KEY=api2d的key
OPENAI_API_BASE=https://openai.api2d.net
QDRANT_BASE=127.0.0.1
QDRANT_PORT=6333
在源码目录的/knowledge目录下是知识库程序目录
go build -o knowledge 可以编译生成二进制执行文件knowledge
启动服务./knowledge ,这样就能启动知识库服务了。
守护模式启动服务(Supervisor)
一般情况下,我们使用golang开发的服务,或者其他语言监听端口的服务,都没有守护进程的功能
那么我们就可以使用Supervisor来对进程进行管理
下面是宝塔面板安装Supervisor
利用面板来启动服务
命令行安装Supervisor
在Linux系统中,你可以使用包管理工具来安装Supervisor,例如在Ubuntu系统中,可以使用以下命令进行安装:
apt-get install supervisor
配置Supervisor
Supervisor的配置文件通常位于/etc/supervisor/conf.d/目录下,你可以在该目录下创建一个以.conf为后缀的配置文件,例如myprogram.conf,然后在该文件中添加要管理的进程的配置信息。
以下是一个知识库服务示例配置文件的内容:
[program:knowledge]
command=/www/wwwroot/go-fly-muti/knowledge/knowledge
directory=/www/wwwroot/go-fly-muti/knowledge/
user=root
autostart=true
autorestart=true
startretries=3
redirect_stderr=true
stdout_logfile=/var/log/knowledge.log
stdout_logfile_maxbytes=10MB
stdout_logfile_backups=10
启动Supervisor
配置完成后,你可以使用以下命令启动Supervisor服务:
service supervisor start
启动Supervisor后,它会自动加载配置文件并启动相应的进程。你可以使用以下命令来检查Supervisor服务状态:
service supervisor status
使用Supervisor管理进程
使用Supervisor管理进程非常简单,你可以使用以下命令对进程进行启动、停止、重启、查看状态等操作:
启动进程:
sudo supervisorctl start knowledge
停止进程:
sudo supervisorctl stop knowledge
重启进程:
sudo supervisorctl restart knowledge
查看进程状态:
supervisorctl status
如果配置完成后,使用supervisorctl start knowledge,报错找不到进程,
那么可以尝试下面这条更新命令
supervisorctl update
如果配置正确会输出类似下面这样
myprogram : added process group
然后查看下进程状态
supervisorctl status
会看到
supervisor> status
myprogram RUNNING pid 12345, uptime 1 day, 256
本作品采用《CC 协议》,转载必须注明作者和本文链接