设置:8张英伟达H800显卡,硬盘14T,内存 2T;
本次部署显卡驱动和Miniconda都已安装,以是直接从步骤4的创建假造情况开始;nvidia-smi下令检察显卡;
1. 系统更新和依赖安装
- # 更新系统包
- sudo apt update && sudo apt upgrade -y
-
- # 安装基础依赖
- sudo apt install -y build-essential python3-pip curl git wget
复制代码 2. 安装NVIDIA驱动和CUDA Toolkit
- # 添加NVIDIA驱动仓库(Ubuntu 22.04默认仓库可能版本较低)
- sudo add-apt-repository ppa:graphics-drivers/ppa -y
- sudo apt update
-
- # 安装推荐驱动(H800需要535+版本)
- sudo apt install -y nvidia-driver-550
- sudo reboot # 重启生效
-
- # 验证驱动安装
- nvidia-smi # 应显示8张H800信息
-
- # 安装CUDA 12.2(需与vLLM兼容)
- wget https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installers/cuda_12.2.2_535.104.05_linux.run
- sudo sh cuda_12.2.2_535.104.05_linux.run
- # 安装时取消勾选驱动(已安装),其他默认
-
- # 添加环境变量
- echo 'export PATH=/usr/local/cuda-12.2/bin:$PATH' >> ~/.bashrc
- echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.2/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
- source ~/.bashrc
复制代码 3. 安装cuDNN
- # 从NVIDIA官网下载cuDNN 8.9.7 for CUDA 12.x(需注册账号)
- # 假设下载到 ~/Downloads/cudnn-linux-x86_64-8.9.7.29_cuda12-archive.tar.xz
- tar -xvf ~/Downloads/cudnn-linux-x86_64-8.9.7.29_cuda12-archive.tar.xz
- sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda/include/
- sudo cp -P cudnn-*-archive/lib/libcudnn* /usr/local/cuda/lib64/
- sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
复制代码 4. 设置Python情况
- # 安装Miniconda(如未安装)
-
- wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
- bash Miniconda3-latest-Linux-x86_64.sh -b -p $HOME/miniconda
- echo 'export PATH="$HOME/miniconda/bin:$PATH"' >> ~/.bashrc
- source ~/.bashrc
-
- # 创建虚拟环境
-
- conda create -n vllm python=3.9 -y
- #启用虚拟环境
- conda activate vllm
- #启用虚拟环境后,命令行前缀就都会有虚拟环境名称显示(如下)
- #(vllm) root@hgx-h800-204:
- #退出虚拟环境进入基础环境
- #conda deactivate
-
- # 安装PyTorch
-
- pip install torch==2.1.2 --index-url https://download.pytorch.org/whl/cu121
- #如果pip下载失败,可以使用如下命令
- conda install pytorch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 pytorch-cuda=12.1 -c pytorch -c nvidia
-
- # 安装vLLM
-
- pip install vllm>=0.4.1 # 确保版本支持H800
复制代码
验证安装
安装完成后,运行以下下令验证PyTorch是否正确安装:
- python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"
复制代码 假如输出类似以下内容,说明安装乐成:
5. 下载DeepSeek模子
- # 安装 ModelScope 包: ModelScope 是一个模型中心,我们使用它来下载模型。在终端或命令提示符中执行以下命令安装 ModelScope Python 包
- pip install modelscope
- #创建模型存放文件夹
- mkdir -p /data/deepseek-ai/models/deepseek-70b
-
- # 例如DeepSeek-R1-Distill-Llama-70B模型
- modelscope download --local_dir /data/deepseek-ai/models/deepseek-70b --model deepseek-ai/DeepSeek-R1-Distill-Llama-70B
-
-
- # 例如deepseek-r1-awq量化模型(该命令为r1向量模型下载命令,该模型启动未验证)
- modelscope download --local_dir /data/deepseek-ai/models/deepseek-r1-awq --model cognitivecomputations/DeepSeek-R1-awq
复制代码 6. 启动vLLM API服务
- # 使用8卡张量并行
- python -m vllm.entrypoints.openai.api_server \
- --model ./deepseek-70b \
- --tensor-parallel-size 8 \
- --trust-remote-code \ # 如果模型需要自定义代码
- --gpu-memory-utilization 0.85 \ # 显存利用率
- --served-model-name deepseek-70b # API中的模型名称
复制代码 7. 测试API接口
- # 发送测试请求
- curl http://localhost:8000/v1/completions \
- -H "Content-Type: application/json" \
- -d '{
- "model": "deepseek-70b",
- "prompt": "北京的著名景点有",
- "max_tokens": 100,
- "temperature": 0.3
- }'
-
- # 或使用Python客户端
- pip install openai
复制代码
- from openai import OpenAI
- client = OpenAI(base_url="http://localhost:8000/v1")
-
- response = client.completions.create(
- model="deepseek-70b",
- prompt="中国的首都是",
- max_tokens=100
- )
- print(response.choices[0].text)
复制代码 留意事项
- 模子兼容性:确保DeepSeek模子的格式与vLLM兼容(HF格式)。
- 显存分配:67B模子必要约130GB显存,8卡H800(每卡80GB)足够。
- 安全加固:如需对外开放API,发起设置反向代理和认证。
- 性能调优:可通过--max-num-seqs和--max-model-len调整吞吐量。
如遇到CUDA版本不匹配等标题,可尝试通过conda install cuda -c nvidia补充依赖。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |