系列文章目錄
玩轉大語言模型——使用langchain和Ollama本地部署大語言模型
玩轉大語言模型——三分鐘教你用langchain+提示詞工程獲得貓娘女友
玩轉大語言模型——ollama導入huggingface下載的模型
玩轉大語言模型——langchain調用ollama視覺多模態語言模型
玩轉大語言模型——使用transformers中的pipeline調用huggingface中模型
玩轉大語言模型——transformers微調huggingface格式的中文Bert模型
玩轉大語言模型——使用GraphRAG+Ollama構建知識圖譜
玩轉大語言模型——完美解決GraphRAG構建的知識圖譜全為英文的問題
玩轉大語言模型——配置圖數據庫Neo4j(含apoc插件)并導入GraphRAG生成的知識圖譜
玩轉大語言模型——本地部署帶聊天界面deepseek R1的小白教程
玩轉大語言模型——本地部署deepseek R1和本地數據庫的小白教程(Ollama+AnythingLLM)
玩轉大語言模型——使用LM Studio在本地部署deepseek R1的零基礎)教程
玩轉大語言模型——Ubuntu系統環境下使用llama.cpp進行CPU與GPU混合推理deepseek
玩轉大語言模型——使用Kiln AI可視化環境進行大語言模型微調數據合成
玩轉大語言模型——昇騰NPU驅動固件以及CANN的安裝
玩轉大語言模型——在歐拉操作系統(國產Linux)使用華為官方MindIE-Server鏡像方式部署DeepSeek模型
文章目錄
- 系列文章目錄
- 前言
- 前期準備
- 硬盤掛載、網絡配置以及Docker的安裝
- 安裝驅動和固件
- 下載模型權值文件
- 配置DeepSeek推理環境
- 拉取MindIE-Server鏡像
- 啟動容器
- 進入容器
- 配置模型參數文件
- 修改mindie-servier配置
- 啟動 mindie-server 服務
前言
本文將詳細介紹在國產Linux系統歐拉中使用華為官方MindIE-Server鏡像方式部署DeepSeek模型。一般情況下華為昇騰800I服務器可以推理DeepSeek-R1-70B,4張300I-Duo服務器可以推理DeepSeek-R1-32B。在配置中盡量貼合官方文檔,包含用到的一些其他的技術細節,便于零基礎入門使用
前期準備
硬盤掛載、網絡配置以及Docker的安裝
在歐拉操作系統(國產Linux)中相關的配置可以參照文章Linux系統管理(十九)——歐拉系統硬盤掛載、網絡配置以及Docker環境安裝
安裝驅動和固件
安裝過程在上一篇中已經介紹過了,這里不再贅述,可以參照下面這篇博客。由于在mindie-server中已經內置了CANN,所以在安裝mindie-server時,CANN的安裝并非必選項。
玩轉大語言模型——昇騰NPU驅動固件以及CANN的安裝(教你如何使用官方社區安裝)
下載模型權值文件
本文以DeepSeek-R1-32B
為例,讀者可以根據自己的情況選擇模型權值文件下載,在本文中將下載后的模型保存到路徑/data/llm/deepseek/
下
modelscope下載地址:https://www.modelscope.cn/models/deepseek-ai/DeepSeek-R1-Distill-Qwen-32B
hf-mirror下載地址:https://hf-mirror.com/deepseek-ai/DeepSeek-R1-Distill-Qwen-32B
配置DeepSeek推理環境
拉取MindIE-Server鏡像
官方mindie地址:https://www.hiascend.com/developer/ascendhub/detail/mindie
點擊鏡像版本
后可以看到能夠下載的版本,但是需要申請權限
才能夠下載
注冊登錄華為賬號后,填寫姓名、公司、郵箱、申請原因后即可下載
800I下載第一個鏡像,300I-DUO下載第三個鏡像,點擊立即下載
后按照官方提示拉取鏡像即可
如果有大量配置需求的話,在拉取鏡像后可以先保存拉取過的鏡像,等需要的時候直接導入
啟動容器
先給出一個參考命令,隨后再給出解釋
docker run -it --ipc=host \--device=/dev/davinci0 \--device=/dev/davinci1 \--device=/dev/davinci2 \--device=/dev/davinci3 \--device=/dev/davinci4 \--device=/dev/davinci5 \--device=/dev/davinci6 \--device=/dev/davinci7 \--device=/dev/davinci_manager \--device=/dev/devmm_svm \--device=/dev/hisi_hdc \--name=ds_service \-v /usr/local/Ascend/driver:/usr/local/Ascend/driver \-v /usr/local/Ascend/add-ons/:/usr/local/Ascend/add-ons/ \-v /usr/local/sbin/npu-smi:/usr/local/sbin/npu-smi \-v /usr/local/sbin/:/usr/local/sbin/ \-v /var/log/npu/:/usr/slog \-v /data/llm/deepseek/:/home/HwHiAiUser \-d -p 1025:1025 mindie:1.0.0-T71.B020-300I-Duo-arm64-py3.11 /bin/bash
這里有幾點需要根據實際情況修改
參數 | 解釋 |
---|---|
–device=/dev/davinci0 | 像這類參數用于表示核心數,這里從davinci0寫到了davinci7,使用的是8個核心 |
-v /data/llm/deepseek/:/home/HwHiAiUser | 這個路徑是映射模型的路徑,將物理機上存儲模型的路徑/data/llm/deepseek/ 映射到容器的/home/HwHiAiUser 路徑上 |
-d -p 1025:1025 | 將容器端口1025映射到物理機,這是為了外部訪問mindie-server起的DeepSeek服務 |
mindie:1.0.0-T71.B020-300I-Duo-arm64-py3.11 | 鏡像版本,示例中是300I-DUO鏡像,如果是800I的鏡像,需要把名稱換為swr.cn-south-1.myhuaweicloud.com/ascendhub/mindie:2.0.T3-800I-A2-py311-openeuler24.03-lts |
進入容器
docker exec -it ds_service /bin/bash
配置模型參數文件
模型文件路徑為:/home/HwHiAiUser
中
使用命令修改模型目錄的所有者和權限模式, 這里以DeepSeek-R1-Distill-Qwen-32B
為例,這個模型的模型路徑為/home/HwHiAiUser/DeepSeek-R1-Distill-Qwen-32B
cd /home/HwHiAiUser
chown -R root:root DeepSeek-R1-Distill-Qwen-32B
chmod -R 750 DeepSeek-R1-Distill-Qwen-32B
進入DeepSeek-R1-Distill-Qwen-32B, 修改其中的config.json文件, 將其中torch_dtype項改為float16
cd DeepSeek-R1-Distill-Qwen-32B
vi config.json
修改mindie-servier配置
進入到mindie-server目錄
cd /usr/local/Ascend/mindie/latest/mindie-service
source set_env.sh
修改 config.json 文件
vi conf/config.json
修改以下參數項
參數 | 修改值 |
---|---|
httpsEnable | false |
ipAddress | 0.0.0.0 |
AllowAllZeroIpListening | true |
maxIterTimes | 4096: |
numDeviceIds | 設為你想使用的卡的id |
worldSize | 設為卡數 |
modelName | 模型名稱,注意要和請求時用到的model名相同 |
modelWeightPath | 模型參數目錄路徑 |
其他值的修改參照官方
MindIE-Server參數設置:https://www.hiascend.com/document/detail/zh/mindie/100/mindieservice/servicedev/mindie_service0285.html
啟動 mindie-server 服務
cd /usr/local/Ascend/mindie/latest/mindie-service
啟動服務并將日志輸入到 output.log文件中
nohup ./bin/mindieservice_daemon > output.log 2>&1 &
通過如下命令查看日志
tail -f output.log
啟動, 如果有以下內容則啟動成功
Daemon start success!
啟動成功后訪問地址http://服務器IP:1025/v1
即可使用類OpenAI
的方式訪問大模型的Server