知识库AI部署搭建-唯一客服系统文档中心

news2024/12/24 2:48:05

唯一客服系统知识库服务,支持向量形式个性化训练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

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

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

 守护模式启动服务(Supervisor)

安装Supervisor

一般情况下,我们使用golang开发的服务,或者其他语言监听端口的服务,都没有守护进程的功能

那么我们就可以使用Supervisor来对进程进行管理

Supervisor是一种常用的进程管理工具,可以帮助你管理Linux系统中的进程,确保它们在后台一直运行。使用Supervisor可以实现进程的自动重启、监控进程状态、限制进程资源等功能,非常适用于需要长时间运行的服务程序。

以下是在Linux下使用Supervisor的一些基本步骤:

安装Supervisor

在Linux系统中,你可以使用包管理工具来安装Supervisor,例如在Ubuntu系统中,可以使用以下命令进行安装:

apt-get install supervisor

配置Supervisor

Supervisor的配置文件通常位于/etc/supervisor/conf.d/目录下,你可以在该目录下创建一个以.conf为后缀的配置文件,例如myprogram.conf,然后在该文件中添加要管理的进程的配置信息。

以下是一个示例配置文件的内容:

[program:myprogram]
command=/usr/bin/python /path/to/myprogram.py
directory=/path/to/working/directory
user=myuser
autostart=true
autorestart=true
startretries=3
redirect_stderr=true
stdout_logfile=/var/log/myprogram.log
stdout_logfile_maxbytes=50MB
stdout_logfile_backups=10

该配置文件定义了一个名为myprogram的进程

该进程的命令为/usr/bin/python /path/to/myprogram.py

进程工作目录为/path/to/working/directory

运行该进程的用户为myuser

开启自动启动和自动重启功能,最多重启3次

将标准输出重定向到/var/log/myprogram.log文件中

最大文件大小为50MB

最多保留10个备份日志文件。

你可以根据自己的需要修改相应的配置信息。

启动Supervisor

配置完成后,你可以使用以下命令启动Supervisor服务:

service supervisor start

启动Supervisor后,它会自动加载配置文件并启动相应的进程。你可以使用以下命令来检查Supervisor服务状态:

service supervisor status

使用Supervisor管理进程

使用Supervisor管理进程非常简单,你可以使用以下命令对进程进行启动、停止、重启、查看状态等操作:

启动进程:

sudo supervisorctl start myprogram

停止进程:

sudo supervisorctl stop myprogram

重启进程:

sudo supervisorctl restart myprogram

查看进程状态:

supervisorctl status

如果配置完成后,使用supervisorctl start myprogram ,报错找不到进程,

那么可以尝试下面这条更新命令

supervisorctl update

如果配置正确会输出类似下面这样

myprogram : added process group

然后查看下进程状态

supervisorctl status

会看到

supervisor> status

myprogram                          RUNNING   pid 12345, uptime 1 day, 2:34:56

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/527045.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

加密解密软件VMProtect教程(四):准备项目之使用MAP文件

VMProtect是新一代软件保护实用程序。VMProtect支持德尔菲、Borland C Builder、Visual C/C、Visual Basic(本机)、Virtual Pascal和XCode编译器。 同时,VMProtect有一个内置的反汇编程序,可以与Windows和Mac OS X可执行文件一起…

JSON, AJAX

文章目录 JSON和AJAX文档介绍1. JSON介绍1.1 JSON快速入门1.2 JSON和字符串转换1.2.1 JSON转字符串1.2.2 字符串转JSON1.2.3 JSON和字符串转换细节 1.3 JSON在java中使用1.3.1 Java对象和JSON字符串转换1.3.2 List对象和JSON字符串转换1.3.3 Map对象和JSON字符串转换 2. Ajax介…

Python实现SMS-Activate接口调用,获取手机号和验证码

前言 本文是该专栏的第27篇,后面会持续分享python的各种干货知识,值得关注。 对于SMS-Activate平台及其注册操作方法,这里就不过多详述了。尤其随着chatgpt的火爆,让sms-activate的热度也随之上涨。可能多数同学,是通过网页操作来获取手机号。而本文主要来介绍使用python…

Lua脚本语言快速上手(针对redis)

目录 基本介绍 设计目的 Lua 特性 lua基本语法 变量 流程控制 redis执行lua脚本 - EVAL指令 案例1:基本案例 案例2:动态传参 案例3:执行redis类库方法 案例4:给redis类库方法动态传参 案例5:pcall函数的使…

linux学习[10]磁盘与文件系统(1):查看磁盘容量指令df 评估文件系统的磁盘使用量指令 du

文章目录 前言1. df指令2. du指令 前言 TF卡制作的过程中涉及到了磁盘分区格式化等问题,当时对具体的指令理解不是特别深刻;由此引申到我对linux中的整个磁盘与文件系统没有一个全面的认识,这个磁盘与文件系统的系列博客章节就对这些进行记录…

电脑技巧:分享六个有趣好玩的网站,值得收藏

目录 1、Weavesilk 2、一键抠图 3、狗屁不通文章生成器 4、小霸王在线小游戏 5、世界名画在线拼图 6、寻找不动的emoji 今天小编给大家分享六个有趣好玩的网站,值得收藏! 1、Weavesilk Weavesilk是一个光线绘画网站,它不需要有任何绘画…

基于python计算生态的第三方库总结与介绍

摘要:Python语言有超过12万个第三方库,覆盖信息技术几乎所有领域。即使在每个方向,也会有大量的专业人员开发多个第三方库来给出具体设计。正是因为python有了这么多“隐形的翅膀”,所以python的功能才足够庞大。本文主要针对pyth…

浏览器指纹

目录 下载安装与运行 软件目前可以随机的指纹 指纹随机化的好处 什么时候不需要指纹随机化 如何在软件上设置指纹 进入指纹设置的两个入口 指纹设置的两个步骤 如何获取随机指纹 设置过程(动画演示) 常见问题 浏览器指纹的有效期 同一个电脑…

【网站搭建】想搭建属于自己的网站吗,教你用ECS免费搭建网站

文章目录 前言ECS尾声 前言 Hello小伙伴们好久不见啦,博主一直忙得不可开交! 久别重逢,博主最近发现了一个搭建网站的好方法,想要搭建网站的小伙伴们快来试试看吧! ECS 用ECS搭建网站,可以说真的太爽啦…

CMS搭建篇:内容模型配置-题库管理模型

微信小程序云开发实战-答题积分赛小程序 CMS搭建篇:内容模型配置-题库管理模型 内容模型 内容模型是对数据库中存储的数据结构的描述,包含了内容的属性定义。通过内容模型,内容管理可以自动生成内容管理界面。 这里,我们需要建立一个内容模型,描述题库所具有的属性,如:题…

用友BIP成功入围工信部《2022年信息技术应用创新解决方案》

近日,由工业和信息化部网络安全产业发展中心(工业和信息化部信息中心)发布了2022年(第四届)信息技术应用创新解决方案征集工作成果,用友网络科技有限公司(以下简称“用友”)申报的“…

html实现一个一闪一闪的按钮,CSS实现一个一闪一闪的按钮,Css闪烁点标

效果 实现 <!DOCTYPE html> <html><head><meta charset"UTF-8"><title></title><style>#app {margin: auto 38%;margin-top: 10%;}/** 关键*/.lay-btn-box {position: relative;}.lay-btn {background: #59b0fb;border-r…

【C++项目设计】tcmalloc高并发内存池

&#x1f9f8;&#x1f9f8;&#x1f9f8;各位大佬大家好&#xff0c;我是猪皮兄弟&#x1f9f8;&#x1f9f8;&#x1f9f8; 文章目录 一、项目介绍二、池化技术与内存池池化技术内存池内存池需要解决的问题 三、malloc四、定长内存池&#xff08;了解内存池&&后面的…

51单片机(十一)蜂鸣器

❤️ 专栏简介&#xff1a;本专栏记录了从零学习单片机的过程&#xff0c;其中包括51单片机和STM32单片机两部分&#xff1b;建议先学习51单片机&#xff0c;其是STM32等高级单片机的基础&#xff1b;这样再学习STM32时才能融会贯通。 ☀️ 专栏适用人群 &#xff1a;适用于想要…

使用ntpd同步服务端时间

安装ntpd 服务服务&#xff1a;yum install ntp -y ps&#xff1a;离线安装 1. 下载rpm离线包&#xff1a;autogen-libopts-5.18-5.el7.x86_64.rpm、ntp-4.2.6p5-29.el7.centos.2.x86_64.rpm、ntpdate-4.2.6p5-29.el7.centos.2.x86_64.rpm 2. 安装&#xff1a;rpm -Uvh --force…

logback按天归档日志

效果图 logback.xml文件配置 <configuration debug"false"><!--日志输出到文件--><appender name"BaseLogFile" class"ch.qos.logback.core.rolling.RollingFileAppender"><file>logs/logback.log</file><…

计算机网络 | 五种I/O模型

欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起学习和分享Linux、C、C、Python、Matlab&#xff0c;机器人运动控制、多机器人协作&#xff0c;智能优化算法&#xff0c;滤波估计、多传感器信息融合&#xff0c;机器学习&#xff0c;人工智能等相关领域的知识和…

用《文心一言》1分钟写一篇博客简直yyds

文章目录 前言文心一言是什么文心一言可以做什么文心一言写博客申请体验写在最后 前言 当今社会&#xff0c;博客已成为了许多人分享观点、知识和经验的重要平台。用文心一言写博客是将自己的思考、想法和经验以文字的形式呈现出来&#xff0c;让更多人了解自己。通过写博客&a…

SpringBoot——整合Junit测试

简单介绍&#xff1a; 其实Spring Boot的测试在之前我们就已经使用过了&#xff0c;只不过当时我们只是使用&#xff0c;并不知道他具体是怎么实现的&#xff0c;我们稍微介绍一下他在做测试的时候是怎么实现的&#xff1a; SpringBoot的测试&#xff1a; 在test文件夹下面&a…

C语言CRC-16 CCITT格式校验函数

C语言CRC-16 CCITT格式校验函数 CRC-16校验产生2个字节长度的数据校验码&#xff0c;通过计算得到的校验码和获得的校验码比较&#xff0c;用于验证获得的数据的正确性。基本的CRC-16校验算法实现&#xff0c;参考&#xff1a; C语言标准CRC-16校验函数。 不同同应用规范通过…