昇腾300I npu部署deepseek32B模型
本次任务将使用昇腾300I显卡的Mindie镜像部署DeepSeek-32B模型
首先,下载Mindie镜像,请根据需求选择对应版本。请注意,下载该镜像需提前申请权限。

第二步,运行Docker容器
docker run -it -d --net=host --shm-size=1g \
--privileged \
--name deepseek32B \ # 容器名
--device=/dev/davinci_manager \
--device=/dev/hisi_hdc \
--device=/dev/devmm_svm \
-v /usr/local/Ascend/driver:/usr/local/Ascend/driver:ro \
-v /usr/local/sbin:/usr/local/sbin:ro \
-v /home/deepseek32b:/mnt/deepseek32b:ro \ # 主机模型路径挂载的容器路径
mindie:1.0.0-300I-Duo-py311-openeuler24.03-lts bash
https://zhuanlan.zhihu.com/p/1908541326699503727
第三步,调整模型目录中的配置文件
cd /home/deepseek32b
修改模型目录下的config.json文件,将torch_dtype的值修改为float16

第四步,进入容器内修改模型配置文件
docker exec -it deepseek32B bash
cd /usr/local/Ascend/mindie/latest/mindie-service
vim conf/config.json
配置文件修改可参考以下注释行的参数:
"ServerConfig" :
{
"ipAddress" : "xx.xx.xx.xx", //替换为自己的主机ip
"managementIpAddress" : "127.0.0.2",
"port" : 1025, //运行端口
"managementPort" : 1026,
"metricsPort" : 1027,
"allowAllZeroIpListening" : false,
"maxLinkNum" : 1000,
"httpsEnabled" : false, //设置为false},
"BackendConfig" : {
"backendName" : "mindieservice_llm_engine",
"modelInstanceNumber" : 1,
"npuDeviceIds" : [[0,1,2,3]], //需要的npu设备ID......
"ModelDeployConfig" :
{
"maxSeqLen" : 32768, //最大序列长度(输入输出长度)
"maxInputTokenLen" : 8192, //最大输入长度
"truncation" : false,
"ModelConfig" : [
{
"modelInstanceType" : "Standard",
"modelName" : "deepseek_32b", //模型名称,请求时填入
"modelWeightPath" : "/mnt/deepseek32b", //容器内模型的绝对路径"worldSize" : 4, //使用的npu设备的数量
...
}
]
},......
"ScheduleConfig" :
{
"templateType" : "Standard",
"templateName" : "Standard_LLM",
"cacheBlockSize" : 128,"maxPrefillBatchSize" : 50,
"maxPrefillTokens" : 32768, // 必须大于或等于maxInputTokenLen
"prefillTimeMsPerReq" : 150,
"prefillPolicyType" : 0,"decodeTimeMsPerReq" : 50,
"decodePolicyType" : 0,"maxBatchSize" : 200,
"maxIterTimes" : 8192, // 模型全局最大输出长度,[1, maxSeqLen-1]
...
}41,1 14%
第五步,启动
cd /usr/local/Ascend/mindie/latest/mindie-service
./bin/mindieservice_daemon
第六步,请求
ss -tuln | grep 1025
curl -X POST http://<ip>:1025/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek_32b",
"messages": [{"role": "user", "content": "What is deep learning?"}],
"max_tokens": 32,
"temperature": 0.01,
"top_p": 0.001,
"top_k": 1,
"do_sample": true,
"repetition_penalty": 1.0,
"stream": false
}'
如何测试请求没问题可以使用后台进程方式启动服务:
cd /usr/local/Ascend/mindie/latest/mindie-service
nohup ./bin/mindieservice_daemon > deepseek_32b.log 2>&1 &
如有疏漏,敬请指正
昇腾计算产业是基于昇腾系列(HUAWEI Ascend)处理器和基础软件构建的全栈 AI计算基础设施、行业应用及服务,https://devpress.csdn.net/organization/setting/general/146749包括昇腾系列处理器、系列硬件、CANN、AI计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链
更多推荐

所有评论(0)