个性化训练知识库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#

如果你使用宝塔面板,那么就更简单了,提供可视化的界面进行管理

个性化训练知识库GPT机器人服务部署流程

安装 docker 模块和 docker 管理器

个性化训练知识库GPT机器人服务部署流程

开启 docker 服务

个性化训练知识库GPT机器人服务部署流程

拉取镜像#

docker 管理器的镜像管理里,拉取 qdrant/qdrant

个性化训练知识库GPT机器人服务部署流程

根据镜像创建容器,注意端口映射,其他的是默认的

个性化训练知识库GPT机器人服务部署流程

这样就能安装成功了。

安装向量数据库 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

个性化训练知识库GPT机器人服务部署流程

利用面板来启动服务

个性化训练知识库GPT机器人服务部署流程

命令行安装 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, 2:34:56

本作品采用《CC 协议》,转载必须注明作者和本文链接