首页 > 系统相关 >大模型Linux本地化[离线]部署(以DB-GPT为例)

大模型Linux本地化[离线]部署(以DB-GPT为例)

时间:2024-07-05 15:44:57浏览次数:25  
标签:kernel 为例 离线 DB dbgpt env GPT 64

DB-GPT 本地化[离线]部署

由于 Python 相关依赖包的获取极度依赖 pip,而 Miniconda 支持环境隔离和环境打包,所以离线部署本质就是比在线部署多一步环境打包,环境搬迁。所以本篇文章一样适用于在线部署,以CentOS7为例。

资源获取

DB-GPT 官方说明文档
DB-GPT 源码下载地址
Nvidia驱动 全版本
CUDA Toolkit 全版本
Nvidia驱动 NVIDIA-Linux-x86_64-550.90.07.runGeForce RTX 3090Ti 24GB
CUDA Toolkit 12.4.1 cuda_12.4.1_550.54.15_linux.run
kernel内核 3.10.0-1160.el7.x86_64
kernel-devel-3.10.0-1160.el7.x86_64.rpm
kernel-headers-3.10.0-1160.el7.x86_64.rpm
Miniconda 下载地址 Anaconda3-2024.02-1-Linux-x86_64.sh

模型下载

进入Huggingface需要魔法,没有魔法可以从魔搭社区获取,这里不提供相关链接。本篇没有通过git lfs进行下载,通过单击下载按钮下载。
m3e-large
text2vec-large-chinese
glm-4-9b-chat
vicuna-13b-v1.5
Baichuan2-13B-Chat

显卡驱动环境安装

疑难杂症 Linux 内核版本问题

centos下安装显卡驱动出现的unable to find the kernel source tree等关于内核版本问题
image
查看主机内核版本

uname -r
rpm -qa | grep kernel
yum info kernel-devel kernel-headers

image
问题现象:可见驱动安装失败,安装日志文件提示说源码树未发现或者版本不匹配。
解决办法:安装实际内核版本相匹配的kernel-devel与kernel-headers。

rpm -Uvh kernel-devel-3.10.0-1160.el7.x86_64.rpm
rpm -Uvh kernel-headers-3.10.0-1160.el7.x86_64.rpm

验证功能

uname -r
rpm -qa | grep kernel
yum info kernel-devel kernel-headers

image

Nvidia 驱动安装

chmod +x NVIDIA-Linux-x86_64-550.90.07.run
./NVIDIA-Linux-x86_64-515.105.01.run
sudo reboot
nvidia-smi

image

CUDA Toolkit 安装

一直同意即可,因为 Driver驱动已安装,所以回车取消安装([ ]未选中[X]选中),最后Install回车安装。

chmod +x cuda_12.4.1_550.54.15_linux.run
./cuda_12.4.1_550.54.15_linux.run
nvcc -V

image

Miniconda安装

确保开发联网环境和内网离线环境的 Miniconda 版本一致。

mkdir -p ~/miniconda3
wget https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
rm -rf ~/miniconda3/miniconda.sh

设置环境变量
vim /etc/profile.d/my_env.sh

export PATH=~/anaconda3/bin:$PATH

source /etc/profile.d/my_env.sh
vim ~/.bashrc

export PATH=~/anaconda3/bin:$PATH

验证 Miniconda 功能conda -V
image

DB-GPT环境安装

unzip DB-GPT-main.zip -d ../module
cd ../module/DB-GPT-main
conda create -n dbgpt_env python=3.10
conda activate dbgpt_env
pip install -e ".[default]" --default-timeout=100 -i https://pypi.tuna.tsinghua.edu.cn/simple
cp .env.template  .env
conda create -n dbgpt_env_offline --clone dbgpt_env
conda install -c conda-forge conda-pack
conda pack -n dbgpt_env_offline -o dbgpt_env_offline.tar.gz

以上操作都是在联网开发环境中进行的,现在需要将打包环境dbgpt_env_offline.tar.gz移植到内网[离线]环境中,以下操作都是在内网[离线]环境中进行的。

mkdir /root/anaconda3/envs/dbgpt_env_offline
tar -zxvf dbgpt_env_offline.tar.gz -C /root/anaconda3/envs/dbgpt_env_offline
cd /home/module/DB-GPT-main
conda activate dbgpt_env_offline
pip install -e ".[default]"

环境变量配置
vim .env

LLM_MODEL=glm-4-9b-chat

DB-GPT启动

python dbgpt/app/dbgpt_server.py

访问 DB-GPT WebUI

http://172.18.0.62:5670/

image

至此,本片内容结束,感谢大家浏览。

标签:kernel,为例,离线,DB,dbgpt,env,GPT,64
From: https://www.cnblogs.com/G1983280245/p/18285844

相关文章

  • 利用 STM32 实现多协议物联网网关:Modbus/Zigbee 到以太网/Wi-Fi 的数据桥接
    摘要: 随着物联网技术的飞速发展,不同通信协议之间的互联互通成为了构建智能化系统的一大挑战。本文将以实战项目为例,详细介绍如何利用STM32微控制器实现Modbus/Zigbee与以太网/Wi-Fi之间的协议转换,从而打通传感器数据上传至服务器的“最后一公里”。关键词: STM32,协议......
  • mongodb常用语句
    mongodb常用语句1.数据库操作1.1创建数据库创建数据库(如果数据库存在则创建,否则则进入该数据库)useblog注:创建数据库后,表中并不会出现在数据库列表中,需要添加数据后,才会出现在数据库列表中1.2修改数据库修改数据库的名称方法1,拷贝当前数据库,再删除旧数据......
  • SQL Server 中的 DBCC(Database Console Commands)命令提供了一系列用于数据库管理和诊
    SQLServer中的DBCC(DatabaseConsoleCommands)命令提供了一系列用于数据库管理和诊断的工具和功能。以下是一些常用的DBCC命令及其功能:DBCCCHECKDB:用于检查整个数据库的物理和逻辑一致性。sqlCopyCodeDBCCCHECKDB('MyDatabase');DBCCCHECKTABLE:检查指定表......
  • 以银行卡取钱的流程为例的状态模式的 java 的 demo
    好的,下面我们将用状态模式来实现一个模拟从银行卡取钱的流程。假设我们有以下几个状态:输入卡输入密码选择操作取款取卡我们通过状态模式来实现这些状态之间的切换。状态接口首先,我们定义一个状态接口ATMState://ATMState.javapublicinterfaceATMState{void......
  • springboot 如何使用MongoDB集成 shedlock-spring
    ShedLock是一个用于防止在分布式环境中任务重复执行的库。它允许多个节点共享一个任务调度器,并确保同一时间只有一个节点能够执行某个任务。SpringBoot项目中可以通过集成shedlock-spring来实现这一功能。下面是一个完整的集成指南:1.添加依赖首先,需要在pom.xml中添加sh......
  • 巴图自动化Modbus转PN网关模块连智能仪表与PLC通讯
    一、现场要求:PLC作为控制器,仪表设备作为执行设备。执行设备可以实时响应PLC传送的指令,并将数据反馈给PLC,从而实现PLC对仪表设备的控制和监控,实现对生产过程的精确控制。二、解决方案:通过巴图自动化Modbus协议转Profinet协议网关模块(BT-MDPN100),实现PLC或控制器对仪表设备的远......
  • Windows 安装DBeaver,并使用DBeaver进行数据库的操作(达梦数据库、MySQL数据库等)
    安装DBeaver可视化工具安装前准备准备环境JDK17DBeaver安装包达梦数据库驱动DBeaver代理包开始安装MySQL连接&操作MySQL连接操作达梦数据库连接&操作达梦数据库驱动DBeaver加载达梦数据库驱动达梦数据库连接操作免责声明安装前准备准备环境JDK17安装地址(官......
  • 关于巴图自动化Profinet协议转Modbus协议网关模块怎么配置IP地址教学
    Profinet协议和Modbus协议是工业领域中常用的两种通讯协议,除此以外还有较为常见的:ModbusTCP协议,Profibus协议,ProfibusDP协议,EtherCAT协议,EtherNET协议,CAN,CANOPEN等它们在自动化控制系统中发挥着重要作用。而将Profinet协议和Modbus协议这两种协议设备进行连接的关键就是通过巴图......
  • 制作visual studio 离线安装包
    应用场景:脱机、内网环境安装vs开发环境。概述:在互联网环境下载安装工具,下载根据需求并缓存布局(类似功能模块),压缩缓存内容拷贝至离线环境进行安装。1.官网下载指定版本的vs安装客户端创建基于网络的安装-VisualStudio(Windows)|MicrosoftLearn2.使用命令下载缓存布局......
  • 巴图自动化PN转Modbus RTU协议转换网关模块快速配置
    工业领域中常用的通讯协议有:Profinet协议,Modbus协议,ModbusTCP协议,Profibus协议,ProfibusDP协议,EtherCAT协议,EtherNET协议,CAN,CanOpen等,它们在自动化控制系统中发挥着重要作用。由于现实工业场景中存在Profinet协议设备和Modbus协议设备进行通讯的情况,将Modbus协议转换为Profinet协......