昇腾环境下使用docker部署mindie-service
yuanlulu 2024-09-12 10:37:01 阅读 51
MindIE是基于昇腾硬件的运行加速、调试调优、快速迁移部署的高性能深度学习推理框架。它包含了MindIE-Service、MindIE-Torch和MindIE-RT等组件。我主要用MindIE-Service的功能,这个组件对标的是vllm这样的大语言推理框架。
启动docker容器
先拉取镜像(要去官网获取最新镜像版本)
<code>docker pull swr.cn-central-221.ovaijisuan.com/dxy/mindie:1.0.RC1-800I-A2-aarch64
然后启动容器,我这里将前2张NPU加速卡映射到docker内:
docker run --name my_mindie -it -d --net=host --shm-size=500g \
--device=/dev/davinci0 \
--device=/dev/davinci1 \
-w /home \
--device=/dev/davinci_manager \
--device=/dev/hisi_hdc \
--device=/dev/devmm_svm \
--entrypoint=bash \
-v /usr/local/Ascend/driver:/usr/local/Ascend/driver \
-v /usr/local/dcmi:/usr/local/dcmi \
-v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi \
-v /usr/local/sbin:/usr/local/sbin \
-v /root/xxx/mindformer_share/:/home/xxx_share \
-v /tmp:/tmp \
-v /etc/hccn.conf:/etc/hccn.conf \
-v /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime \
-e http_proxy=$http_proxy \
-e https_proxy=$https_proxy \
swr.cn-central-221.ovaijisuan.com/dxy/mindie:1.0.RC1-800I-A2-aarch64
上面-v /root/xxx/mindformer_share/:/home/xxx_share是在映射我的磁盘进容器,需要根据自己的环境做修改。
进入容器:
docker exec -it my_mindie bash
进入之后执行环境设置:
source /usr/local/Ascend/ascend-toolkit/set_env.sh
source /usr/local/Ascend/mindie/set_env.sh
修改服务配置
上述操作做完,就可以修改mindie-service的配置文件了,这个文件位于/usr/local/Ascend/mindie/latest/mindie-service/conf/config.json。
"ipAddress" : "0.0.0.0",
"port" : 1025,
"ModelDeployParam":
{
"maxSeqLen" : 4096,
"npuDeviceIds" : [[0,1]],
"ModelParam" : [
{
"modelName" : "baichuan2",
"modelWeightPath" : "/home/xxxx/baichuan-inc/Baichuan2-13B-Chat/",
"worldSize" : 2,
"cpuMemSize" : 5,
"npuMemSize" : 10,
"backendType": "atb"
}
]
},
我这里罗列下我关注的字段。
ipAddress和port是监听网络和地址modelName是tritton-url请求里要用的字段,需要记下来npuDeviceIds指定用哪几张卡worldSize是使用npu的数量,必须与npuDeviceIds中的卡数一致modelWeightPath模型路径maxSeqLen最大长度
启动服务
cd /usr/local/Ascend/mindie/latest/mindie-service/
bin/mindieservice_daemon
如何使用服务
可以用postman或者python接口调用http服务。
POST http://223.106.234.6:2250/generate
{
"prompt": "你是谁?\n",
"max_tokens": 1024,
"repetition_penalty": 1.03,
"presence_penalty": 1.2,
"frequency_penalty": 1.2,
"temperature": 0.5,
"top_k": 10,
"top_p": 0.95,
"stream": false
}
mindie支持openai\triton\vllm等接口。具体可参考文档 这里
参考资料
MindIE是什么
昇腾docker镜像仓库
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。