个性化训练知识库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 协议》,转载必须注明作者和本文链接