当前位置: 首页 > article >正文

DB-GPT系列(二):DB-GPT部署(镜像一键部署、源码部署)

一、简介

DB-GPT 是一个开源项目,其将大语言模型 LLM 与数据库紧密结合。该项目主要致力于探索如何让预训练的大规模语言模型(例如 GPT)能够直接与数据库进行交互,从而生成更为准确且信息丰富的回答。

DB-GPT部署后能否直接使用以下六大应用场景:

  • Chat Excel(Excel对话):可以围绕某个Excel数据文件进行快速分析,允许用户上传数据文件并直接对其进行分析;
  • Chat Dashboard(仪表盘对话):可以围绕某个数据库,针对某个问题进行多维度分析与可视化展示;
  • Chat Data(数据对话):可以连接本地各种不同类型关系型数据库,并围绕数据库中的某个库进行跨表问答;
  • Chat DB(数据库对话):通过对话,进行问询式SQL代码创建;(但是不运行)
  • Chat Normal(原生对话):与原生大模型进行对话
  • Chat Knowledge(知识库对话):借助RAG实现私有知识库问答,用户可以自定义传输企业业务说明文档、专家文档或数据字典等信息,并围绕相关问题进行问答,从而辅助用户快速了解企业业务,或辅助进行业务决策等;

除此之外,还能进行promopt管理、知识库应用、自定义智能体应用、Text2SQL微调等高阶应用

DB-GPT有多种部署方式,包括镜像一键部署、源码部署、Docker部署、小程序云部署等,可以适应于不同场景应用需求。下面介绍镜像一键部署、源码部署两种最方便的部署方式。

二、AutoDL镜像一键部署

1、登录AutoDL,选择DB-GPT镜像创建服务器实例

进入AutoDL官网AutoDL算力云 | 弹性、好用、省钱。租GPU就上AutoDL,进行注册登录,和充值

进入网址CodeWithGPU | 能复现才是好算法,codewithgpu.com是AutoDL公司对应的镜像仓库网站,放心使用。选择镜像版本,目前支持的DB-GPT最新版本是v0.5.10,点击AutoDL创建实例

然后自动跳转到AutoDL购买算力的页面,选择一个“RTX 4090”的型号即可满足DB-GPT的算力使用需求,选择好后点击立即创建

创建完成后如下图所示

2、登录服务器实例主机

复制登录指令和密码。例如我复制出来的登录指令复制出来是

ssh -p 45084 root@connect.nmb1.seetacloud.com

ssh登录的地址是connect.nmb1.seetacloud.com

用户名是root

端口是45084

找一个远程服务器连接工具,例如xshell、finalshell、MobaXterm都可以,输入对应的ssh地址、用户名、端口、密码即可登录主机。

下面是MobaXterm连接界面的图示。

登录主机后如下所示

3、启动DB-GPT服务

输入conda activate dbgpt命令,切换dbgpt运行环境

conda create -n dbgpt_env python=3.10
conda activate dbgpt_env

# 安装依赖的包,需要等待几分钟
pip install -e ".[default]"

输入 cd /root/DB-GPT/命令,进入DB-GPT目录

输入bash ./scripts/examples/load_examples.sh创建一些示例数据

输入dbgpt start webserver --port 6006启动DB-GPT服务,启动完后如下图所示。保留该界面不要关闭。如果关系DB-GPT服务也会终止。

4、本地浏览器访问DB-GPT

在AutoDL的容器示例内,选择对应实例的自定义服务,下载桌面工具。

该工具的作用是将远程服务器运行的服务映射到本地。

下载解压后直接运行AutoDL.exe文件

输入之前复制的SSH指令、SSH密码,然后点击开始代理

点击下面出现的地址进行跳转访问

现在就可以使用DB-GPT了

三、阿里云ECS源码部署(CPU版)

前面AutoDL部署的DB-GPT部署,最新仅支持v0.5.10

下面通过源码部署,可以支持最新版本的DB-GPT

1、开通阿里云ECS服务器

进入阿里云官网阿里云-计算,为了无法计算的价值

在顶部栏目中找到”产品-计算-云服务器ECS“

碰上阿里云有云服务器ECS的免费试用活动,个人有3个月300元的免费额度。

因为我们本次部署是使用在线大模型,所以不需要依赖GPU环境。

CPU的话建议4C以上,内存的话建议8G以上,这个配置部署DB-GPT运行起来比较流畅。

其他选项的话,除了镜像选择Ubuntu以外,其他按默认选择即可。

2、连接ECS服务器

进入ECS控制台,可以在右上角点击“控制台”,或者在搜索框里面输入ECS搜索进入。

进入对应的ECS服务器实例界面,在操作中点击“远程连接”即可

3、下载DB-GPT源码

输入以下命令安装git和下载DB-GPT源码

# 安装git
sudo apt update
sudo apt install git


git clone https://github.com/eosphoros-ai/DB-GPT.git
# 进入DB-GPT目录
cd /DB-GPT

4、Miniconda环境安装

输入以下命令安装Miniconda环境

mkdir -p ~/miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
rm ~/miniconda3/miniconda.sh

更详细的可以参见Miniconda安装教程:https://docs.anaconda.com/miniconda/

5、创建Python虚拟环境

conda create -n dbgpt_env python=3.10
conda activate dbgpt_env

# 安装依赖的包,需要等待几分钟
pip install -e ".[default]"

6、修改DB-GPT配置文件

配置模板文件.env.template为配置正式文件.env

cp .env.template .env

添加大模型API的接口参数,下面以智谱清言为例:

LLM_MODEL=zhipu_proxyllm
PROXY_SERVER_URL=https://open.bigmodel.cn/api/paas/v4/chat/completions
ZHIPU_MODEL_VERSION=glm-4
ZHIPU_PROXY_API_KEY=YOUR_API_KEY

7、安装在线大模型对应的python包

安装对应在线大模型的python包

#通义千问
pip install dashscope
# 智谱
pip install zhipuai

8、ECS服务器增加安全组访问规则

9、运行DB-GPT服务

python dbgpt/app/dbgpt_server.py

10、打开浏览器访问

本地浏览器打开网址http://ECS服务器公网网址:5670,访问DB-GPT网页应用


http://www.kler.cn/a/374820.html

相关文章:

  • webrtc获取IceCandidate流程
  • ajax中get和post的区别,datatype返回的数据类型有哪些?web开发中数据提交的几种方式,有什么区别。
  • 性能优化!突破性能瓶颈的尖兵CPU Cache
  • Redis篇--常见问题篇7--缓存一致性2(分布式事务框架Seata)
  • 【day14】异常处理与Object类深入解析
  • 项目代码第6讲:UpdownController.cs;理解 工艺/工序 流程、机台信息;前端的“历史 警报/工艺 记录”
  • C++ 代码工程化
  • 微信小程序,打开新的项目,调试遇见[ app.json 文件内容错误] app.json: 在项目根目录未找到 app.json
  • 【行业应用-工业防爆】本安型工业防爆网关,实现安全高效的数据传输与监控
  • 如何解决docker镜像下载失败问题
  • nfs作业
  • Docker | 容器数据卷在docker中的角色:持久化存储
  • WebSocket简单使用
  • Python实现图像(边缘)锐化:梯度锐化、Roberts 算子、Laplace算子、Sobel算子的详细方法
  • 【PythonWeb开发】Flask-RESTful字段格式化
  • C语言常见进制 (二进制、八进制、十进制、十六进制)详解
  • uniapp使用echart
  • Litctf-web
  • Docker(二):Docker的基本使用
  • 从0攒一个分布大数据/人工智能/数据库 处理引擎
  • 躺平成长-下一个更新的数据(躺平成长数据显示核心)
  • 【计算机网络 - 基础问题】每日 3 题(六十)
  • Make a Windows service publicly accessible
  • IDEA控制台报错(org.springframework.http.converter.HttpMessageNotWritableException)
  • 信息论与熵information and entropy
  • Linux:线程池