一、源码安装

安装

请按照以下步骤安装DB-GPT

1. Hardware Requirements


如果你的显存不够,DB-GPT支持8-bit和4-bit量化版本

2. Install

git clone https://github.com/eosphoros-ai/DB-GPT.git

目前使用Sqlite作为默认数据库,因此DB-GPT快速部署不需要部署相关数据库服务。如果你想使用其他数据库,需要先部署相关数据库服务。目前使用Miniconda进行python环境和包依赖管理安装 Miniconda

conda create -n dbgpt_env python=3.10conda activate dbgpt_envpip install -e .

在使用知识库之前

python -m spacy download zh_core_web_sm

如果你已经安装好了环境需要创建models, 然后到huggingface官网下载模型

cd DB-GPTmkdir models and cd models#### llm modelgit clone https://huggingface.co/lmsys/vicuna-13b-v1.5orgit clone https://huggingface.co/THUDM/chatglm2-6b#### embedding modelgit clone https://huggingface.co/GanymedeNil/text2vec-large-chineseorgit clone https://huggingface.co/moka-ai/m3e-large

配置.env文件,它需要从。env.template中复制和创建。

如果想使用openai大模型服务, 可以参考LLM Use FAQ

可以在.env文件中配置基本参数,例如将LLM_MODEL设置为要使用的模型。

可以在.env文件中配置基本参数,例如将LLM_MODEL设置为要使用的模型。(Vicuna-v1.5, 目前Vicuna-v1.5模型(基于llama2)已经开源了,推荐使用这个模型通过设置LLM_MODEL=vicuna-13b-v1.5

3. Run

(Optional) load examples into SQLlite

bash ./scripts/examples/load_examples.sh

On windows platform:

.\scripts\examples\load_examples.bat

1.Run db-gpt server

python pilot/server/dbgpt_server.py

打开浏览器访问http://localhost:5000

如果你想了解web-ui, 请访问https://github./csunny/DB-GPT/tree/new-page-framework/datacenter

python pilot/server/dbgpt_server.py --light

Multiple GPUs

DB-GPT默认加载可利用的gpu,你也可以通过修改 在.env文件 CUDA_VISIBLE_DEVICES=0,1来指定gpu IDs

你也可以指定gpu ID启动

# Specify 1 gpuCUDA_VISIBLE_DEVICES=0 python3 pilot/server/dbgpt_server.py# Specify 4 gpusCUDA_VISIBLE_DEVICES=3,4,5,6 python3 pilot/server/dbgpt_server.py

同时你可以通过在.env文件设置MAX_GPU_MEMORY=xxGib修改每个GPU的最大使用内存

Not Enough Memory

DB-GPT 支持 8-bit quantization 和 4-bit quantization.

你可以通过在.env文件设置QUANTIZE_8bit=True or QUANTIZE_4bit=True

Llama-2-70b with 8-bit quantization 可以运行在80GB VRAM机器, 4-bit quantization可以运行在 48 GB VRAM

二、docker安装

1、安装docker镜像

docker pull eosphorosai/dbgpt:latestbash docker/build_all_images.shdocker images|grep "eosphorosai/dbgpt"

你也可以docker/build_all_images.sh构建的时候指定参数

bash docker/build_all_images.sh \--base-image nvidia/cuda:11.8.0-runtime-ubuntu22.04 \--pip-index-url https://pypi.tuna.tsinghua.edu.cn/simple \--language zh

可以指定命令bash docker/build_all_images.sh –help查看如何使用

2、运行容器

Run with local model and SQLite database

docker run --gpus all -d \-p 5000:5000 \-e LOCAL_DB_TYPE=sqlite \-e LOCAL_DB_PATH=data/default_sqlite.db \-e LLM_MODEL=vicuna-13b-v1.5 \-e LANGUAGE=zh \-v /data/models:/app/models \--name dbgpt \eosphorosai/dbgpt

打开浏览器访问http://localhost:5000

-e LLM_MODEL=vicuna-13b-v1.5, means we use vicuna-13b-v1.5 as llm model, see /pilot/configs/model_config.LLM_MODEL_CONFIG-v /data/models:/app/models, 指定挂载的模型文件 directory /data/models to the docker container directory /app/models, 你也可以替换成你自己的模型.

你也可以通过命令查看日志

docker logs dbgpt -f

Run with local model and MySQL database

docker run --gpus all -d -p 3306:3306 \-p 5000:5000 \-e LOCAL_DB_HOST=127.0.0.1 \-e LOCAL_DB_PASSWORD=aa123456 \-e MYSQL_ROOT_PASSWORD=aa123456 \-e LLM_MODEL=vicuna-13b-v1.5 \-e LANGUAGE=zh \-v /data/models:/app/models \--name db-gpt-allinone \db-gpt-allinone

打开浏览器访问http://localhost:5000

-e LLM_MODEL=vicuna-13b-v1.5, means we use vicuna-13b-v1.5 as llm model, see /pilot/configs/model_config.LLM_MODEL_CONFIG-v /data/models:/app/models, 指定挂载的模型文件 directory /data/models to the docker container directory /app/models, 你也可以替换成你自己的模型.

你也可以通过命令查看日志

docker logs db-gpt-allinone -f

Run with openai interface

PROXY_API_KEY="You api key"PROXY_SERVER_URL="https://api.openai.com/v1/chat/completions"docker run --gpus all -d -p 3306:3306 \-p 5000:5000 \-e LOCAL_DB_HOST=127.0.0.1 \-e LOCAL_DB_PASSWORD=aa123456 \-e MYSQL_ROOT_PASSWORD=aa123456 \-e LLM_MODEL=proxyllm \-e PROXY_API_KEY=$PROXY_API_KEY \-e PROXY_SERVER_URL=$PROXY_SERVER_URL \-e LANGUAGE=zh \-v /data/models/text2vec-large-chinese:/app/models/text2vec-large-chinese \--name db-gpt-allinone \db-gpt-allinone
-e LLM_MODEL=proxyllm, 通过设置模型为第三方模型服务API, 可以是openai, 也可以是fastchat interface…-v /data/models/text2vec-large-chinese:/app/models/text2vec-large-chinese, 设置知识库embedding模型为text2vec. container.”

打开浏览器访问http://localhost:5000

3、AutoDL部署

创建实例

1、选择右侧镜像AutoDL创建实例
2、选择主机环境,GPU环境,这里CPU类型选择Xeon®Platnum8336C,GPU根据情况,建议4090

3、开机

4、打开jupyterLab
5、选择终端

终端构建过程

1.安装环境依赖

设置加速

source /etc/network_turboconda activate dbgpt_env

2.模型准备(这里已经准备好了chatglm2-6b-int4)

3.启动数据库

service mysql start

如果遇到mysql实例启动问题,需要卸载重装下

#卸载sudo apt-get autoremove --purge mysql-serversudo apt-get remove mysql-serversudo apt-get autoremove mysql-serversudo apt-get remove mysql-commonsudo apt updatesudo apt install mysql-serverservice mysql start

4.启动DBGPT服务

python /root/DB-GPT/pilot/server/dbgpt_server.py --port 6006


访问服务

使用其他模型
chatgpt
1.申请openai API_KEY

2.修改/root/DB-GPT/.env配置文件

chatglm-6b2
1.下载chatglm-6b2模型(确保你的数据盘足够,chatglm-6b 24G)

cd /root/autodl-tmp/modelsgit lfs clone https://huggingface.co/THUDM/chatglm2-6b

2.修改/root/DB-GPT/.env配置文件


vicunna-13b
1.下载vicuna-13b模型(确保你的数据盘足够,vicunna-13b有50G)

cd /root/autodl-tmp/modelsgit lfs clone https://huggingface.co/Tribbiani/vicuna-13b

2.修改/root/DB-GPT/.env配置文件