2025-06-04 17:16:14 中华网
摘要:内附手把手开发教程
2025年5月28日深夜,DeepSeek 官方在用户群中宣布完成“小版本试升级”,发布DeepSeek-R1-0528,昇思MindSpore开源社区开发者基于已支持的DeepSeek V3进行快速适配,1小时内完成开发,修改代码小于10行,实现镜像替换、推理任务拉起,经测试验证,模型精度与官方开源版本一致。
基于昇思版本适配的DeepSeek-R1-0528已上架开源社区代码仓及魔乐社区,面向开发者提供开箱即用的模型,便于开发者直接使用或二次开发。
本次快速适配应用了MindSpore Transformers大模型使能套件,该套件依托MindSpore AI框架提供的丰富的多维混合并行能力,亲和开源工具与通用数据格式,原生支持大模型蒸馏的端到端全流程开发,提供了高效、便捷的开发能力
同时,本次推理服务的拉起与部署应用了MindSpore-vLLM插件,支持基于vLLM框架部署MindSpore模型的推理服务。
MindSpore Transformers代码仓:https://gitee.com/mindspore/mindformers
MindSpore-vLLM代码仓:
https://gitee.com/mindspore/vllm-mindspore
魔乐社区代码仓:
https://modelers.cn/models/MindSpore-Lab/DeepSeek-R1-0528
本次发布的DeepSeek V3-0528主要升级以下能力:
1.推理与思维深度增强
思考长度翻倍:平均每题推理token从12K增至23K,解题步骤更详尽(如AIME数学题准确率从70%→87.5%)。
幻觉率降低45~50%:在摘要、改写等任务中输出更可靠。
2.编程能力突破
前端代码生成:可一次性生成超千行无Bug代码,支持复杂动态效果(如天气动画、数据可视化)。
多语言支持:在LiveCodeBench测试中Pass@1从63.5%→73.3%,媲美OpenAI o3高版本。
3.新增功能与体验优化
工具调用(Function Calling):支持外部API调用,Tau-Bench成绩达OpenAI o1-high水平。
创意写作提升:长文本结构更完整,更贴近人类风格。
API兼容性:接口不变,新增JSON输出支持。
手把手教程DeepSeek-R1-0528vLLM-MindSpore 使用指南
●本项目中提供的DeepSeek-R1-0528模型权重已反量化为BF16,权重文件大小1.3T。
环境搭建
环境准备:四台Atlas 800I A2 (64G),并配置好组网,四台设备的卡与卡之间能够互相ping通。
四台设备分别拉取镜像
docker pull hub.oepkgs.net/oedeploy/openeuler/aarch64/mindspore:20250529
四台设备分别杀进程,避免其他进程影响
pkill -9 python
pkill -9 mindie
pkill -9 ray
四台设备分别启动容器,四台设备的hostname需要不同,但容器名称需要一致。
/data/deeepseek_r1_0528/用于存放权重及yaml配置文件。四台服务器都需要下载权重,而且存放路径需要一致,权重文件大小1.3T,需要预留足够磁盘空间。
docker run -it --name=DSR10528 --ipc=host --network=host --privileged=true --hostname=worker23 \
--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 \
-v /usr/local/sbin/:/usr/local/sbin/ \
-v /etc/hccn.conf:/etc/hccn.conf \
-v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi \
-v /usr/local/dcmi:/usr/local/dcmi \
-v /usr/local/Ascend/driver:/usr/local/Ascend/driver \
-v /etc/ascend_install.info:/etc/ascend_install.info \
-v /etc/vnpu.cfg:/etc/vnpu.cfg \
-v /data/deeepseek_r1_0528/:/data/deeepseek_r1_0528/ \
hub.oepkgs.net/oedeploy/openeuler/aarch64/mindspore:20250428 \
/bin/bash
下载权重及yaml配置文件
四台设备分别从魔乐社区下载权重及yaml配置文件。
pip install openmind_hub
export HUB_WHITE_LIST_PATHS=/data/deeepseek_r1_0528
python
from openmind_hub import snapshot_download
snapshot_download(
repo_id="MindSpore-Lab/DeepSeek-R1-0528",
local_dir="/data/deeepseek_r1_0528",
local_dir_use_symlinks=False
)
exit()
四台设备分别修改yaml配置文件
# 修改为模型权重路径
load_checkpoint: '/data/deeepseek_r1_0528/'
# 修改为模型tokenizer.json文件所在路径
vocab_file: '/data/deeepseek_r1_0528/tokenizer.json'
# 修改为模型tokenizer.json文件所在路径
tokenizer_file: '/data/deeepseek_r1_0528/tokenizer.json'
启动
四台设备的容器中分别添加环境变量。enp189s0f0是ifconfig命令显示的网卡名称,根据需要调整。
export
MINDFORMERS_MODEL_CONFIG=/data/deeepseek_r1_0528/peizhi/predict_deepseek_r1__671b.yaml
export ASCEND_CUSTOM_PATH=$ASCEND_HOME_PATH/../
export vLLM_MODEL_BACKEND=MindFormers
export MS_ENABLE_LCCL=off
export HCCL_OP_EXPANSION_MODE=AIV
export HCCL_SOCKET_IFNAME=enp189s0f0
export GLOO_SOCKET_IFNAME=enp189s0f0
export TP_SOCKET_IFNAME=enp189s0f0
export HCCL_CONNECT_TIMEOUT=3600
export ASCEND_RT_VISIBLE_DEVICES=0,1,2,3,4,5,6,7
主机及辅机设置
选择一台设备作为主节点,执行如下命令
ray stop
ray start --head --port=6380
其他三台设备作为辅节点,依次执行如下命令
ray stop
ray start --address=主节点IP:6380
在主节点容器中拉起服务,其他节点不需要。模型路径根据需要调整。
python3 -m vllm_mindspore.entrypoints vllm.entrypoints.openai.api_server
--model "/data/deepseek_r1_0528_bf16" --trust_remote_code
--tensor_parallel_size=32 --max-num-seqs=256 --block-size=32
--max_model_len=16384 --max-num-batched-tokens=4096
--distributed-executor-backend=ray --gpu-memory-utilization=0.93
发起推理服务请求,若在主节点发起请求,新开一个终端,IP地址是0.0.0.0或者localhost
curl http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "/data/deepseek_r1_0528_bf16",
"messages": [
{"role": "user", "content": "请介绍下北京的top景点"}
],
"temperature": 0.1,
"max_tokens": 4096,
"top_p": 0.9,
"repetition_penalty": 1.2
}'