在当今数字化浪潮中,人工智能与高性能计算的融合正驱动着各行业的创新变革。随着数据量的爆炸式增长以及复杂算法的不断涌现,对计算资源的高效利用和模型部署的灵活性、高性能提出了严苛要求。昇腾 910B物理机,作为前沿计算领域的佼佼者,凭借其卓越的算力与强大的并行处理能力,为各类复杂任务提供了坚实的硬件支撑。而嵌入式模型的部署,能够将先进的人工智能技术深度融入各类设备与系统,实现智能化的精准赋能。
本指南将详细阐述如何依托昇腾 910B物理机及其镜像,顺利完成嵌入式模型部署工作。从前期依托 Galaxy 镜像构建 Slurm 集群并部署 DS 服务的环境搭建,到精准下载 BGE-M3 等关键模型并巧妙配置启动脚本,再到运用 TEI-ATB 容器镜像灵活管理服务,每一个环节都紧密相扣。旨在帮助技术人员、科研工作者以及相关领域从业者,全面掌握基于昇腾 910B 的嵌入式模型部署技巧,充分释放硬件潜能,推动人工智能应用在各场景中的高效落地,助力行业迈向智能化发展的新高度。
一、环境准备
1.1 前置条件
管理节点:CTyunOS-23.01.2@GalaxyMaster-NPU24.1.rc2.1镜像
计算节点:CTyunOS-23.01.2@GalaxyCompute-NPU24.1.rc2.1镜像
已通过 Galaxy 镜像完成 Slurm 集群的部署,并且 DS 服务也已部署完毕。
注意DeepSeek 服务内存总量请勿超过 90%。可在node.sh文件中设置export NPU_MEMORY_FRACTION=0.9来进行配置。
1.2 下载模型
将 BGE-M3 模型和 BGE-Rerank-V2-M3 模型下载至/mnt/nvme1n1/model文件夹下。以下是模型文件夹的文件列表示例:
$ ll /mnt/nvme1n1/model/bge-m3/
total 2241804
drwxr-xr-x 2 root root 4096 Mar 2 14:35 1_Pooling
-rw-r--r-- 1 root root 2100674 Mar 2 14:35 colbert_linear.pt
-rw-r--r-- 1 root root 687 Mar 2 14:35 config.json
-rw-r--r-- 1 root root 123 Mar 2 14:35 config_sentence_transformers.json
drwxr-xr-x 2 root root 4096 Mar 2 14:35 imgs
-rw-r--r-- 1 root root 126894 Mar 2 14:35 long.jpg
-rw-r--r-- 1 root root 349 Mar 2 14:35 modules.json
drwxr-xr-x 2 root root 4096 Mar 2 14:35 onnx
-rw-r--r-- 1 root root 2271145830 Mar 2 14:35 pytorch_model.bin
-rw-r--r-- 1 root root 15822 Mar 2 14:35 README.md
-rw-r--r-- 1 root root 54 Mar 2 14:35 sentence_bert_config.json
-rw-r--r-- 1 root root 5069051 Mar 2 14:35 sentencepiece.bpe.model
-rw-r--r-- 1 root root 3516 Mar 2 14:35 sparse_linear.pt
-rw-r--r-- 1 root root 964 Mar 2 14:35 special_tokens_map.json
-rw-r--r-- 1 root root 444 Mar 2 14:35 tokenizer_config.json
-rw-r--r-- 1 root root 17098108 Mar 2 14:35 tokenizer.json
$ ll /mnt/nvme1n1/model/bge-reranker-v2-m3/
total 2239536
drwxr-xr-x 2 root root 4096 Mar 26 13:03 assets
-rw-r--r-- 1 root root 795 Mar 26 13:02 config.json
-rw-r--r-- 1 root root 2271071852 Mar 26 13:03 model.safetensors
-rw-r--r-- 1 root root 17229 Mar 26 13:03 README.md
-rw-r--r-- 1 root root 5069051 Mar 26 13:03 sentencepiece.bpe.model
-rw-r--r-- 1 root root 964 Mar 26 13:03 special_tokens_map.json
-rw-r--r-- 1 root root 1173 Mar 26 13:03 tokenizer_config.json
-rw-r--r-- 1 root root 17098273 Mar 26 13:03 tokenizer.json
注意可通过 Hugging Face、ModelScope 进行下载,或者联系公有云事业部安排对等连接传输。
1.3 启动脚本
下载脚本并解压:
cd /home
wget https://jiangsu-10.zos.ctyun.cn/galaxy/deployment/embedding-hw-v20250326.tar
tar xvf embedding-hw-v20250326.tar
cd /home/embedding
解压后的文件列表如下:
$ ll
total 8
drwxr-x--- 4 root root 121 Mar 26 14:47 kernel_meta
drwxr-xr-x 2 root root 172 Mar 26 14:46 log
-rw-r--r-- 1 root root 985 Mar 26 14:45 run_bgem3.sh
-rw-r--r-- 1 root root 979 Mar 26 14:46 run_rerank.sh
lrwxrwxrwx 1 root root 51 Mar 26 14:45 tei-atb-910B-cthpc-fix-1.sif -> /mnt/nvme1n1/apptainer/tei-atb-910B-cthpc-fix-1.sif
1.4 TEI-ATB容器镜像
下载容器:
mkdir -p /mnt/nvme1n1/apptainer/
cd /mnt/nvme1n1/apptainer/
wget ``https://jiangsu-10.zos.ctyun.cn/galaxy/tei/tei-atb-910B-cthpc-fix-1.sif
--2025-03-26 13:49:08-- https://jiangsu-10.zos.ctyun.cn/galaxy/tei/tei-atb-910B-cthpc-fix-1.sif
Resolving jiangsu-10.zos.ctyun.cn (jiangsu-10.zos.ctyun.cn)... 117.88.33.247, 218.91.113.207, 117.88.33.209
Connecting to jiangsu-10.zos.ctyun.cn (jiangsu-10.zos.ctyun.cn)|117.88.33.247|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 4960907264 (4.6G) [binary/octet-stream]
Saving to: ‘tei-atb-910B-cthpc-fix-1.sif’
tei-atb-910B-cthpc-fix-1.sif 100%[========================================================================================>] 4.62G 14.1MB/s in 6m 30s
2025-03-26 13:55:39 (12.1 MB/s) - ‘tei-atb-910B-cthpc-fix-1.sif’ saved [4960907264/4960907264]
若下载容器的路径地址不同,需重新创建软链接:
cd /home/embedding
rm tei-atb-910B-cthpc-fix-1.sif
ln -s /mnt/nvme1n1/apptainer/tei-atb-910B-cthpc-fix-1.sif .
1.5 配置脚本
使用run_bgem3.sh部署 BGE-M3 模型,使用run_rerank.sh部署 BGE-Rerank-V2-M3 模型。
修改run_bgem3.sh与run_rerank.sh中的参数,以run_bgem3.sh为例:
export TEI_NPU_DEVICE=0 #选择NPU卡号(默认为0号NPU上启动服务)
export APP_IMAGE=tei-atb-910B-cthpc-fix-1.sif
export MODEL_DIR=/mnt/nvme1n1/model/bge-m3
export LOCAL_PORT=40003
注意APP_IMAGE为/home/embedding下的软链接名,MODEL_DIR为模型实际路径,LOCAL_PORT为服务端口。
二、服务管理
2.1 嵌入式模型服务启动
sh run_bgem3.sh
INFO: instance started successfully
sh run_rerank.sh
INFO: instance started successfully
注意服务地址为http://[本地IP]:40003/v1 和http://[本地IP]:40004/v1。
2.2 查询服务状态
apptainer instance list
INSTANCE NAME PID IP IMAGE
app-tei-bgem3 441013 /home/embedding/tei-atb-910B-cthpc-fix-1.sif
app-tei-rerank 441406 /home/embedding/tei-atb-910B-cthpc-fix-1.sif
2.3 嵌入式模型服务停止
apptainer instance stop app-tei-bgem3
apptainer instance stop app-tei-rerank