1、系统配置
版本:Ubuntu 20.04
有两块3090的显卡
2、下载相关文件
首先下载源码,下载完成后解压得到QAnything-master
文件夹
github下载地址:https://github.com/netease-youdao/qanything
gitee下载地址:https://gitee.com/netease-youdao/QAnything?_from=gitee_search
下载embedding模型:https://modelscope.cn/models/netease-youdao/QAnything/file/view/master/models.zip
解压得到models文件夹,将这个文件夹放到QAnything-master目录下
下载通义千问大模型:https://www.modelscope.cn/models/netease-youdao/Qwen-7B-QAnything/files
下载后解压得到Qwen-7B-QAnything
文件夹
将Qwen-7B-QAnything
放到QAnything-master
文件夹的assets/custom_models
路径下
上面的文件都比较大,需要下很长时间
进入QAnything-master
文件夹根目录中
3、docker镜像下载
查看需要用到的docker镜像:
grep image: docker-compose-linux.yaml
将这些镜像拉取下来:
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.11.4
docker pull quay.io/coreos/etcd:v3.5.5
docker pull minio/minio:RELEASE.2023-03-20T20-16-18Z
docker pull milvusdb/milvus:v2.3.4
docker pull mysql
docker pull freeren/qanything:v1.2.2
4、修改mysql容器启动的端口
由于我之前在这台服务器上运行了一个mysql容器,所以3306端口就不能用了,我这里将新的mysql容器启动端口改为3307
修改docker-compose-linux.yaml
文件:
sudo vim docker-compose-linux.yaml
5、单、双显卡启动
单显卡:
sudo bash ./run.sh -c local -i 0 -b hf -m Qwen-7B-QAnything -t qwen-7b-qanything
双显卡:
sudo bash ./run.sh -c local -i 0,1 -b hf -m Qwen-7B-QAnything -t qwen-7b-qanything
大模型B数选择7B,有的后面可能会提示不支持,此时就改成小点的
ip选择local就好
启动过程中的问题见下面
后续如果需要停止服务:
先Ctrl + C退出
docker-compose -p user -f docker-compose-linux.yaml stop
再次启动服务:
docker-compose -p user -f docker-compose-linux.yaml start
6、启动过程中可能出现的问题
问题一:The Compose file './docker-compose-linux.yaml' is invalid because
这个就是docker-compose版本的问题
离线安装一个存在的高版本:https://github.com/docker/compose/releases/
sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
我下载的是2.24.1版本
添加可执行权限
chmod +x /usr/local/bin/docker-compose
验证:
docker-compose -v
问题二:Error response from daemon: could not select device driver “nvidia” with capabilities: [[gpu]]
需要保证docker可以调用宿主机的gpu
sudo apt install nvidia-container-toolkit
sudo apt install nvidia-container-runtime
重启docker
sudo systemctl restart docker
问题三:启动后端服务超时,请检查日志文件
根据它的提示查看了logs/debug_logs/sanic_api.log
文件:
说一下,这个问题是我”自作聪明“,把源码中的3306都改成了3307哈哈,实际上就是按照我上面说的改docker-compose-linux.yaml文件就可以了
这就是我部署过程中遇到的问题了,其他的问题大家可以去看QAnything-master
文件夹下的FAQ_zh.md
文件以及Github的issue查看并解决
7、运行结果
参考
安装新版的QAnything(支持双显卡运行)搭建智能客服系统
Qanything 部署的三个拦路虎问题及相应解决方案。
Linux安装docker-compose的2种方式
解决关于Docker运行容器使用GPU资源时的异常:could not select device driver ““ with capabilities: [[gpu]]
Docker – 解决could not select device driver…gpu问题(安装nvidia-container-runtime)