1 安装docker (支持英伟达驱动的镜像)
apt-get update
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
apt-get update
apt-get install -y nvidia-docker2
systemctl restart docker
2 导入镜像(不同的应用对CUDA的需求不同)
docker pull nvcr.io/nvidia/cuda:12.1.1-cudnn8-runtime-ubuntu22.04
# 创建新的docker (安装需要的插件)Dockerfile 文件如下
FROM nvcr.io/nvidia/cuda:12.1.1-cudnn8-runtime-ubuntu22.04
ENV DEBIAN_FRONTEND=noninteractive
ENV TZ=Europe/London
RUN apt update && apt install python3-venv -y && apt install python3-pip -y && apt install git -y && apt-get install ffmpeg libsm6 libxext6 -y && apt-get install libgl1 -y && cp /usr/bin/python3 /usr/bin/python && python3 -m venv venv && apt-get install -y vim && git clone https://github.com/chatchat-space/Langchain-Chatchat.git && cd Langchain-Chatchat && pip install -r requirements.txt && pip install -r requirements_api.txt && pip install -r requirements_webui.txt
CMD sleep 1111111111
# 注意 第一次运行的时候需要下载文件 数据都保持在/root/.cache下 建议在创建文件 把cache保持在目录下 重新构建新的镜像
python startup.py -a
# 自动下载需要的文件到/root/.cache
运行镜像的命令
docker run --gpus=all -itd --name=langchan -v /app/langchan/:/app -p 7860:7860 -p 20000:20000 -p 7861:7861 -p 8501:8501 langchan:latest
注意 需要下载本地使用的模型文件到相关目录 本次设置为/app
下载模型需要先安装 Git LFS,然后运行
$ git lfs install $ git clone https://huggingface.co/THUDM/chatglm3-6b $ git clone https://huggingface.co/BAAI/bge-large-zh
使用本地模型需修改 model_config.py 修改如下(注意/app目录下应该有下载的模型)
"bge-large-zh": "BAAI/bge-large-zh", "bge-large-zh": "/app/bge-large-zh",
"chatglm3-6b": "THUDM/chatglm3-6b", "chatglm3-6b": "/app/chatglm3-6b",
docker exec -it langchan bash
启动的命令如下
nohup python startup.py -a >log &
服务端运行信息:
OpenAI API Server: http://127.0.0.1:20000/v1
Chatchat API Server: http://127.0.0.1:7861
Chatchat WEBUI Server: http://0.0.0.0:8501