海光k100_ai使用vllm方式部署deepseek32b_海光k100ai
1 基础配置
服务器:DCU兼容服务器,以X7850H0为例
CPU:不限,此处以c86-4G系列为例
DCU:DCU K100-AI 64G
OS:见DCU OS兼容手册
查看显卡型号
rocminfo |grep Marketing
hy-smi
2 环境搭建
2.1 基础环境搭建
环境依赖 :
驱动版本:rock-5.7.1-6.2.26以上
docker版本:>18.01
基础环境部署 :
驱动安装:
1、安装依赖:
centos:yum install -y rpm-build gcc-c++ cmake automake elfutils-libelf-devel libdrm libdrm-devel pciutils
ubuntu:apt install -y gcc g++ cmake automake libelf-dev libdrm_amdgpu1或libdrm-amdgpu1 libtinfo5 pciutils libdrm-dev
Centos:yum install -y kernel-devel-`uname -r` kernel-modules-extra
ubuntu:apt install -y linux-headers-`uname -r` linux-modules-extra/
2、安装驱动 安装流程
1) 下载驱动,下载地址:https://cancon.hpccube.com:65024/6/main/latest%E9%A9%B1%E5%8A%A8
2)修改驱动权限 chmod +x rock*.run
3)安装驱动 ./rock*.run
4)重启下驱动服务 systemctl restart hymgr
5)如有升级vbios 需要重启服务器
docker安装:
配置docker yum源 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sed -i \'s/download.docker.com/mirrors.aliyun.com\\/docker-ce/g\' /etc/yum.repos.d/docker-ce.repo 安装docker安装包 yum install docker-ce docker-ce-cli containerd.io 启动docker服务,设置开机自启动 systemctl enable docker systemctl restart docker 普通用户需要添加到docker用户组中 usermod -aG docker username
2.2 VLLM环境部署
此处建议直接使用VLLM镜像
获取方式
vllm0.6.2版本:docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.3.0-ubuntu22.04-dtk24.04.3-py3.10 vllm0.6.6版本:http://112.11.119.99:18000/others/pytorch2.4.1-ubuntu22.04-dtk25.04-rc4-vllm0.6.6-py3.10.tar.gz
3 DeepSeek部署
3.1 DeepSeek R1 Distill版本部署
DeepSeek R1 Distill版本是通过使用DeepSeek-R1 生成的800,000 个推理数据样本对较小的基础模型(例如 Qwen 和 Llama 系列)进行微调而创建的,由于基模是Qwen和Llama,所以用DCU K100-AI之前的镜像就可以。因此DeepSeek R1 Distill模型可以使用之前的vllm-0.6.2的镜像,也可以使用vllm-0.6.6 版本镜像。
3.1.1 环境准备
首先,下载容器镜像
docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.3.0-ubuntu22.04-dtk24.04.3-py3.10
第二步,运行容器
docker run -dit --network=host --name=deepseek32b --privileged --device=/dev/kfd --device=/dev/dri --ipc=host --shm-size=256G --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -u root --ulimit stack=-1:-1 --ulimit memlock=-1:-1 -v /opt/hyhal:/opt/hyhal:ro -v `pwd`:/work image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.3.0-ubuntu22.04-dtk24.04.3-py3.10
`pwd` 表示当前目录,是你模型下载的目录,要把模型传到docker中/work15b目录,所以要先下载模型
通过docker cp 可以复制数据到容器内
3.1.2 模型下载
模型可以在Huggingface 魔搭社区 下载
pip install huggingface-hub
export HF_ENDPOINT=\"HF-Mirror\"
huggingface-cli download deepseek-ai/DeepSeek-R1-Distill-Llama-8B --local-dir DeepSeek-R1-Distill-Llama-8B
3.1.3 DeepSeek推理部署
进入容器
docker exec -it deepseek32b bash
进入工作目录
cd /work
启动vllm server
source /opt/dtk-24.04.3/env.sh
HIP_VISIBLE_DEVICES=3,4 vllm serve /work15b/DeepSeek-R1-Distill-Qwen-1.5B --tensor-parallel-size 2 --trust-remote-code --max-model-len 32768 --enforce-eager --host 10.8.160.55 --port 8001
3.1.3 测试推理
curl http://10.8.160.55:8000/v1/completions \\
-H \"Content-Type: application/json\" \\
-d \'{
\"model\": \"/workspace/DeepSeek-R1-Distill-Qwen-32B\",
\"prompt\": \"甲乙两班共有学生98人,甲班比乙班多6人,求两班各有多少人?\",
\"max_tokens\": 300,
\"temperature\": 0
}\'