前安装这玩意可累死我了,官方文档语嫣不详的,探索加班好几天可算搞出来了,我的评价安装不如dify方便,不多逼逼下面看安装步调
本次使用ubuntu的GPU服务器进行安装
本次需求为DB-GPT+ollama
底子环境预备
1.ollama
2.mysql
3.conda
4.DB-GPT以上
一.ollama安装
(1)官方地址
https://ollama.com/
(2)官方提供脚本安装,直接使用脚本进行安装
curl -fsSL https://ollama.com/install.sh | sh
(3)安装完毕后必要进行更改
第一处,查看想要使用的显卡编号 ,我这里使用0,1两个显卡
第二处,修改启动文件
Environment="OLLAMA_HOST=0.0.0.0" #服务启动后对外的地址 Environment="CUDA_VISIBLE_DEVICES=0,1" #指定显卡使用的显卡块 Environment="OLLAMA_MODELS=/data/ollama/models" #指定模型存储位置
- [Unit]
- Description=Ollama Service
- After=network-online.target
- [Service]
- ExecStart=/usr/bin/ollama serve
- User=root
- Group=root
- Restart=always
- RestartSec=3
- Environment="PATH=/root/.pyenv/shims:/root/.pyenv/bin:/root/.pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
- Environment="OLLAMA_HOST=0.0.0.0"
- Environment="CUDA_VISIBLE_DEVICES=0,1"
- Environment="OLLAMA_MODELS=/data/ollama/models"
- [Install]
- WantedBy=default.target
复制代码 (4)启动服务
二.mysql安装
(1)修改ubuntu的源
vim /etc/apt/sources.list
- deb http://cn.archive.ubuntu.com/ubuntu jammy main restricted
- deb http://cn.archive.ubuntu.com/ubuntu jammy-updates main restricted
- deb http://cn.archive.ubuntu.com/ubuntu jammy universe
- deb http://cn.archive.ubuntu.com/ubuntu jammy-updates universe
- deb http://cn.archive.ubuntu.com/ubuntu jammy multiverse
- deb http://cn.archive.ubuntu.com/ubuntu jammy-updates multiverse
- deb http://cn.archive.ubuntu.com/ubuntu jammy-backports main restricted universe multiverse
- deb http://security.ubuntu.com/ubuntu/ jammy-security main restricted
- deb http://security.ubuntu.com/ubuntu/ jammy-security universe
- deb http://security.ubuntu.com/ubuntu/ jammy-security multiverse
复制代码 apt update #进行更新
(2)下载mysql
我这里是将mysql的数据存储到/opt/mysql下
- apt install mysql-server -y
- service mysql stop
- mkdir /opt/mysql
- chown -R mysql.mysql /opt/mysql
- chmod 755 /opt/mysql
- cp -arp /var/lib/mysql/* /opt/mysql
- -----------------------------------------------------
- vim /etc/mysql/mysql.conf.d/mysqld.cnf 编辑配置文件
- # 修改指定选项(注意备份)
- datadir=/opt/mysql
- # 修改配置文件
- sudo vim /etc/apparmor.d/usr.sbin.mysqld
- # 修改指定选项(注意备份)
- # Allow data dir access
- /opt/mysql/ r,
- /opt/mysql/** rwk,
-
- # 重启apparmor服务
- sudo service apparmor restart
- -----------------------------------------------------
- systemctl start mysql
- 登录
- mysql -u root -p
- #没有密码再次回车进入
- 注意如果报错显示没有mysql.socket则执行这个命令再进入
- ln -s /run/mysqld/mysqld.sock /tmp/mysql.sock
复制代码 (3)更改密码
- ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Mysql2023';
复制代码 三.conda安装
(1)安装底子环境
- mkdir -p /opt/miniconda3
- wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
- mv Miniconda3-latest-Linux-x86_64.sh miniconda.sh
- chmod +x miniconda.sh
- ./miniconda.sh -b -u -p /opt/miniconda3
- /opt/miniconda3/bin/conda init bash
- source ~/.bashrc
复制代码 (2)配置conda的国内源
- conda config --set show_channel_urls yes
- vim ~/.condarc
- channels:
- - defaults
- show_channel_urls: true
- default_channels:
- - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
- custom_channels:
- conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
- msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
- bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
- menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
- pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
- pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
- simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
- deepmodeling: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/
复制代码 (3)创建DB-GPT的底子环境
- conda create -n dbgpt_env python=3.10
- conda activate dbgpt_env
- pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
复制代码 四.DB-GPT安装
(1)拉取官方DB-GPT的代码
- 因为官网在0.5.6版本后才允许连接ollama所以本次使用v0.6.0版本进行安装
- 地址:https://github.com/eosphoros-ai/DB-GPT/releases
- wget https://github.com/eosphoros-ai/DB-GPT/archive/refs/tags/v0.6.0.tar.gz
复制代码
(2)模型安装
- 本次部署属于本地部署类型,使用ollama所以需要ollama下载模型
- ollama pull nomic-embed-text
- ollama pull qwen2:7b
- 然后本地也得下载一个语音文本模型放到目录中
- https://hf-mirror.com/GanymedeNil/text2vec-large-chinese-onnx #这个是其的git地址
- mkdir /opt/DB-GPT-0.6.0/models
- cd /opt/DB-GPT-0.6.0/models
- git lfs install
- git clone https://hf-mirror.com/GanymedeNil/text2vec-large-chinese-onnx
复制代码
(3)DB-GPT底子环境编译
- 说是编译其实是下载DB-GPT启动的py文件所需要的python依赖包
- tar zxvf v0.6.0.tar.gz
- cd DB-GPT-0.6.0/
- pip install -e ".[default]"
- 等待安装完毕
复制代码
(4)配置文件编写
cp .env.template .env #将配置文件复制并修改为生效配置文件
- ollama部分
- #*******************************************************************#
- #** LLM MODELS **#
- #*******************************************************************#
- LLM_MODEL=ollama_proxyllm
- PROXY_SERVER_URL=http://127.0.0.1:11434
- PROXYLLM_BACKEND="qwen2:7b"
- PROXY_API_KEY=not_used
- EMBEDDING_MODEL=proxy_ollama
- proxy_ollama_proxy_server_url=http://127.0.0.1:11434
- proxy_ollama_proxy_backend="nomic-embed-text:latest"
- MODEL_SERVER=http://172.29.32.15:8000
- LIMIT_MODEL_CONCURRENCY=5
- MAX_POSITION_EMBEDDINGS=4096
- QUANTIZE_QLORA=True
- QUANTIZE_8bit=True
- 数据库部分
- #*******************************************************************#
- #** DB-GPT METADATA DATABASE SETTINGS **#
- #*******************************************************************#
- ### SQLite database (Current default database)
- #LOCAL_DB_TYPE=sqlite
- ### MYSQL database
- LOCAL_DB_TYPE=mysql
- LOCAL_DB_USER=root
- LOCAL_DB_PASSWORD=Mysql2023
- LOCAL_DB_HOST=127.0.0.1
- LOCAL_DB_PORT=3306
- LOCAL_DB_NAME=dbgpt
复制代码
(5)故障整理
在第(3)步调的时间可能会碰到pip install -e ".[default]" 无法安装的标题可以通过启动命令让服务报出缺少那个依靠包后再进行单独安装
- python dbgpt/app/dbgpt_server.py #启动命令
- 如果启动失败会报错并返回缺少的依赖包,这时再使用pip安装依赖包
- pip install 依赖包名
- 反复操作直到正常启动
复制代码
(8)数据库表数据导入
- mysql -u root -p #进入数据库
- create database dbgpt
- 退出数据库
- 导入数据
- mysql -h127.0.0.1 -uroot -pMysql2023 < ./assets/schema/dbgpt.sql
复制代码
(7)都必要安装的包
五.启动脚本配置
(1)目次创建
- mkdir -p /opt/DB-GPT-0.6.0/log
复制代码
(2)启动文本创建
- #!/bin/bash
- # Python 可执行文件路径
- PYTHON_BIN=/opt/miniconda3/envs/dbgpt_env/bin/python
- # Python 应用程序文件路径
- APP_SCRIPT=/opt/DB-GPT-0.6.0/dbgpt/app/dbgpt_server.py
- # 日志文件路径
- LOG_FILE=/opt/DB-GPT-0.6.0/log/dbgpt_server.log
- # 启动命令
- start() {
- echo "Starting your Python application..."
- nohup $PYTHON_BIN $APP_SCRIPT > $LOG_FILE 2>&1 &
- echo "Python application started. Log file: $LOG_FILE"
- }
- # 停止命令
- stop() {
- echo "Stopping your Python application..."
- pid=$(ps aux | grep "$APP_SCRIPT" | grep -v grep | awk '{print $2}')
- if [ -n "$pid" ]; then
- kill -9 $pid
- echo "Python application stopped."
- else
- echo "Python application is not running."
- fi
- }
- # 检查命令
- status() {
- pid=$(ps aux | grep "$APP_SCRIPT" | grep -v grep | awk '{print $2}')
- if [ -n "$pid" ]; then
- echo "Python application is running with PID $pid."
- else
- echo "Python application is not running."
- fi
- }
- # 命令行参数处理
- case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- restart)
- stop
- start
- ;;
- status)
- status
- ;;
- *)
- echo "Usage: \$0 {start|stop|restart|status}"
- exit 1
- ;;
- esac
- exit 0
复制代码
(3)启动服务
./python.sh start
打开后访问IP地址加5670端口
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |